Для создания программ в Microsoft Office используется специальный редактор. Этот редактор представляет собой отдельное приложение, которое запускается командой Разработчик / Visual Basic или нажатием комбинации клавиш Alt+F11. Если вкладка Разработчик на ленте отсутствует, то выполните команду Файл / Параметры / Настройка ленты. В разделе Настройка ленты в списке Основные вкладки выберите пункт Разработчик и нажмите кнопку ОК. Далее, для определенности, мы будем рассматривать редактор Visual Basic в Excel.
Окно редактора, как правило, занимает весь экран. У него имеются строка заголовка, меню и панель инструментов. Это окно – главное, в нем располагаются все остальные окна. Для открытия нужного окна следует воспользоваться командой меню View. Обычно по умолчанию выводятся Окно проектов (Project Explorer) и Окно свойств (Properties Window).
В редакторе каждая рабочая книга рассматривается как проект, состоящий из модулей. Модуль – это совокупность описаний и процедур. Содержимое каждого модуля отображается в отдельном окне. Модули обычно сохраняются в файле рабочей книги, но можно сохранить их в виде отдельных файлов с помощью команды File / Export File. Для добавления существующего модуля к проекту используется команда File / Import File. При импорте в проект добавляется копия файла.
Состав проектов отображается в виде дерева в Окне проектов. Окно позволяет открыть модуль, для этого выполните двойной щелчок на имени нужного модуля, добавить или удалить модуль (команды контекстного меню Insert и Remove). Учтите, что в каждом проекте есть модули, которые создаются автоматически. Это модуль рабочей книги (ЭтаКнига), модули рабочих листов, а также модули, содержащие макросы, созданные с помощью команды Разработчик / Записать макрос. Остальные модули добавляются в проект с помощью команды Insert. Тип модуля зависит от вашей задачи.
Для создания макросов и функций нужен программный модуль, в котором размещается текст нужной функции или процедуры. Модуль добавляется командойInsert / Module. В одном модуле можно размещать любое количество процедур и функций. Для ускорения ввода текста процедуры можно выполнить команду Insert / Procedure, которая вставит заготовку процедуры в модуль.
Длясоздания диалогового окна добавьте к проекту модуль формы (команда Insert / UserForm). Форма – это пустое окно. В него нужно поместить специальные объекты, они называются элементами управления, с помощью которых будут выполняться необходимые действия.
Доступные элементы управления находятся в окне Toolbox. Оно обычно выведено на экран, если форма открыта и активна. При необходимости окно можно открыть с помощью команды View / Toolbox. Чтобы поместить элемент управления в форму, щелкните на пиктограмме элемента, переместите курсор в окно формы (он будет иметь вид крестика), нажмите на левую кнопку мыши и установите размер элемента, отпустите кнопку. Изменение размера и перемещение элемента выполняются как обычно в Windows.
Для просмотра и изменения свойств формы и элементов управления используется окно Properties. Открыть окно свойств можно с помощью команды View / Properties Window. В окне выводятся свойства активного в данный момент объекта. Это может быть форма или элемент управления. Чтобы сделать объект активным, нужно щелкнуть по нему мышью или выбрать с помощью списка в верхней части окна Properties. Чтобы изменить значение свойства, нужно найти это свойство в левом списке и изменить значение в правой колонке.
В верхней части Окна проектов имеются кнопки View Code и View Object. Для просмотра и редактирования текста программы (кода) формы – щелкните по кнопке View Code. Будет открыто окно с инструкциями на VBA. Для просмотра объектов формы щелкните по кнопке View Object.
Вы можете работать с программой на VBA в двух режимах: режиме проектирования и режиме выполнения. В режиме проектирования вы вводите и редактируете текст программы, размещаете элементы в форме, меняете их свойства. Протестировать программу можно в режиме выполнения. В этом режиме вы работаете с программой как пользователь. Для выполнения программы перейдите в окно нужного модуля. Если тестируется процедура, то обязательно установите курсор внутри этой процедуры. Если тестируется форма, то сделайте активной форму, а не элемент в этой форме. Выполните команду Run / Run Sub/UserForm или воспользуйтесь инструментом или нажмите клавишу F5. Для возврата в режим проектирования (останов программы) выберите команду Run / Reset или инструмент или нажмите на кнопку своей программы. Функцию пользователя нужно вызвать с помощью мастера функций обычным образом, никаких дополнительных режимов для ее тестирования не требуется.
Для возврата в рабочую книгу, не закрывая редактора, можно использовать кнопку или панель задач. Для выхода из редактора Visual Basic и возврата в рабочую книгу закройте окно редактора или выберите команду меню File / Close and Return to Microsoft Excel.