Web-studio46.ru

Обучение и образование
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Программирование на экселе

5 полезных функций Excel для начинающих программистов

Рабо­ту в таб­лич­ном редак­то­ре Excel тоже мож­но авто­ма­ти­зи­ро­вать и запро­грам­ми­ро­вать. Вы смо­же­те здо­ро­во помочь сво­им бух­гал­те­рам с отчё­та­ми, мар­ке­то­ло­гам — с ана­ли­зом рекла­мы, а сами научи­тесь раз­би­рать­ся в алго­рит­мах.

Мы раз­бе­рём 5 полез­ных функ­ций Excel. Если вы дума­е­те, что Excel — это толь­ко про циф­ры и таб­лич­ки, то вот вам видео, где в Excel запро­грам­ми­ро­ва­ли насто­я­щую 3D-игру.

Что­бы было про­ще разо­брать­ся, все фор­му­лы и при­ме­ры мы запи­са­ли в Excel-файл, кото­рый мож­но ска­чать и исполь­зо­вать для экс­пе­ри­мен­тов. Каж­дый при­мер — на отдель­ной вклад­ке сни­зу.

Это одна из самых важ­ных функ­ций в Excel. Как и в насто­я­щем язы­ке про­грам­ми­ро­ва­ния, она про­ве­ря­ет какое-то усло­вие, и если оно выпол­ня­ет­ся — пишет в ячей­ку что-то одно, а если нет — пишет что-то дру­гое.

В общем виде она выгля­дит так:

В усло­вии может быть что угод­но: срав­не­ние яче­ек, дру­гие фор­му­лы, срав­не­ния и мате­ма­ти­че­ские коман­ды — всё, что вам нуж­но про­ве­рить.

На прак­ти­ке мож­но сде­лать, напри­мер, так: пусть Excel про­ве­ря­ет воз­раст, и пишет доку­мент, кото­рый в этом воз­расте удо­сто­ве­ря­ет лич­ность. До 14 лет это сви­де­тель­ство о рож­де­нии, а после — пас­порт. Для это­го исполь­зу­ем такую коман­ду в ячей­ке:

Про­грам­ма про­ве­рит, что сто­ит в преды­ду­щей ячей­ке, и если там чис­ло мень­ше 14, то напи­шет «Сви­де­тель­ство о рож­де­нии», а если уже есть 14 лет, то «Пас­порт»:

СЧЁТЕСЛИ и СЧЁТЕСЛИМН

Часто быва­ет нуж­но посчи­тать коли­че­ство строк или запол­нен­ных яче­ек по каким-то пара­мет­рам, напри­мер узнать коли­че­ство работ­ни­ков стар­ше 40 лет, или посчи­тать все стро­ки, где есть сло­во «пере­мен­ная». Для это­го исполь­зу­ют функ­цию СЧЁТЕСЛИ:

Диа­па­зон — это груп­па яче­ек, в кото­рых мы будем что-то искать, а усло­вие — это по како­му пара­мет­ру мы решим, что ячей­ка нам под­хо­дит.

Допу­стим мы ведём семей­ный бюд­жет и нам нуж­но узнать, сколь­ко раз у нас были покуп­ки боль­ше 5000 руб­лей в одном чеке. Для это­го исполь­зу­ем такое:

Теперь послож­нее. Если нам нуж­но посчи­тать коли­че­ство яче­ек по несколь­ким усло­ви­ям одно­вре­мен­но, то исполь­зу­ют функ­цию СЧЁТЕСЛИМН:

То, что в пря­мо­уголь­ных скоб­ках — допол­ни­тель­ные усло­вия, их может быть мак­си­мум 127, а сами скоб­ки при этом ста­вить не нуж­но. Обра­ти­те вни­ма­ние что для каж­до­го ново­го усло­вия мож­но задать свой диа­па­зон. Функ­ция про­ве­рит все усло­вия, каж­дое в сво­ём диа­па­зоне, и если все усло­вия одно­вре­мен­но выпол­ня­ет­ся — посчи­та­ет коли­че­ство таких яче­ек.

