Разработка VBA-приложений в Excel
VBA_Excel
Система управления электронными таблицами Excel зарекомендовала себя как чрезвычайно удачное офисное приложение. Немалую роль в этом сыграла ее легкая расширяемость с помощью встроенного в MS Office языка программирования VBA, позволяющего создавать полноценные пользовательские приложения.
Данный пятидневный курс знакомит слушателей как с особенностями самого языка программирования VBA (в большей части унаследованными им от Visual Basic 6), так с объектной моделью самого Excel. Подробно рассматриваются свойства таких встроенных в Excel объектов как: Application, Workbook, Worksheet, Range и др. Отдельное внимание в курсе уделяется вопросам автоматизации составления диаграмм и сводных таблиц, а также вопросам подключения к удаленным источникам данных.
Аудитория
Курс предназначен для опытных пользователей Excel, знакомых с языком MS Visual Basic и основами объектно-ориентрованного программирования.
Предварительный уровень подготовки
• знакомство с основами разработки электронных таблиц в MS Excel: размещением и вычислением формул, встроенными функциями, записью макросов, созданием диаграмм;
• знакомство с основами программирования с использованием объектов: объектами, свойствами, коллекциями, методами и событиями;
• знакомство с одним из современных языков программирования, желательно, VB 6.0
Результат обучения
Слушатели овладеют, возможно, новым для себя диалектом языка программирования Visual Basic, называемым VBA, и средой разработки приложений, интегрированной в MS Excel, и получат навыки по разработке несложных приложений. Дополнительно рассматриваются вопросы эффективного использования свойств и методов основных представителей объектной модели Excel, проектированию надстроек и клиентов удаленных баз данных, автоматизации создания сводных таблиц и диаграмм.
Программа курса
Модуль 1: Введение. Приложения, управляющие электронными таблицами
Даются определения основных понятий: «электронная таблица» и «приложение, управляющее электронной таблицей», дается краткая классификация электронных таблиц. Отдельное внимание уделяется этапам моделирования приложения, управляющего электронными таблицами
Модуль 2: Знакомство со средой разработки VBE
Знакомит слушателей с интегрированной средой разработки VBA-приложений, встроенной в MS Excel
- Структура VBA-проекта
- Частные и общие модули
- Модули классов
- Пользовательские диалоговые формы
- Отладка VBA-приложения
Лабораторная работа: создание первого VBA-проекта
Модуль 3: Структура языка VBA: процедуры и функции
Содержит информацию о синтаксических особенностях языка VBA, как языка процедурного программирования
- Описание и вызов процедур и функций
- Передача параметров
- Использование компонентов – источников данных
- Обзор некоторых полезных встроенных объектов и функций
- Структурная обработка исключительных ситуаций
Лабораторная работа: описание и вызов процедур и функций
Модуль 4: Элементы теории объектно-ориентированного программирования и ее реализации в языке VBA
посвящен обсуждению основ программирования с использованием объектов, разбираются понятия «класса», «метода», «свойства», «события». Отдельное внимание уделяется реализации отдельных элементов ООП средствами языка VBA
- Понятия объекта и класса
- Конструкторы, свойства, методы и события, как неотъемлемые атрибуты объекта
- Объекты, встроенные в проект VBA, и классы, созданные разработчиком
- Создание и использование объектов, чтение и установка свойств, вызов методов, генерация и обработка событий.
- Параметризованные свойства и коллекции
- Использование встроенных и создание пользовательских диалоговых форм
Лабораторная работа: реализация основ объектно-ориентированного программирования на VBA
Модуль 5: Элементы объектной модели MS Excel
посвящен обсуждению характеристик основных представителей объектной модели MS Excel: Application, Workbook, Worksheet, Range
- Прогулка по объектной модели
- Application: основные свойства, коллекции и методы
- Объект Workbook и коллекция Workbooks. Управление рабочими книгами.
- Объект Worksheet и коллекция Sheets
- «Самый главный» представитель объектной модели – объект Range, навигация по рабочему листу, настройка параметров и значений ячеек
Лабораторная работа: взаимодействие с основными объектами MS Excel в приложении на VBA
Модуль 6: Эффективные приемы работы с таблицами и диапазонами в программах на VBA
Знакомит слушателей с методиками решения типовых задач, возникающих при работе с электронной таблицей
- Копирование и вставка
- Поиск и замена
- Фильтрация и сортировка данных на листе
Лабораторная работа: эффективное решение типовых задач управления электронной таблицей
Модуль 7: Надстройки
Знакомит слушателей с понятием «надстройка». Разбираются вопросы создания, отладки и использования собственных надстроек
- Надстройка, как специализированный документ MS Excel
- Создание собственной надстройки
- Использование процедур и функций, размещенных в надстройке, в других VBA-проектах
Лабораторная работа: создание и использование VBA-надстроек
Модуль 8: Взаимодействие с внешними компонентами и программами
Рано или поздно возможностей, заложенных в сам язык VBA и объектную модель Excel начинает не хватать и возникает необходимость использования внешних библиотек или программ. Язык VBA предоставляет для этого весь необходимый инструментарий, основные характеристики которого описываются в данной главе.
- Понятие COM-объекта, использование COM-объектов в VBA-проектах
- Использование элементов ActiveX для создания пользовательских диалоговых форм
- Импорт функций из внешних dll библиотек
- Запуск на исполнение внешних программ
Модуль 9: Работа с удаленными источниками данных
Представляет собой краткий обзор средств, предназначенных для подключения к удаленным источникам данных: SQL Server, Access и т.п.
- Обзор объектной модели ADO
- Описание методики создания несложного VBA-приложения, предназначенного для чтения и модификации данных, полученных с удаленного источника
Лабораторная работа: подключение к удаленному источнику данных
Модуль 10: Автоматизация создания сводных таблиц и диаграмм
Содержит обзор средств, предоставляемых MS Excel и VBA для создания сводных таблиц и диаграмм
- Понятие сводной таблицы
- Создание сводной таблицы с помощью мастера, анализ и модификация полученного в результате макроса
- Автоматизация создания диаграммы
Лабораторная работа: создание сводных таблиц и диаграмм