
- •Что такое Visual Basic for Applications
- •Автоматизация среды Excel
- •Запись простого макроса
- •Выполнение макросов
- •Просмотр кода макроса
- •Редактирование кода макроса
- •Ограниченность макросов
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Назначение макросам комбинаций клавиш
- •Где хранить макросы
- •Создание личной книги макросов
- •Сохранение макросов в личной книге макросов
- •Выполнение макросов из личной книги макросов
- •Редактирование макросов в личной книге макросов
- •Удаление макросов из личной книги макросов
- •Назначение макросов командным кнопкам
- •Назначение макроса графическим изображениям
- •Назначение макросов кнопкам панелей инструментов
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Введение в процесс разработки приложений
- •Кто будет использовать приложение
- •Откуда будут поступать данные для приложения
- •Где и как будут храниться данные, полученные с помощью приложения
- •Как данные будут обрабатываться приложением
- •Вид выходных данных
- •Типы элементов управления
- •Вставка элементов управления в рабочий лист
- •Форматирование элементов управления
- •Имена элементов управления
- •Экранные формы
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Модуль: дом для кода vba
- •Обзор процедур
- •Создание процедур
- •Выполнение процедуры
- •Сохранение изменений в модуле
- •Переменные
- •Типы данных
- •Объявление переменных
- •Соглашения об именах переменных
- •Массивы
- •Присвоение значений переменным
- •Использование констант
- •Область видимости переменных и констант
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Функция MsgBox
- •Функция InputBox
- •Метод InputBox
- •Именование аргументов
- •Объединение текстовых строк
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Управление выполнением приложения
- •Оператор If
- •Оператор Select Case
- •Использование встроенных диалоговых окон Excel
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Оператор For…Next
- •Оператор Do... Loop
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Что такое объект
- •Объекты, свойства и методы
- •Объектная модель Excel
- •Пять наиболее часто используемых объектов
- •Как понимать иерархию объектной модели
- •Ссылка на объекты в коде vba
- •Работа с объектами
- •Задание свойств объекта
- •Использование методов
- •Справочная информация о свойствах и методах
- •Переменные-объекты
- •1: Sub ПримерПеремОбъекта()
- •Коллекции
- •Метод Add
- •Свойство Count
- •1: Sub КоличРабЛистов()
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Объект Application
- •Использование встроенных функций Excel
- •Свойства и методы объекта Application
- •Объект Workbook
- •Объект Worksheet
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Описание объекта Range
- •Свойства объекта Range
- •Методы объекта Range
- •Использование оператора With
- •Оператор For Each
- •Использование объекта Range
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Панели инструментов
- •Просмотр кода
- •Использование справочной системы
- •Просмотр объектов
- •Параметры редактора Visual Basic
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Тестирование и отладка как этап разработки приложений
- •Отладка
- •Режим останова
- •Использование окна Immediate
- •Просмотр значений в окне Immediate
- •Пошаговое выполнение программ
- •Наблюдение за переменными
- •Исправление ошибок
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Понятие об обработке ошибок
- •Перехват ошибок
- •Написание процедуры обработки ошибся
- •Выход из обработчика ошибок
- •Пример обработчика ошибок
- •Централизованный обработчик ошибок
- •Вопрос и ответы
- •Практикум
- •Упражнение
- •Вставка экранных форм в приложения
- •Свойства экранной формы
- •Выполнение экранной формы
- •Вставка элементов управления в экранную форму
- •Свойства элементов управления
- •Свойства командных кнопок
- •Свойства переключателей
- •Блокировка элементов управления
- •Экранные подсказки к элементам управления
- •Задание порядка обхода элементов формы
- •Назначение быстрых клавиш элементам формы
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Инициализация значений экранной формы
- •Вызов экранной формы
- •Управление поведением формы
- •Проверка вводимых данных
- •Сохранение данных, введенных в форму
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Настройка панелей инструментов
- •Создание панелей инструментов
- •Процедуры, управляющие панелями инструментов
- •Создание панели инструментов
- •Удаление панели инструментов
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Способы изменения меню
- •Программная работа с меню
- •Добавление пунктов и команд меню
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Создание диаграмм
- •Запись макроса построения диаграмм
- •Код макроса
- •Изменение кода макроса
- •Усовершенствованная процедура построения диаграмм
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Работа со сводной таблицей
- •Основы сводных таблиц
- •Запись макроса для создания сводной таблицы
- •Исследование кода макроса
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Базы данных, доступные из Excel
- •Средства доступа к внешним данным
- •Использование ms Query
- •Код записанного макроса
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Что такое ado
- •Объекты доступа к базам данных
- •Использование ado
- •Создание ссылки на библиотеку ado
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Вставка полей в экранную форму
- •Перемещение по записям
- •Редактирование данных
- •Добавление средства поиска
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Что такое автоматизация
- •Основы автоматизации
- •Ссылка на библиотеку объектов приложения-сервера
- •Просмотр библиотеки объектов
- •Создание экземпляра приложения-сервера
- •Использование объектов Microsoft Word
- •Вопросы и ответы
- •Практикум
- •Упражнение
- •Автоматическое выполнение процедур
- •Процедуры, выполняемые при наступлении событий
- •Создание надстроек Excel
- •Упражнение
- •Приложение. Ответы Ответы к 1-му часу Тесты
- •Ответы ко 2-му часу Тесты
- •Ответы к 3-му часу Тесты
- •Ответы к 4-му часу Тесты
- •Упражнение
- •Ответы к 5-му часу Тесты
- •Упражнение
- •Ответы к 6-му часу Тесты
- •Упражнение
- •Ответы к 7-му часу Тесты
- •Упражнение
- •Ответы к 8-му часу Тесты
- •Упражнение
- •Ответы к 9-му часу Тесты
- •Упражнение
- •Ответы к 10-му часу Тесты
- •Упражнение
- •Ответы к 11-му часу Тесты
- •Упражнение
- •Ответы к 12-му часу Тесты
- •Упражнение
- •Ответы к 13-му часу Тесты
- •Упражнение
- •Ответы к 14-му часу Тесты
- •Ответы к 15-му часу Тесты
- •Упражнение
- •Ответы к 16-му часу Тесты
- •Упражнение
- •Ответы к 17-му часу Тесты
- •Упражнение
- •Ответы к 18-му часу Тесты
- •Упражнение
- •Ответы к 19-му часу Тесты
- •Упражнение
- •Ответы к 20-му часу Тесты
- •Упражнение
- •Ответы к 21-му часу Тесты
- •Упражнение
- •Ответы к 22-му часу Тесты
- •Упражнение
- •Ответы к 23-му часу Тесты
- •Упражнение
- •Ответы к 24-му часу Тесты
- •Упражнение
Редактирование макросов в личной книге макросов
Редактирование макросов из личной книги макросов имеет небольшое отличие от редактирования макросов из обычной рабочей книги. Поскольку личная книга макросов скрыта, вы должны сначала ее отобразить, а затем редактировать ее содержимое. Чтобы отобразить окно личной книги макросов и начать редактирование одного из ее макросов, сделайте следующее.
-
Выполните команду Окно > Отобразить. Появится диалоговое окно Вывод на экран скрытого окна книги (рис. 2.3).
Рис. 2.3. Отображение скрытого окна личной книги макросов - первый шаг в редактировании ее макросов
-
В диалоговом окне Вывод на экран скрытого окна книги выделите Personal.xls и щелкните на кнопке ОК. Отобразится окно личной книги макросов, ничем не отличающееся от окна обычной рабочей книги. Обратите внимание на строку заголовка окна, где должно присутствовать слово Personal.
-
Выполните команду Сервис > Макрос > Макросы. Появится диалоговое окно Макрос.
-
Выделите макрос ФорматТекст и щелкните на кнопке Изменить. Если вы попытаетесь редактировать макрос, не открывая личную книгу макросов, то появится окно с предупреждением о том, что невозможно изменить макрос в скрытой книге.
-
Сделайте необходимые изменения в макросе и закройте окно редактора Visual Basic.
Удаление макросов из личной книги макросов
Для того чтобы удалить макрос из личной книги макросов, сначала откройте ее, как описано в предыдущем разделе, а затем выполните следующее.
-
Выполните команду Сервис > Макрос > Макросы. Появится диалоговое окно Макрос.
-
Выделите макрос, подлежащий удалению, и щелкните на кнопке Удалить.
-
Появится окно, требующее подтверждения на удаление макроса. Щелкните на кнопке Да, и макрос будет удален.
-
Сохраните рабочую книгу.
-
Последнее, что вам осталось сделать - это скрыть личную книгу макросов. Для этого выполните команду Окно > Скрыть. Личная книга макросов будет скрыта.
Назначение макросов командным кнопкам
Одной из основных ваших целей как разработчика приложений должно быть создание легких в использовании интерфейсов для выполнения задач автоматизации. Самый простой путь реализации этой цели - использование командных кнопок непосредственно в рабочей книге. Вставить командную кнопку в рабочий лист можно с помощью панели инструментов Формы. Затем можно назначить ей любой макрос. После выполнения этой процедуры щелчок на вставленной командной кнопке будет вызывать на выполнение назначенный макрос.
В приведенном ниже примере вы создадите кнопку, назначите ей макрос и выполните этот макрос с помощью созданной кнопки. Для этого выполните следующие действия.
-
Откройте рабочую книгу Час1.
-
Выполните команду Вид > Панели инструментов > Формы. На экране отобразится панель инструментов Формы, как на рис. 2.4.
-
Щелкните на инструменте Кнопка панели инструментов Формы. Указатель мыши примет форму перекрестия.
-
Поместите указатель мыши в то место, где хотите разместить командную кнопку, нажмите и не отпускайте левую кнопку мыши. Перетащите указатель мыши для создания прямоугольника. Прямоугольник соответствует будущему размеру и положению создаваемой командной кнопки. Придав командной кнопке нужный размер, отпустите кнопку мыши. На рабочем листе появится кнопка и одновременно откроется диалоговое окно Назначить макрос объекту (рис. 2.5), предлагающее выбрать макрос для назначения его командной кнопке.
-
Выберите макрос БольшойШрифт и щелкните на кнопке ОК. Этот макрос будет назначен созданной кнопке.
-
Щелкните и выделите надпись Кнопка 1 на командной кнопке. Нажмите клавишу <Delete> для удаления этой надписи.
-
Введите текст новой надписи на кнопке, например Большой шрифт.
-
Щелкните где-либо вне кнопки, чтобы снять с нее выделение.
-
В ячейке А6 введите текущую дату и нажмите <Enter>.
-
Установите табличный курсор на ячейку А6 и щелкните на командной кнопке Большой шрифт. Должен выполниться одноименный макрос.
Рис. 2.4. Панель инструментов Формы содержит различные элементы управления, которые можно использовать для автоматизации задач
Рис. 2.5. Это диалоговое окно используется для назначения макроса командной кнопке
Как вы видите, использование командных кнопок - один из простых и эффективных способов создания интерфейса для выполнения задач автоматизации.