Для при­ме­ра най­дём все тра­ты боль­ше 5000 в одном чеке, за кото­рые отве­ча­ет Миша:

Теперь у нас пер­вый диа­па­зон отве­ча­ет за сум­му в чеке, а вто­рой — за име­на, поэто­му и усло­вия у каж­до­го из них раз­ные.

Функ­ция воз­вра­ща­ет мак­си­маль­ное зна­че­ние из выбран­но­го диа­па­зо­на:

Давай­те исполь­зу­ем её, что­бы най­ти самую доро­гую покуп­ку в бюд­же­те из преды­ду­ще­го при­ме­ра. Для это­го запи­шем её так:

ПОИСКПОЗ

Поиск пози­ции часто исполь­зу­ют, когда нуж­но най­ти поло­же­ние опре­де­лён­но­го эле­мен­та в таб­ли­це:

Зна­че­ние — то, что нам нуж­но най­ти в таб­ли­це, диа­па­зон про­смот­ра — где имен­но мы будем искать наше зна­че­ние. Если в каче­стве диа­па­зо­на ука­жем стол­бец с циф­ра­ми, то функ­ция вер­нёт номер в этом столб­це, где встре­ча­ет­ся нуж­ная циф­ра.

Давай­те най­дём номер стро­ки с мак­си­маль­ной покуп­кой:

Это чис­ло нам пона­до­бит­ся для сле­ду­ю­щей функ­ции

ИНДЕКС

Эта функ­ция воз­вра­ща­ет зна­че­ние кон­крет­ной ячей­ки в ука­зан­ном диа­па­зоне:

=ИНДЕКС(диапазон; номер_строки; [номер_столбца])

Если в диа­па­зон яче­ек вхо­дит толь­ко один стол­бец, доста­точ­но будет ука­зать толь­ко номер стро­ки. Когда в выбран­ном диа­па­зоне полу­ча­ет­ся два столб­ца и боль­ше, мож­но будет выбрать его номер, что­бы точ­но обо­зна­чить ячей­ку.

Попро­бу­ем в нашем при­ме­ре с бюд­же­том най­ти того, кто сде­лал самую боль­шую покуп­ку. Мы уже зна­ем номер стро­ки, в кото­рой запи­са­на самая боль­шая сум­ма, и на этой же стро­ке запи­сан тот, кто эту сум­му потра­тил. Исполь­зу­ем это:

Когда Excel встре­тит такую фор­му­лу, он возь­мёт наш диа­па­зон из вто­ро­го столб­ца, затем возь­мёт номер стро­ки с самой боль­шой покуп­кой (она у нас в ячей­ке Е10, нашли в про­шлом при­ме­ре), и опре­де­лит, что самую круп­ную покуп­ку сде­лал Миша.

Что дальше

Вы уже зна­е­те доста­точ­но для того, что­бы вести в Excel свой семей­ный или лич­ный бюд­жет. Исполь­зуй­те наши фор­му­лы и ана­ли­зи­руй­те полу­чен­ные дан­ные. В сле­ду­ю­щей ста­тье мы рас­ска­жем о том, как менять внеш­ний вид яче­ек и пого­во­рим о новых функ­ци­ях.

Шаг #1. Базовые понятия (изучаем Excel с нуля)

Этой заметкой я бы хотел начать серию, в которой изложу пять простых шагов, которые позволят вам начать использовать Эксель в своей работе.

По сути, это будет база для последующих шагов к освоению программы.

Возможно вы знаете, что программа Excel входит в пакет офисных программ Microsoft Office и является, пожалуй, самой известной и популярной программой из категории электронных таблиц.

Excel стал своеобразным стандартом в индустрии и одним из основных преимуществ программы является ее универсальность. Хоть и есть некоторые общепринятые сферы, в которых используется Excel, тем не менее, возможности программы если и не безграничны, то очень широки.

Вот основные сферы, в которых применяется Excel:

  • произведение расчетов практически любой сложности;
  • автоматизация однотипных расчетов;
  • создание отчетов;
  • организация списков и перечней;
  • анализ и обработка числовых данных;
  • создание диаграмм и графиков на основе данных;
  • создание рисунков и схем.

