Анимация
JavaScript


Главная  Библионтека 

0 1 [ 2 ] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

ство, возвращающее объект, в инструкции записывается без этого объекта. Такой способ записи является допустимым и применяется к широкому классу свойств, возвращающих объекты.

ActiveCell

ActiveWindow.ActiveCell Application.ActiveWindow.ActiveCell

Событие представляет собой действие, распознаваемое объектом (например, щелчок мышью или нажатие клавиши), для которого можно запрограммировать отклик. События возникают в результате действий пользователя или программы, или же они могут быть вызваны системой.

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



2. Структура редактора VBA

Редактор VBA активизируется командой Сервис/Макрос/Редактор Visual Basic или нажатием кнопки Редактор Visual Basic

панели инструментов Visual Basic. Возвратиться из редактора VBA в рабочую книгу можно нажатием кнопки Вид Microsoft Excel или нажатием соответствующей кнопки на панели задач. Интерфейс VBA состоит из следующих основных компонентов: окна проекта, окна свойств, окна редактирования кода, окна форм, меню и панели инструментов.

2.1. Окно проекта

Окно проекта в редакторе VBA активизируется выбором команды Вид/Окно проекта или нажатием кнопки Окно проекта. В окне проекта представлена иерархическая структура файлов форм и модулей текущего проекта (рис. 2.1).

ЯРайя Правка Бид Вставка Voptar Огяадка Запаек £врвис Дкио 2 I

Проект - VBAProwct Sl

шт\\В ]

VBAProiect (Книга!)

- Microsoft Excel Объекты Q ThbWorkbook Q Лист! (Лист!) Q Листа (Лист2) Q ЛистЗ (ЛистЗ)

Свойства - Лист 1 £i

Лист1 Worksheet 3

По алфавиту по категориям

Лист!

CHsplayPageBreaks False >Filter False EnaNeCafculation Troe EnableOutlinmg False EnaNePlvotTable False EnableSelection 0 - xINoRestrictrons Name Лист!

ScrollArea

StandardWidth 8,43

Visible -1 - xlSheetVisible

I-i Mi I* I И И I ? AssistBar 99

Рис. 2.1. Иерархическая структура файлов форм и модулей текущего проекта



дайя Правка вид вставка «формат отладка Запуск серемс окно 2

[SS \!а - Н U 1 В М I I ► ii I fei eg W I 5) I строка 1. стоябен 1 "

Рис. 2.2. Окно для редактирования кода

В проекте автоматически создается модуль для каждого рабочего листа и для всей книги. Кроме того, модули создаются для каждой пользовательской формы, макросов и классов. По своему назначению модули делятся на два типа: модули объектов и стандартные. К стандартным модулям относятся те, которые содержат макросы. Такие модули добавляются в проект командой Вставка/Модуль. К модулям объектов относятся модули, связанные с рабочей книгой, рабочими листами, формами, и модули класса. Формы создаются командой Вставка/User-Form, а модули класса- командой Вставка/Модуль класса. По мере создания, добавления и удаления файлов из проекта эти изменения отображаются в окне проекта.

Удаление файла из окна проекта производится выбором значка файла с последующим выполнением команды Файл/Удалить. В окне проекта выводится проект всех открытых рабочих книг. Это позволяет легко копировать формы и коды из одного проекта в другой, что убыстряет процесс создания новых приложений. Перемещение указателя на значок файла в окне проекта и выполнение двойного щелчка кнопкой мыши открывает окно редактора кода (рис. 2.2) для соответствующего модуля.

шшшшшшшш



0 1 [ 2 ] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57