VBA позволяет существенно расширить возможности EXCEL. С помощью VBA можно легко и быстро создавать различные приложения, даже не являясь специалистом в области программирования. VBA имеет графическую инструментальную среду, позволяющую создавать экранные формы и управляющие элементы. С его помощью можно создавать свои собственные функции для Excel, вызываемые мастером функций, разрабатывать макросы, создавать собственные меню и многое другое.
Редактор VBA активизируется из Excel одним из следующих способов:
§ командой меню Сервис → Макрос→ Редактор Visual Basic;
§ комбинацией клавиш Alt+ F11;
§ кнопкой панели инструментов Visual Basic .
Вернуться из редактора VBA в приложение можно по комбинации клавиш Alt+ F11, по команде View→Microsoft Excel или через панель задач.
Знакомство с VBA мы рекомендуем начинать с создания макросов, когда сама программа Excel записывает выполняемые команды и генерирует программный код в виде процедуры. Между макросом, который создается в процессе записи, и VBA-программой, код которой мы вводим вручную, принципиальной разницы нет. В дальнейшем процедуру макроса можно модифицировать, добавляя новые команды или удаляя лишние. Тщательный разбор команд поможет освоить принципы языка VBA, а практическое написание программ значительно ускорит процесс изучения (подробнее о макросах см.в разделе Макросы).
Структура приложения Excel
При открытии рабочей книги автоматически активизируется объект Application, определяющий само приложение, и все встроенные в него объекты. Этот объект находится на вершине иерархической структуры. Приложение включает «Рабочие книги» (Workbooks) и различные системы надстройки. В свою очередь, рабочие книги содержат «Рабочие листы» (Sheets) и другие объекты. Наконец, «Рабочие листы» включают самый важный для нас объект – «Диапазон ячеек» (Range).
Так так приложение разрабатывается на базе существующих таблиц, все результаты действий должны быть связаны с ячейками рабочего листа. Специального объекта ячейки в Excel не существует, в данном случае объект Range используется и для одной единственной ячейки и для интервала ячеек.
Редактор Visual Basic Application
Редактор в визуальном режиме позволяет просмотреть структурный состав объектов, обеспечивает добавление новых и редактирование существующих элементов, в том числе и макросов.
Главное окно редактора (рис.7) включает следующие элементы: окно проекта (Project), окно формы (UserForm), окно программного кода (Code), окно просмотра (Object Browser).
Рис. 7. Главное окно редактора Visual Basic