И еще много чего другого, ведь Excel поддерживает язык программирования VBA ( Visual Basic for Applications ), а это означает, что на базе Excel можно создавать свои программы под какие-то узко специализированные задачи.

И все эти возможности доступны каждому!

В среде обычных пользователей бытует мнение, что Excel — это сложная и трудно осваиваемая программа… Но это совсем не так и мы с вами сделаем в этом курсе пять простых шагов, которые, как я надеюсь, развеют миф о «сложности Эксель».

Я считаю, что практика — лучший учитель и все новое следует осваивать именно на конкретных примерах, а не в теории. Поэтому данный мини-курс будет практическим. Все нужные нам инструменты мы будем осваивать по мере необходимости.

Читать еще:  Изучаем программирование на c

Но как бы мне не хотелось миновать теорию, все же есть некоторые базовые вещи, о которых необходимо рассказать в самом начале, так как в дальнейшем мы будем к ним постоянно обращаться. Я имею в виду интерфейс (внешний вид) программы, а также некоторые ее ключевые элементы.

В данном курсе мы будем рассматривать Excel из пакета Microsoft Office 2016, но курс можно использовать для изучения более ранних версий программы, а именно Excel 2007, 2010 и 2013, так как внешние и функциональные отличия между этими версиями непринципиальны.

Все документы, созданные в программе Excel, называются книгами и файлы рабочих книг имеют расширение . xlsx (в более старых версиях Excel расширение было . xls) .

Каждая книга открывается в отдельном окне программы.

При запуске программы следует создать новую книгу и приступить к созданию нужной нам электронной таблицы.

Поскольку книга в обычном понимании состоит из листов, то и в книге Excel мы их также сможем найти.

По умолчанию в новой книге уже есть лист ( Лист1 ). В версии Excel 2016 он только один, но мы можем создать столько листов, сколько будет необходимо. Для этого необходимо нажать соответствующую кнопку рядом с ярлычком листа.

Переключаться между ними можно с помощью специальных ярлычков в нижней части окна программы.

Каждый лист представляет собой таблицу, ну а любая таблица состоит из строк и столбцов. При этом строки пронумерованы от 1 до 1 048 576, а столбцы обозначаются буквами латинского алфавита — от А до XFD.

При этом, если проследить обозначение столбцов, то мы увидим, что когда алфавит заканчивается к букве прибавляется следующая по алфавиту буква, например, АА, АВ, АС и т.д.

Логично, что на пересечении строк и столбцов располагается ячейка.

Ячейка — это главная «рабочая лошадка» Экселя. Каждая ячейка таблицы может хранить число, текст или формулу. Именно формулы делают электронные таблицы такими удобными, но к формулам мы вернемся несколько позже.

Каждая ячейка имеет свой уникальный адрес. Если вы имеете представление, каким образом в шахматах или на поле игры «Морской бой» отмечается положение объектов, то вам будет легко понять и принцип адресов в Эксель.

В Экселе верхняя левая ячейка имеет адрес A1, а это означает, что она находится на пересечении столбца А и строки 1. Щелкая мышью по ячейкам на листе, мы сможем увидеть их адрес в поле Имени .

В любой момент времени только одна ячейка на листе может быть активной, то есть готовой к вводу данных. Об этом свидетельствует рамка, обрамляющая выделенную ячейку, а также ее адрес в поле Имени .

Обрамление называется табличным курсором и мы можем его перемещать либо мышью, щелчком по нужной ячейки таблицы, либо воспользоваться клавишами управления курсором (стрелками вправо-влево, вверх-вниз).

Также можно увидеть, что заголовки строки и столбца, на пересечении которых находится активная ячейка, подсвечиваются цветом, что также может быть полезно для быстрого определения местоположения выбранной ячейки.

Итак, суть работы в Excel сводится к вводу и форматированию данных в таблице на рабочем листе. Чтобы начать ввод данных в ячейку или изменить ее внешний вид, мы должны сначала эту ячейку выбрать (активировать). Для этого можно использовать либо мышь, либо клавиши управления курсором.

