Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_2_Ввод_вывод_данных.doc
Скачиваний:
18
Добавлен:
15.02.2015
Размер:
425.98 Кб
Скачать

Выполнение процедуры

После создания процедуры её можно сразу выполнить. Это можно сделать одним из двух способов:

  • использовать команду Run Sub/UserForm из меню Run,

  • нажать клавишу <F5>.

Выполним процедуруНачало_VBA первым способом:

  1. Выбрать пункт Run стандартной панели инструментов редактора Visual Basic (рис.14)

Рис.14. Окно Run стандартной панели инструментов

  1. В раскрывшемся меню выбрать пункт Run Sub/UserForm. Появится диалоговое окно с именем процедуры (рис.15)

Рис.15. Окно макросов

  1. Щёлкнуть по кнопке Run или нажать клавишу Enter.

Процедура выполнится и отобразит окно сообщения (рис. 16).

Рис. 16. Результат выполнения процедуры Начало_VBA

  1. Щелкнуть кнопку ОК; произойдёт возврат в окно редактора Visual Basic.

Сохранение процедуры

Чтобы сохранить новую процедуру, надо сохранить рабочую книгу, где находится эта процедура. Это можно сделать двумя способами:

  1. В зависимости от используемой версии MS Office Выбрать опцию меню File, щелкнуть кнопку File или кнопку и выбрать Сохранить как ….

  2. Можно сохранить рабочую книгу из редактора Visual Basic, выбрав опцию меню FileСохранить как…

Далее в окне «Сохранение документа» выбрать место сохранения файла (папку), указать имя файла («Начало_VBA»), если вы работаете в Excel 2007/2010, выбрать тип файла Книга Excel с поддержкой макросов и нажать кнопку “Сохранить” или клавишу <Enter>. Рабочая книга, модуль и процедура будут сохранены.

Следует обратить внимание на то, что в Ecxel 2007/2010 имя сохранённого файла будет иметь расширение “xlsm”. Это означает, что это файл Excel 2007 или Excel 2010, содержащий макросы. Если же предполагается, что сохраняемый файл будет использоваться в Excel 97–2003, то тогда для его сохранения в меню форматов нужно выбрать пункт .

Кроме того, следует иметь в виду, что рабочие книги, в том числе содержащие макросы, полученные в Excel 97–2003, можно использовать в Excel 2007 и Excel 2010.

Б. Excel 97 – 2003

  1. Вызвать Excel.

  2. Открыть рабочую книгу, в которую нужно вставить процедуру, или оставить Книга1, если создаётся новое приложение.

  3. Выполнить команду Сервис | Макрос | Безопасность…

  4. В диалоговом окне “Безопасность” на вкладке “Уровень безопасности” нажать кнопку “Низкая (не рекомендуется)” и щёлкнуть мышью OK. В противном случае при запуске Excel программные средства VBA будут недоступны, и при открытии файла Excel, для которого не был уровень безопасности “Низкая”, появится сообщение о том, что макросы были отключены.

Примечание

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

  1. Выполнить команду Сервис > Макрос > Редактор Visual Basic. Откроется окно редактора Visual Basic. Если окно проектов не будет отражено, нажать комбинацию клавиш <Ctrl+R>. В левой части окна редактора Visual Basic отобразится окно проектов Project Explorer (рис. 1).

Рис. 1. Окно проектов Project Explorer

  1. Щёлкнуть правой кнопкой мыши на элементе ЭтаКнига.

  2. В появившемся контекстном меню (рис.2)

Рис.2. Контекстное меню

выбрать команду Insert > Module.

В приложение будет добавлен модуль Module1 (рис. 3).

Рис. 3. Окно проектов

В верхней части окна кода модуля находится инструкция Option Explicit, которая требует явно описывать все переменные с помощью операторов Dim, Private, Public, ReDim и Static. Эта инструкция в новом модуле появляется только тогда, когда в диалоговом окне Options на вкладке Editor установлен флажок опции Require Variable Declaration (Рис. 4). Хороший стиль программирования рекомендует явно описывать все переменные. Диалоговое окно Options открывается командой Tools > Options (рис.5).

Рис.4. Диалоговое окно Options Рис.5. Выбор команды

Tools> Options

При попытке использовать переменную без её объявления при запуске процедуры на выполнение будет выдано сообщение об ошибке “Variable not defined” (“Переменная не определена”).

  1. Выбрать в меню окна проектов команду Insert > Procedure(рис.6).

Рис. 6. Выбор команды Insert > Procedure

  1. Откроется окно добавления процедуры в проект Add Procedure, в поле Name ввести имя процедуры, например, Начало_VBA. (рис. 7).

Рис. 7. Окно добавления процедуры

  1. В секции Туре установить переключатель Sub и щёлкнуть на кнопке ОК. Как показано на рис.8, в модуль будет добавлена пустая процедура “Начало_VBA”. Эта процедура имеет по умолчанию статус Public, что делает её доступной из любой другой процедуры данной рабочей книги. В пустой строке находится текстовый курсор, предлагая начать ввод кода процедуры.

Рис. 8. Пустая процедура VBA

  1. Ввести за строкой “Public Sub Начало_VBA” следующий текст:

MsgBox "Начинаем работать с VBA"

После нажатия клавиши пробела за словом MsgBox появится окно (рис.9) с информацией о данной инструкции:

MsgBox(Prompt, [Buttons As VbMsgBoxStyle = vbOKOnly]…)

Рис.9. Ввод инструкций процедуры Начало_VBA

Текст введённой процедуры показан на рис. 10.

Рис.10. Процедура Начало_VBA

Имена VBA для подпрограмм и функций, как и всех других объектов VBA, образуются на основании следующих правил:

  • первый символ имени должен быть буквой (латинского или русского алфавита);

  • имя может содержать буквы, цифры и знаки подчеркивания;

  • имя не может содержать пробелы, точки, запятые, восклицательные знаки (!) и символы @, &, $, #; в качестве разделителей слов рекомендуется использовать знаки подчеркивания;

  • имя не должно иметь более 255 символов.