Итак, в самом общем случае VBA-программа представляет собой определенную последовательность команд, которые выполняются по порядку, одна за другой, при каждом запуске программы. Сама по себе любая VBA-программа является совершенно бесполезной, если не уметь её запускать на выполнение.
Один способ мы уже знаем: VBA-программу можно выполнить в окне редактора VBA, выбрав команду меню Run=>Run . щелкнув на кнопке Run . панели инструментов Standard или нажав .
Несомненно, это очень удобно при тестировании программы, но совершенно не подходит для повседневной работы с ней. Запускать программу, готовую к выполнению, нужно (и гораздо удобнее) из того приложения, в котором вы работаете. При этом организовать ее запуск в приложении можно будет с помощью кнопки на панели инструментов, нажатия определенной комбинации клавиш, выбора команды меню или даже, предусмотрев ее автоматический запуск при открытии документа.
Повторим: макрос — это та же VBA-программа, а макрос, написанный самостоятельно (без использования специальных функций Microsoft Office), — это процедура. Поэтому выполнить VBA-программу фактически означает выполнить макрос или процедуру.
Цикл For Each — Новый курс VBA (9)
Программа может включать как одну, так и несколько процедур, но только одна из этих процедур будет выполняться первой при вызове программы на выполнение — имя этой первой выполняемой процедуры можно считать именем всей программы. Эта первая процедура может вызывать другие процедуры, но для выполнения всей программы вполне необходимо и достаточно запускать на выполнение только первую процедуру, а все остальные будут выполняться автоматически, по мере необходимости, непосредственно по ходу решения задачи.
При вызове программы на выполнение из диалогового окна Макрос следует найти в этом окне ее имя:
1) откройте диалоговое окно Макрос в том VBA-приложении, в котором будет выполняться ваша программа, т.е. перейдите на ленте приложения (для Office 2007) на вкладку Вид, раскройте в группе Макросы меню и выберите в нем команду Макросы. Вид диалогового окна Макрос приложения был показан ранее, однако некоторые детали в нем могут несколько отличаться, в зависимости от используемого VBА-приложения.
2) в диалоговом окне Макрос выбираем из списка доступных VBA-программ (или макросов) имя требуемой программы и щелкаем по кнопке Выполнить.
3) если в приведенном в окне списке макросов интересующая вас программа (или макрос) отсутствует, откройте раскрывающийся список Макросы из (для Word) и выберите в нем вместо принимаемого по умолчанию значения Активных шаблонов то, которое описывает документ, в котором хранится интересующая вас программа. Для приложения Excel подобный список называется Находится в — по умолчанию в нем выбрано значение Все открытые книги.
9.5. Обработка ошибок
При написании кода VBA-программы безусловно могут быть допущены ошибки или случайные описки. Многие из подобных случайных ошибок редактор VBA автоматически отслеживает непосредственно во время написания или редактирования программного кода. Более сложные логические ошибки можно обнаружить компилятором при выполнении процедуры — он проверяет код процедуры на наличие ошибок непосредственно перед преобразованием программы в форму, понятную для компьютера. Если операция компиляции не будет успешной, появится окно с уведомлением об ошибке.
Цикл For … Next — Новый курс VBA (8)
Понятие об общем цикле создания VBA – программы
Процесс создания программы обычно разбивается на ряд этапов:
1. Тщательный анализ задачи, решение которой предстоит запрограммировать.
2. Проектирование программы, т.е., подразделение её на отдельные блоки, каждый из которых будет предназначен для решения какой-нибудь локализованной подзадачи. Вместе с тем продумать, как эти блоки будут связаны друг с другом общим процессом решения всей задачи.
3. Поскольку мы имеем дело с визуальным программированием, то не обойтись без всевозможных окон (форм), в которых надо предусмотреть управляющие элементы и зоны для ввода или выбора данных.
4. Для каждого из элементов таких форм надо продумать, какие действия должны происходить в программе при воздействии на эти элементы. Вот тут уже придётся писать соответствующие подпрограммы (процедуры), которые эти действия будут производить в общей программе.
5. Когда этапы 1 — 4 пройдены, т.е., детальный проект составлен, можно переходить к его реализации:
Ø проектирование внешнего вида нужных форм и размещение на них элементов управления;
Ø описание свойств этих элементов в среде редактора VBA;
Ø написание программного кода (текста программ на языке VBA) необходимых процедур и т. д.
6. Следующий шаг – запуск программы на исполнение и выявление ошибок в ней.
7. При обнаружении ошибок в синтаксисе текста программы или ошибок в самом алгоритме (это выявляется посредством выполнения контрольного примера с заранее известными результатами) наступает период отладки программы.
8. Отладка сводится к выявлению характера ошибки, её устранению и повторному исполнению программы. Эти действия повторяются до тех пор пока все ошибки не будут устранены. У программистов бытует такое шуточное высказывание об этом периоде работы над программой: «Ещё одна ПОСЛЕДНЯЯ ошибка!»
9. Последний этап – «прогон» проекта на реальных данных и сдача его в эксплуатацию.
Уточним некоторые подробности.
Создавать новую форму, размещать в ней надписи, поля ввода, командные кнопки и другие элементы управления, а также писать программный код необходимых процедур, удобнее всего с помощью визуальной среды разработки, предоставляемой редактором VBA.
Например, для создании новой формы потребуется лишь выбрать в меню редактора VBA команду Insert =>UserForm, и на экран будет выведено окно новой, пока еще пустой формы. Затем, копируя в форму заготовку элемента управления надпись, можно будет добавить в нее необходимые надписи, а с помощью копирования заготовки элемента управления командная кнопка, можно будет поместить в форму любые требуемые кнопки, — например, ту, после щелчка на которой выполнение вашей программы будет завершаться. Наконец, при выборе команды меню View => Code в редакторе VBA будет открыто окно программного кода, предназначенное для записи текста необходимых процедур обработки событий формы и ее компонентов, а также разнообразных вспомогательных процедур.
После того как программа, наконец, будет готова, следует перейти к третьему этапу работы — тестированию созданной вами программы. Этот процесс предполагает тщательный анализ функционирования только что созданной программы в самых различных режимах, назначение которого — убедиться, что она работает в полном соответствии с вашими планами. Для этого удобнее всего воспользоваться командой меню редактора VBA Run. (Выполнить. ). При выборе этой команды вновь созданная программа запускается на выполнение и появляется возможность проверить, как она реагирует на те или иные события, правильно ли обрабатываются введенные данные (как корректные, так и заведомо ошибочные), позволяет ли она решить ту задачу, для которой, собственно, и была создана.
При обнаружении любых ошибок или просто нежелательных отклонений от нормальной работы требуется перейти к четвертому этапу разработки программы — провести ее отладку. Суть этой процедуры состоит в том, что с помощью тех или иных средств выясняется причина появления ошибки в работе программы и принимается решение о способах ее устранения. Теперь потребуется вернуться ко второму этапу и внести в программу необходимые изменения, а затем вновь перейти к третьему этапу и повторить ее тестирование.
Этот цикл повторяется до тех пор, пока тестирование не покажет отсутствие каких-либо отклонений от ожидаемого поведения программы. Надо заметить, что редактор VBA предлагает несколько мощных и эффективных средств автоматизации процесса отладки.
Источник: infopedia.su
Цикл создания программы
Независимо от используемых программных средств, процесс создания новой программы можно разбить на пять простых шагов.
1. Проектирование.
Здесь определяется, что должна делать программа, как она должна выглядеть на экране и взаимодействовать с другим программным обеспечением.
2. Реализация.
Для успешного выполнения п. 1 конструируются окна и другие элементы программы, появляющиеся на экране, и создается необходимый программный код. Это совсем несложно.
3. Тестирование.
Запускают программу, чтобы проверить, выглядит ли она так, как нужно, и выполняет ли то, что нужно. Как правило, не выглядит и не выполняет.
4. Отладка.
Весь программный код тщательно проверяется до тех пор, пока не выяснится причина неправильного поведения и не будут внесены соответствующие коррективы (как всякое приличное средство программирования, VBA имеет специальные возможности, облегчающие процесс отладки).
5. Повторное тестирование.
Повторяют пп. 3 и 4 до тех пор, пока хватит сил и терпения.
К счастью, специально заучивать эту последовательность шагов не придется — они станут, если можно так выразиться, вашей второй натурой, как только вы всерьез займетесь программированием в VBA.
Источник: pydev.ru