Все операции с ячейками производятся с помощью инструментов, которые сгруппированы по назначению и вынесены на панели инструментов (1, см. рис. ниже).

Сами панели инструментов также сгруппированы и располагаются на тематических вкладках (2) — Главная , Вставка , Разметка страницы и т.д.

Щелчком мыши по вкладке мы переключаемся на нужную вкладку и видим расположенные на ней панели инструментов, которые в свою очередь подписаны в нижней части (3). Это дает нам представление о том, для каких целей используются инструменты конкретной панели.

Область, где размещаются панели инструментов, называют Лентой (4). Ее можно скрыть, чтобы расширить рабочую область программы. Делается это двойным щелчком мыши по активной вкладке.

При этом если лента скрыта, то она будет временно появляться после щелчка мышью по любой из ее вкладок, а затем она будет снова исчезать, когда мы переключимся в рабочую область программы. Это может быть удобным при работе с Эксель на компьютерах с небольшой диагональю экрана, например, на нетбуках.

Ну а с теорией пора заканчивать и переходить к практике. На следующем шаге создадим простую электронную таблицу.

Если вам удобнее воспринимать информацию в видео-формате, то посмотрите ролик:

Если вам интересен Эксель, то подписывайтесь на этот Дзен-канал или мой видео канал на YouTube.

Начала программирования в Excel

Предисловие

Эта книга посвящена Excel — основам программирования в Excel , связи Excel с базами данных и другими источниками данных, анализу офисной деятельности, выполняемыми средствами Excel , созданию интерактивных документов в Excel , приданию Web -страницам функциональности Excel . Отдавая должное этому замечательному приложению, я и решил назвать книгу «Мир объектов Excel 2000».

Почему не просто «Мир Excel 2000»? Видимо, потому что я предпочитаю смотреть на все, что происходит в Excel , с объектной точки зрения, рассматривать все происходящее как действия над объектами. Да и описанию самих объектов в этой книге уделяется достаточно много внимания. При этом в круг рассмотрения входят не только объекты самого Excel . Мир объектов Excel более широк. Так или иначе, в рассмотрении появляются общие объекты Office 2000, объекты других приложений, в книге, например, много внимания уделяется связи Excel и Access. Помимо объектов Excel в книге подробно рассматриваются еще две группы объектов — ADO и OWC. Объекты ADO , позволяющие организовать доступ к базам данных, несомненно, входят в мир Excel , поскольку, чаще всего, Excel является тем приложением, где обрабатываются данные, хранимые в различных источниках. Компоненты OWC, обладающие функциональностью Excel , — их объектная модель — это тоже часть мира объектов Excel . Без этих объектов не обойтись, если Ваше решение переносится в интранет или интернет , и Вы захотите создать Web -узел, страницы которого обладают функциональностью Excel документов.

Что же можно найти в этой книге, и кому она предназначена?

Читать еще:  Где используется язык программирования python

Эта книга предназначена тем, кто создает решения на базе Excel . Конечно, в первую очередь речь идет о тех, кто уже использует программирование на VBA и VBScript при создании своих решений. Но я думаю, что и те, кто давно работает в Excel , но еще не использовал программные способы настройки своих решений, могут начать с этой книги, хотя, предупреждаю, требуется определенная программистская подготовка.

Первые две лекции посвящены началам программирования в Excel . Они, надеюсь, доступны опытным пользователям и начинающим программистам. Думаю, что их с интересом прочтут и те, кто занимается обучением программированию в любой среде программирования. Я высказываю и пытаюсь обосновать здесь «крамольную» мысль о том, что Excel является прекрасной средой начального обучения программированию в школе и в вузах. Надеюсь, что и опытные программисты найдут здесь кое-что полезное для себя, особенно, во второй главе, адресованной математикам.

