- •Программирование в среде 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.Список рекомендуемой литературы
3.3.3.2. Особенности работы с объектами в Access vba.
Перед каждой операцией работы с объектом необходимо применить ссылку на объект.
Один из способов ссылки на объект состоит в том, чтобы, начав с верхнего объекта иерархии, указать маршрут к целевому объекту (записав имена всех объектов и совокупностей на пути к нему). Объекты разделяются восклицательным знаком и точкой.
Восклицательный знак применяется при переходе от совокупности к одному из ее членов:
имя_совокупности!имя_объекта
например:
Forms!formname
Точка используется при переходе от объекта к одной из совокупностей:
имя_объекта.имя_совокупности
например:
Forms!formname.Controls
Forms!formname.Controls!controlname
Если имя объекта содержит пробелы, его нужно заключить в квадратные скобки:
Forms!Switchboard
Reports![Expense Report]
Для отделения названия характеристики от имени объекта используется операция точки:
Forms![Expense Categories].RecordSource
Access предусматривает способ уникальной идентификации активной формы, отчета, элемента управления и элемента, который был активным последним, без применения специальных имен, присваиваемых объектам. Это необходимо для создания объектов, повторно используемых в приложении. Для идентификации активного объекта применяются характеристики объекта Screen.
Например, указание характеристики в активной форме:
Screen.ActiveForm.RecordSource
ссылка на активный элемент управления в активной форме:
Screen.ActiveControl
синтаксис ссылки на поле в таблице или запросе зависит от того, относится ли таблица или запрос к базовому источнику записей открытой формы.
Ссылка на поле в источнике записей формы имеет синтаксис:
Forms!имя_формы!имя_поля
Ссылка на поле в таблице или запросе основана на применении синтаксиса:
имя_таблицы.Fields!имя_поля или имя_таблицы!имя_поля
имя_запроса.Fields!имя_поля или имя_запроса!имя_поля
В программировании на VBA переменная - это временная область памяти, содержащая значение или используемая для ссылки на объект. Такой области присваивается имя.
В VBA объект можно рассматривать как совокупность характеристик и методов. Процедура VBA способна непосредственно считывать и изменять характеристики, а также манипулировать объектом, выполняя его методы.
При работе с характеристиками в VBA доступны два действия:
изменение значения характеристики, т.е. ее установка
считывание значения характеристики, т.е. ее получение.
При установке значения характеристики ей присваивается значение:
объект.имя_характеристики=значение
или
объект.имя_характеристики<значение
При получении характеристики считывается ее текущее значение. Для хранения результата обычно используется переменная.
Если значение является текстовым, результат можно присвоить переменной в операции присваивания:
переменная=объект.имя_характеристики
Если характеристика представляет собой объект, то ссылка на объект присваивается объектной переменной:
Set переменная=объект.имя_характеристики
Чтобы задать объекту выполнение одного из методов, достаточно вызвать данный метод, используя ссылку на объект и на имя метода, разделенные операцией точки:
объект.метод
Большинство методов не возвращает результат, но есть и такие, которые возвращают текстовые значения и даже объекты.
Если метод возвращает текстовое значение, то для его сохранения в переменной можно использовать оператор присваивания:
переменная=объект.метод
Если метод возвращает объект, для присваивания результата объектной переменной используется оператор Set:
Set переменная=объект.метод