Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Составные части VBA-проекта. Добавление пользовательского кода




 

Проект VBA-приложения представляет собой совокупность таких элементов, как модули подпрограмм (module), модули классов (class module), формы (user form), ссылки (reference) на другие VBA-проекты и модули встроенных объектов документа приложения-контейнера. Составные части VBA-проекта доступны, как уже упоминалось, в виде иерархического списка в проводнике проектов. Проект VBA-приложения необязательно должен иметь все возможные составные части. В самом простейшем случае приложение может состоять только из одного модуля, который ассоциирован с объектом документа приложения-контейнера. Например, для Microsoft Word таким модулем по умолчанию является модуль, ассоциированный с объектом текущего документа, как показано на рис. 4.

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

 

 

Рис. 4. Содержимое проекта VBA-приложения по умолчанию в Microsoft Word

 

Несмотря на присутствие в VBA-проекте модуля по умолчанию, тем не менее в большом реальном проекте целесообразно, подпрограммы решающие логически связанные задачи, группировать в рамках одного модуля исходногокода. Любой модуль в VBA представляет собой текстовый файл, упакованный внутри документа приложения-контейнера и предназначенный для размещения в нем исходного текста программ в виде объявлений переменных, типов, а также реализаций подпрограмм (процедур и функций). Добавить новый модуль в проект VBA-приложения можно, воспользовавшись командой Insert | Module. Идентификатор создаваемого и присоединенного к проекту модуля имеет вид Module<n>, где <n> – порядковый номер модуля. Задать новое имя для модуля так, чтобы оно отражало его назначение и указывало на общий смысл функциональности подпрограмм, входящих в его состав, можно с помощью окна свойств. Для этого пункт с названием нового модуля необходимо выделить в проводнике проекта, а в окне свойств ввести новое значение для свойства Name, например TestVBAModule.

В нашем случае этот модуль может быть использован для размещения кода простейшего приложения. Если содержимое модуля не отображено в редакторе кода, модуль необходимо активизировать. Для этого необходимо сделать двойной щелчок по соответствующему элементу в проводнике проекта или выбрать команду View | Code.

Добавить в состав модуля новый элемент кода можно вполне произвольно или для вставки новой подпрограммы воспользоваться командой Insert | Procedure, с помощью которой открывается диалоговое окно Add Procedure (рис. 5).

 

 

Рис. 5. Диалоговое окно Add Procedure

 

Присоединим к модулю новую процедуру с идентификатором MyFirstProc, исходный текст которой приведен ниже:

 

Public Sub MyFirstProc()

MsgBox "Привет, мир VBA"

End Sub

 

Для выполнения кода этой процедуры необходимо установить курсор в редакторе на ее исходный текст и выбрать команду Run | Run Sub/UserForm. В случае успешного исполнения будет автоматически активизировано окно приложения контейнера и на экране отобразится диалоговое окно с сообщением. В том случае, если курсор в редакторе кода не указывает на код какой-либо подпрограммы, активизация команды Run | Run Sub/UserForm приведет к тому, что среда VBA предложить выбрать нужную подпрограмму для запуска с помощью списка в диалоговом окне Macros (рис. 6).

 

 

Рис. 6. Выбор подпрограммы для исполнения с помощью диалогового окна Macros

 

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

 










Последнее изменение этой страницы: 2018-04-12; просмотров: 539.

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