Глава 3 дает описание объектной модели Excel . Подробно рассмотрены все основные действующие лица этой модели — объекты Application , WorkBook, WorkSheet, Chart , Range и другие. Понятно, что при раскрытии этой темы без технических деталей не обойтись, поэтому чтение главы довольно утомительно, но как справочный материал, она, надеюсь, будет весьма полезной.

Базы данных и другие источники данных — это одна из ведущих тем этой книги. Глава 4 » Excel и базы данных » начинает эту тему. В этой же главе дается знакомство с приложением Access, на примере показано, как строится база данных в Access, изучаются связи Excel и Access.

Пятая и шестая главы книги посвящены объектам ADO . Уже то, что этим объектам посвящены две главы, говорит о степени подробности рассмотрения этой темы. Объекты ADO задают интерфейс между самыми разнообразными источниками данных и клиентским приложением, где эти данные обрабатываются. Таким приложением совсем не обязательно должен быть Excel , сфера применения объектов ADO значительно шире. Но Excel это одна из наиболее подходящих кандидатур на роль такого клиентского приложения. Чтение этих глав требует определенной подготовки и ориентированно на более продвинутых программистов.

Седьмая глава книги посвящена разработке интерактивных документов. Она носит в определенном смысле центральный характер. В ней рассматривается весь процесс создания интерактивного документа Excel . Этот документ можно считать примером создаваемого в Excel типичного решения, в котором программный проект играет определяющую роль. Предлагаемое решение использует базу данных Access и объекты ADO для организации связи с базой данных. Здесь же обсуждается и ряд других вопросов, важных в практической работе, начиная от организации интерфейса пользователя до получения печатной формы документа.

Глава 8 посвящена вопросам, возникающим при анализе офисной деятельности. В ней делается попытка сочетать содержательное рассмотрение, например, рассмотрение того, как проводить анализ типа «Что, если …» с рассмотрением средств Excel , используемых в таком анализе. Здесь рассматриваются сводные таблицы и сводные диаграммы, сценарии , методы прогнозирования и многое другое.

В девятой главе подробно обсуждается создание проекта под названием «MasterF». С содержательной точки зрения рассматривается задача оптимального выбора инвестиционных вложений. В проектном решении используется мощный встроенный инструмент Excel — решатель Solver, позволяющий решать сложные оптимизационные задачи. Данный проект демонстрирует построение надстройки над встроенным инструментарием Excel . Полагаю, что он может иметь не только учебную, но и практическую ценность для тех, кто решает подобные задачи.

В главе 10 в рассмотрение вводятся новые объекты, тесно связанные с Excel . В этой главе рассматриваются Office Web Components — компоненты OWC. По моему мнению, эти компоненты являются лучшим продуктом, созданным Microsoft в области компонентного программирования. Они дают возможность добавить функциональность Excel в свои решения без использования самого Excel и других приложений Office 2000. Основное предназначение этих компонент — обеспечение корпоративной работы с документами в интрасетях, что позволяет создавать интерактивные страницы Web -узлов, обладающие функциональностью Excel . При рассмотрении этих компонент большое внимание уделяется программной работе с этими компонентами, возможности программной настройки Web -документов, использующих эти компоненты.

Глава 11 посвящена введению в Web — программирование . Я подробно рассматриваю процесс создания интерактивного Web -документа. Ключевым словом здесь является » интерактивность «, поскольку, по большому счету, вся эта книга о том, как придать нужную интерактивность создаваемым документам. Глава носит вполне самостоятельный характер, но, по сути, является естественным продолжением двух тем, рассматриваемых в главах 7 и 10, поскольку с одной стороны речь идет о создании интерактивного документа, с другой — документа Web , страницы которого могут обладать функциональностью Excel . Замечу, что при рассмотрении вопросов создания интерактивного Web -документа, я ограничиваюсь рассмотрением программных продуктов от Microsoft. Так что роль Web -сервера, выполняющего сценарии на серверной стороне, играет IIS — Internet Information Server , соответствующие страницы узла являются ASP-страницами, а обозреватель, выполняющий код на клиентской стороне, это Internet Explorer.

