
Выполнение процедуры
После создания процедуры её можно сразу выполнить. Это можно сделать одним из двух способов:
использовать команду Run Sub/UserForm из меню Run,
нажать клавишу <F5>.
Выполним процедуруНачало_VBA первым способом.
Выбрать пункт Run стандартной панели инструментов редактора Visual Basic (рис.11)
Рис.11. Окно Run стандартной панели инструментов
В раскрывшемся меню выбрать пункт Run Sub/UserForm.
Процедура выполнится и отобразит окно сообщения (рис. 12).
Рис. 12. Результат выполнения процедуры Начало_VBA
Щелкнуть кнопку ОК; произойдёт возврат в окно редактора Visual Basic.
Сохранение процедуры
Чтобы сохранить новую процедуру, надо сохранить рабочую книгу, где находится эта процедура. Можно сохранить рабочую книгу из редактора Visual Basic. Для этого нужно произвести следующие действия.
Выполнить команду File > Save Книга.
Если рабочая книга еще ни разу не сохранялась, дать ей имя.
Ввести Начало_VBA в качестве имени книги и нажать клавишу <Enter>. Рабочая книга, модуль и процедура будут сохранены.
Получение контекстно-зависимой справки VBA
Для получения справки по инструкции контекстно-зависимой справки VBA необходимо перед ключевым (зарезервированным) в тексте модуля или вне его поставить одиночную кавычку и нажать на клавишу F1.
Адресация ячеек в VBA Excel
Адресация (ссылка) на ячейки рабочего листа могут осуществляться двумя способами:
используя свойство Cells объекта Worksheet,
используя свойство Address объекта Range.
1. Формат свойства Cells объекта Worksheet:
Worksheets(индекс).Cells(<№ строки>,<№ столбца>),где
индекс – номер или имя рабочего листа,
<№ строки>,<№ столбца> – целочисленные выражения, задающие значения № строки и № столбца рабочего листа.
Пример
‘Ячейка, находящаяся в строке 2 в столбце 5 (ячейка E5) листа Лист1, получает значение 10.
i=1
k=2
Worksheets(“Лист1”).Cells(i*4+1,k).Value=10
2. Формат свойства Address объекта Range:
Worksheets(индекс).Range(Address)
Пример
Worksheets((“Лист1”).Range(“E5”) .Value=10
Примечание
Для активного рабочего листа можно опустить его название и слово Value ,например, записать предыдущие инструкции так:
Cells(i*4+1,k)=10
Range(“E5”)=10
При использовании свойства Address объекта Range можно указать диапазон ячеек. Например, в результате выполнения инструкции Range ("a5:a10") = 5 ячейки блока A5:A10 получат значение 5.
Вывод сообщений и ввод данных
В этом пункте рассматриваются следующие средства вывода сообщений на экран дисплея и ввода данных с клавиатуры при помощи диалоговых окон:
использование функции MsgBox;
использование функции InputBox;
применение метода InputBox;
именование аргументов,
использование объединения текстовых строк.
Для освоения указанных выше функций необходимо изучить теоретический материал, изложенный в документе “для_лаб2.doc”.
Вывод сообщений на экран
Изучить Функцию MsgBox
Скопировать текст процедуры ФункцияMsgBox.
Войти в Excel.
А. Excel 2007–2010
На вкладке Разработчик в группе Код щёлкнуть по кнопке
. Отобразится окно проектовProject Explorer (рис. 4, с.14).
Щёлкнуть правой кнопкой мыши на элементе ЭтаКнига.
В появившемся контекстном меню (рис.5) выбрать команду Insert > Module. В окно проектов приложения будет добавлен модуль Module1 (рис. 6).
Щёлкнуть правой кнопкой мыши под строкой Options Explicit и в появившемся ниспадающем меню выбрать п. Paste (Вставить).
В Модуль1 будет вставлена процедура ФункцияMsgBox.
Выполнить процедуру ФункцияMsgBox:
-команда Run | Run Sub/UserForm.
Проанализировать результаты выполнения процедуры, сравнив их с кодом процедуры ФункцияMsgBox.
Примечание
В этой процедуре используется инструкция условного перехода If…Then…Else, которая задает выполнение определенных групп инструкций в зависимости от значения выражения.