
- •Программирование в среде Microsoft Office 2000
- •1. Основные сведения о vba
- •1.2. Макрорекордер в Office 2000
- •2.Основные сведения о программировании на vba
- •2.1. Алфавит и лексика языка vba
- •2.2.Правила записи текста программы на vba.
- •2.4. Данные в vba
- •2.4.1. Типы данных в vba
- •Т ипы данных в vba
- •Встроенные типы данных показаны в таблице 2.1.
- •2.4.2.Объявление переменных и констант простых типов
- •2.4.3. Массивы
- •2.5.Использование стандартных диалоговых окон для организации ввода-вывода данных
- •2.5.1.Функция MsgBox
- •2.5.2.Функция InputBox
- •2.6. Управляющие конструкции vba
- •2.6.1.Условный оператор if
- •2.6.2.Оператор выбора Select Case
- •2.6.3.Оператор цикла For … Next
- •2.6.4.Оператор цикла While…Wend
- •2.6.5.Оператор цикла Do…Loop
- •2.6.6. Оператор перехода GoTo
- •2.7. Основные сведения об объектах
- •2.7.1.Основные понятия объектно-ориентированного программирования.
- •2.7.2. Особенности использования объектов.
- •2.7.3. Коллекции в vba
- •2.7.4. Объект Application
- •2.7.5. Объекты Range и Selection
- •2.7.6. Оператор With для операций с одним объектом.
- •2.8.Обработка ошибок
- •3.Программирование в приложениях ms Office 2000.
- •3.1.Объекты excel, их свойства и методы.
- •3.1.1. Объектная модель excel
- •3.1.2. Коллекция Workbooks
- •3.1.3. Объект Workbook
- •3.1.4.Объект Worksheet
- •3.1.5.Объект Chart
- •3.1.6.Объекты Range и Selection
- •3.1.7. Пример решения задачи в excel на основе построения vba-кода.
- •3.2. Объекты word, их свойства и методы.
- •3.2.1. Модель объектов word
- •3.2.2.Объект Appication
- •3.2.3. Объект Document
- •3.2.4. Классы, задающие структуризацию текста документа.
- •3.2.5. Классы, составляющие части документа
- •3.2.5.1. Объект Range
- •3.2.5.2. Объект Selection
- •3.2.6. Классы, представляющие структуру документа
- •3.3. Автоматизация работы в Access на основе использования Access vba
- •3.3.1. Средства автоматизации работы в Access.
- •3.3.2. Объектная модель Microsoft Access
- •3.3.3.Особенности программирования в Access vba
- •3.3.3.1. Модель программирования Access
- •3.3.3.2. Особенности работы с объектами в Access vba.
- •3.3.4. Манипулирование в Access объектами Application
- •3.3.5. Объекты доступа к данным
- •3.3.5.1. Объекты dao
- •3.3.5.2. Объекты ado
- •3.3.6. Использование объектов доступа к данным в Access
- •3.3.6.1. Соединение с текущей базой данных
- •3.3.6.2. Открытие базы данных
- •3.3.6.3. Создание базы данных
- •3.3.6.4. Выполнение операций с записями
- •3.3.6.5. Перемещение по набору записей
- •3.3.6.6. Поиск записей в объектах Recordset
- •3.3.7. Пример решения задачи в Access на основе построения vba-кода
- •3.4.Совместная работа приложений Microsoft Office 2000
- •4.Список рекомендуемой литературы
1.2. Макрорекордер в Office 2000
В большинстве случаев можно записать свои действия в виде макроса, а затем просто воспроизвести этот макрос, даже не смотря на сгенерированный текст программы. Средство записи макросов EXCEL помогает преобразовать действия пользователя в текст программы на VBA. Активизировать средство записи макросов: Сервис/Макрос/Начать запись.
В диалоговое окно «Запись макроса» вводятся:
-имя макроса (по умолчанию Макрос1, Макрос2, и так далее);
-сочетание клавиш (комбинация клавиш для выполнения макроса);
-место хранения макроса (текущая рабочая книга, личная книга, новая рабочая книга);
-описание макроса (дата и имя пользователя). Для окончания записи макроса выбрать команду: Сервис/Макрос/Остановить запись или щелкнуть кнопку «Остановка записи» на панели инструментов «Остановка записи».
В результате такой записи действий получится новая процедура-подпрограмма. Просмотреть текст макроса можно в редакторе Visual Basic (Visual Basic Edititor,VBE). Для активизации редактора можно выбрать команду Сервис/Макрос/Редактор Visual Basic.
Текст записанного макроса хранится в модуле Модуль1 в текущей рабочей книге. Для запуска (тестирования) макроса необходимо вернуться в EXCEL (щелчком по кнопке View MS EXCEL), а затем выполнить команду
Сервис/Макрос/Макросы и в диалоговом окне «Макрос» выбрать имя и нажать кнопку «Выполнить».
В EXCEL существует возможность абсолютной и относительной записи макросов.
Обычно при записи макроса EXCEL сохраняет точные адреса ячеек, которые были выбраны для работы, т.е. выполняет абсолютную запись. Например, если был выбран диапазон B1:B10, то в текст макроса будет записано: Range(“B1:B10”).Select
При вызове данного макроса всегда будут выбираться именно указанные ячейки, независимо от расположения текущей ячейки.
Для перехода из абсолютного в относительный режим записи надо щелкнуть кнопку «Относительная ссылка» на панели инструментов «Остановка записи». В этом режиме выбор диапазона ячеек будет зависеть от расположения активной ячейки.
Например, если при записи макроса в относительном режиме активной является A1, то операция выбора ячеек B1:B10 приведет к записи следующего оператора:
ActiveCell.Offset(0,1).Range(“A1:A10”).Select
(от активной ячейки переместиться на 0 строк вниз на 1 столбец вправо и считать, что это A1). Относительно нового положения выбрать диапазон A1:A10. Макрос, записанный в относительном режиме, в качестве отправной точки использует активную ячейку, а затем выбирает диапазон относительно этой ячейки. Для возврата в режим абсолютной записи нужно снова щелкнуть по кнопке «Относительная ссылка».
Макрос может быть помещен:
в личную книгу макросов PERSONAL.XLS в папке XLSTART;
в текущую рабочую книгу;
в новую рабочую книгу.
Макросы, занесенные в текущую или новую рабочую книгу, могут быть выполнены, если эти книги загружены. Макросы из личной книги макросов доступны всегда. Эта книга загружается при запуске EXCEL и обычно скрыта. Чтобы сделать ее видимой, нужно выполнить команду Окно/Отобразить.