Главу 12 я решил посвятить описанию проектов, выполненных студентами, которым я читал курс «Офисное программирование «. Надеюсь, что часть проектов, о которых идет речь в этой главе, будут на сервере, их программный код открыт и доступен для изучения. Работы студентов расширяют множество примеров, рассмотренных в книге, и являются хорошей иллюстрацией возможностей офисного программирования. Все игры ориентированы, в первую очередь , на школьников, но не только на них. Большинство игр относится к классу «развивающих» игр, направленных на развитие логического мышления. Среди игр есть вариации известных игр — Lines, Tetris, Digger, игры-головоломки, известная карточная игра «Подкидной дурак» и другие игры.

Завершая предисловие, хочу сказать, что предлагаемый курс тесно связан с книгами серии «Офисное программирование «, вышедшими в издательстве «Русская редакция». Есть явные и неявные ссылки в тексте многих глав:

  1. «VBA в Office 2000. Офисное программирование,
  2. «Средства разработки VBA-программиста». Офисное программирование,
  3. Мир объектов Excel 2000. Средства разработки VBA-программиста.

Хорошо, если читатели знакомы с этими книгами, или прошли курсы по первым двум книгам, но это не обязательное требование. Пройти данный курс можно вполне самостоятельно. Скажу даже, что я старался, по возможности, сделать каждую главу доступной для независимого чтения.

Просьба к читателям. Поскольку курс построен на основе ранее вышедшей книги и практически не подвергался переделке, то возможны «висячие ссылки», имеющие смысл только для книги. Часть материала уже устарела. Постарайтесь быть снисходительными к этим огрехам. Я искренне верю, что основное содержание не потеряло своей ценности и может быть полезным всем, кто так или иначе связан с офисным программированием.

Читать еще:  Язык программирования c для начинающих

VBA Excel: примеры программ. Макросы в Excel

Немногие знают, что первая версия популярного продукта Microsoft Excel появилась в 1985 году. С тех пор он пережил несколько модификаций и востребован у миллионов пользователей по всему миру. При этом многие работают лишь с малой толикой возможностей этого табличного процессора и даже не догадываются, как им могло бы облегчить жизнь умение программирования в Excel.

Что такое VBA

Программирование в Excel осуществляется посредством языка программирования Visual Basic for Application, который изначально встроен в самый известный табличный процессор от Microsoft.

К его достоинствам специалисты относят сравнительную легкость освоения. Как показывает практика, азами VBA могут овладеть даже пользователи, которые не имеют навыков профессионального программирования. К особенностям VBA относится выполнение скрипта в среде офисных приложений.

Недостатком программы являются проблемы, связанные с совместимостью различных версий. Они обусловлены тем, что код программы VBA обращается к функциональным возможностям, которые присутствуют в новой версии продукта, но отсутствуют в старой. Также к минусам относят и чрезмерно высокую открытость кода для изменения посторонним лицом. Тем не менее Microsoft Office, а также IBM Lotus Symphony позволяют пользователю применять шифрование начального кода и установку пароля для его просмотра.

Объекты, коллекции, свойства и методы

Именно с этими понятиями нужно разобраться тем, кто собирается работать в среде VBA. Прежде всего необходимо понять, что такое объект. В Excel в этом качестве выступают лист, книга, ячейка и диапазон. Данные объекты обладают специальной иерархией, т.е. подчиняются друг другу.

Главным из них является Application, соответствующий самой программе Excel. Затем следуют Workbooks, Worksheets, а также Range. Например, для обращения к ячейке A1 на конкретном листе следует указать путь с учетом иерархии.

Что касается понятия «коллекция», то это группа объектов того же класса, которая в записи имеет вид ChartObjects. Ее отдельные элементы также являются объектами.

Следующее понятие — свойства. Они являются необходимой характеристикой любого объекта. Например, для Range — это Value или Formula.

Методы — это команды, показывающие, что требуется сделать. При написании кода в VBA их необходимо отделять от объекта точкой. Например, как будет показано в дальнейшем, очень часто при программировании в «Эксель» используют команду Cells(1,1).Select. Она означает, что необходимо выбрать ячейку с координатами (1,1) т.е. A1.

Вместе с ней нередко используется Selection.ClearContents. Ее выполнение означает очистку содержимого выбранной ячейки.

Как начать

Прежде всего требуется создать файл и сохранить его, присвоив имя и выбрав тип «Книга Excel с поддержкой макросов».

Затем необходимо перейти в приложение VB, для чего достаточно воспользоваться комбинацией клавиш «Alt» и «F11». Далее:

  • в строке меню, расположенном в верхней части окна, нажимают на иконку рядом с иконкой Excel;
  • выбирают команду Mudule;
  • сохраняют, нажав на иконку с изображением floppy disk;
  • пишут, скажем так, набросок кода.

Он выглядит следующим образом:

Обратите внимание, что строка «’Наш код» будет выделена другим цветом (зеленым). Причина в апострофе, поставленном в начале строки, который обозначает, что далее следует комментарий.

Теперь вы можете написать любой код и создать для себя новый инструмент в VBA Excel (примеры программ см. далее). Конечно, тем, кто знаком с азами Visual Basic, будет намного проще. Однако даже те, кто их не имеет, при желании смогут освоиться достаточно быстро.

Макросы в Excel

За таким названием скрываются программы, написанные на языке Visual Basic for Application. Таким образом, программирование в Excel — это создание макросов с нужным кодом. Благодаря этой возможности табличный процессор Microsoft саморазвивается, подстраиваясь под требования конкретного пользователя. Разобравшись с тем, как создавать модули для написания макросов, можно приступать к рассмотрению конкретных примеров программ VBA Excel. Лучше всего начать с самых элементарных кодов.

Пример 1

Задача: написать программу, которая будет копировать значение содержимое одной ячейки и затем записывать в другую.

  • открывают вкладку «Вид»;
  • переходят на пиктограмму «Макросы»;
  • жмут на «Запись макроса»;
  • заполняют открывшуюся форму.

Для простоты в поле «Имя макроса» оставляют «Макрос1», а в поле «Сочетание клавиш» вставляют, например, hh (это значит, что запустить программку можно будет блиц-командой «Ctrl+h»). Нажимают Enter.

Теперь, когда уже запущена запись макроса, производят копирование содержимого какой-либо ячейки в другую. Возвращаются на исходную пиктограмму. Нажимают на «Запись макроса». Это действие означает завершение программки.

  • вновь переходят на строку «Макросы»;
  • в списке выбирают «Макрос 1»;
  • нажимают «Выполнить» (то же действие запускается начатием сочетания клавиш «Ctrl+hh»).

В результате происходит действие, которое было осуществлено в процессе записи макроса.

Имеет смысл увидеть, как выглядит код. Для этого вновь переходят на строку «Макросы» и нажимают «Изменить» или «Войти». В результате оказываются в среде VBA. Собственно, сам код макроса находится между строками Sub Макрос1() и End Sub.

Если копирование было выполнено, например, из ячейки А1 в ячейку C1, то одна из строк кода будет выглядеть, как Range(“C1”).Select. В переводе это выглядит, как «Диапазон(“C1”).Выделить», иными словами осуществляет переход в VBA Excel, в ячейку С1.

Активную часть кода завершает команда ActiveSheet.Paste. Она означает запись содержания выделенной ячейки (в данном случае А1) в выделенную ячейку С1.

Пример 2

Циклы VBA помогают создавать различные макросы в Excel.

Циклы VBA помогают создавать различные макросы. Предположим, что имеется функция y=x + x 2 + 3x 3 – cos(x). Требуется создать макрос для получения ее графика. Сделать это можно только, используя циклы VBA.

За начальное и конечное значение аргумента функции берут x1=0 и x2=10. Кроме того, необходимо ввести константу — значение для шага изменения аргумента и начальное значение для счетчика.

Все примеры макросов VBA Excel создаются по той же процедуре, которая представлена выше. В данном конкретном случае код выглядит, как:

Do While x1 0 Then Cells(1, 1).Value = 1

Ссылка на основную публикацию
Adblock
detector