- •Введение
- •1. Создание базы данных средствами ms sql server
- •1.1. Структура базы данных
- •1.2. Создание баз данных в ms sql Server 2000
- •1.3. Создание таблиц базы данных в ms sql Server 2000
- •1.4. Типы данных в ms sql Server 2000
- •1.5. Управление пользователями
- •1.6. Способы обмена данными между Access и sql Server через odbc
- •1.7. Определение внешних источников данных в odbc
- •1.8. Связь с таблицами баз данных sql Server
- •1.9. Создание базы данных, таблиц, схемы данных средствами ms sql Server 2005
- •1.10. Обеспечение доступа к базе данных средствами ms sql Server 2005
- •1.11. Перенос базы данных на другой компьютер
- •1.12. Создание источника данных odbc и взаимодействие с приложением Access
- •2. Создание таблиц и схемы данных средствами субд access
- •2.1. Субд Microsoft Access
- •2.2. Объекты Access
- •Создание базы данных в Access 2003
- •Режимы создания таблиц базы данных в Access 2003
- •2.5. Создание таблицы в режиме Конструктор
- •2.6. Редактирование структуры таблицы
- •2.7. Создание и редактирование схемы данных
- •2.8. Ввод и редактирование данных
- •2.9. Создание базы данных, таблиц и схемы данных в Access 2007
- •Формы данных
- •3.1. Общие сведения о форме
- •3.2. Способы создания форм
- •3.3. Области и элементы формы в режиме Конструктор
- •3.4. Кнопки панели элементов
- •3.5. Создание однотабличной формы в режиме автоформы
- •3.6. Редактирование формы в режиме Конструктор
- •3.7. Создание составной формы
- •3.8. Ограничения доступа к данным через форму
- •3.9. Вычисления в форме
- •3.10. Создание форм в Access 2007
- •Запросы
- •Основы разработки запросов
- •Типы запросов
- •Создание запросов на выборку данных в режиме
- •Создание вычисляемого поля в запросе
- •4.5. Создание запроса с групповыми вычислениями
- •4.6. Создание параметрических запросов
- •4.7. Создание перекрестных запросов
- •4.8. Запрос на создание новой таблицы
- •4.9. Запрос на добавление записей
- •4.10. Запрос на удаление записей
- •4.11. Запрос на обновление записей
- •4.12. Создание запросов в Access 2007
- •5.1. Способы создания отчетов
- •Типы элементов управления
- •Создание надписей в отчете
- •Создание связных элементов (полей)
- •Создание вычисляемых элементов
- •Группирование записей в отчете
- •Создание отчета с помощью мастера отчетов
- •Создание отчета в режиме Конструктор
- •6. Заполнение полосы Верхний колонтитул.
- •7. Заполнение полосы Заголовок группы.
- •8. Заполнение полосы Область данных.
- •9. Заполнение полосы Примечание группы.
- •10. Заполнение полосы Нижний колонтитул.
- •11. Заполнение полосы Примечание отчета.
- •Экзаменационная ведомость Факультет Шифр группы Дисциплина
- •Списки групп
- •5.9. Создание отчетов в Access 2007
- •Создание макросов
- •6.1. Основы создания макросов
- •6.2. Формирование макрокоманд
- •6.3. Создание группы макросов
- •6.4. Использование условий в макросе
- •6.5. Создание макросов с использованием ссылок на объекты
- •6.6. Организация выполнения макроса
- •6.7. Выполнение макроса с наступлением события
- •6.8. Создание кнопки запуска макроса в форме
- •6.9. Пример создания макроса для решения задачи, использующей запросы
- •6.10. Пример создания макроса, работающего с данными нескольких объектов
- •Создание модулей
- •Общие сведения о языке vba
- •Модель объектов приложения Access
- •Модель объектов доступа к данным
- •Описание переменных
- •Операторы присваивания
- •Описание констант
- •Операторы управления выполнением программ
- •Операторы организации цикла:
- •Использование объекта Recordset
- •Выполнение процедур vba
- •7.10. Примеры модулей
- •Пример 3. Рассчитать суммарную поставку по каждому индексу товара в таблице поставка.
- •Пример 4. Создать новую таблицу Продукты из двух полей Индекс товара и Название, обеспечить ввод данных в эту таблицу.
- •Для решения задачи необходимо создать форму Поставщики_Города нижеследующего вида и связать с ней процедуру.
- •Пример 6. Открыть таблицу Товары, прочесть и вывести на экран все записи.
- •Пример 7. Выбор записей из таблицы Поставка для товара с кодом 123.
- •Пример 8. Выбор данных из связанных таблиц Товары и Поставка, связанных по индексу товара.
- •Пример 9. Выбор данных из трех связанных таблиц Товары, Поставщики и Поставка.
- •Пример 10. Поиск записей по наименованию товара (не ключевое поле) в таблице Товары и вывод найденных записей.
- •Пример 11. Поиск записей по дате поступления (не ключевое поле) в таблице Поставка и вывод найденных записей.
- •Пример 12. Поиск записей по индексу товара в таблице Товары и замена поля Розничная цена.
- •Пример 13. Поиск записей в таблице Товары для записей, где поле Розничная цена меньше заданной.
- •Управление приложением пользователя
- •Создание панели управления приложением с помощью диспетчера
- •Добавление рисунка в кнопочную форму
- •Создание кнопочной формы в режиме конструктора
- •Запуск Access с открытием приложения пользователя
- •Задания по разработке баз данных и приложений для работы с ними
- •Продажа бензина за ________________
- •6. Создать макросы
- •7. Создать модули
- •8. Создать панель управления приложением
- •4. Создать запросы.
- •Периодичность
- •Справка о продаже билетов
- •6. Создать макросы
- •7. Создать модули
- •8. Создать панель управления приложением
- •4. Создать запросы.
- •6. Создать макросы.
- •7. Создать модули.
- •8. Создать панель управления приложением.
- •4. Создать запросы.
- •Расписание работы
- •Список сотрудников
- •Список больных фио врача Дата посещения
- •6. Создать макросы
- •7. Создать модули
- •8. Создать панель управления приложением
- •Итоговая ведомость замен
- •6. Создать макросы
- •7. Создать модули
- •8. Создать панель управления приложением
- •4. Создать запросы.
- •5. Создать отчеты.
- •Факультет __________ Группа ______
- •Выдача книг
- •6. Создать макросы.
- •7. Создать модули.
- •8. Создать панель управления приложением.
- •4. Создать запросы.
- •5. Создать отчеты.
- •Список автомобилей
- •Список водителей
- •6. Создать макросы.
- •7. Создать модули.
- •8. Создать панель управления приложением
- •4. Создать запросы.
- •5. Создать отчеты.
- •Транзисторы
- •Справка о продаже транзисторов
- •6. Создать макросы.
- •7. Создать модули.
- •8. Создать панель управления приложением.
- •4. Создать запросы.
- •5. Создать отчеты.
- •Выпрямительные диоды
- •Закупка приборов
- •6. Создать макросы.
- •7. Создать модули.
- •8. Создать панель управления приложением.
- •4. Создать запросы.
- •5. Создать отчеты.
- •Сводная ведомость, дата
- •Справка о поставках мебели
- •6. Создать макросы.
- •7. Создать модули.
- •8. Создать панель управления приложением.
- •Библиографический список
- •Оглавление
6.5. Создание макросов с использованием ссылок на объекты
При программировании задач на языке макросов для обработки данных необходимо ссылаться на объекты Access, элементы управления и их свойства, чтобы оперировать значениями полей, элементов управления или свойствами. Это ссылки на такие объекты, как таблицы, формы, отчеты и их элементы и свойства.
Ссылки на объекты. Ссылаться на объекты можно по имени, но нужно учесть, что в Access объекты объединяются в семейства. Таблицы объединены в семейство Таблицы (Tables), формы – в семейство Формы (Forms), отчеты – в семейство Отчеты (Reports). Поэтому ссылка на объект включает имя семейства и отделенное от него восклицательным знаком имя объекта. Если имя включает пробелы или специальные символы, его следует заключить в квадратные скобки. Например, для ссылки на форму надо записать: Forms![СТУДЕНТЫ].
Ссылки на свойство объекта. В ссылке на свойство объекта вслед за именем объекта через точку записывается имя свойства. Перечень свойств формы или отчета можно посмотреть, открыв объект в режиме конструктора и вызвав окно его свойств. Многие свойства названы несколькими словами с пробелами между ними. Истинное имя свойства таких пробелов не имеет, поэтому в ссылках оно записывается без них. Например, имя свойства «Область выделения» (Record Selectors) должно записываться «ОбластьВыделения» (RecordSelectors). Для ссылки на свойство формы надо записывать:
Forms![СТУДЕНТЫ].RecordSelectors
В русифицированной версии Access в строках окна свойств указаны русские имена свойств. При вводе выражений в аргументах макрокоманд следует использовать английские имена функций и свойств.
Ссылки на элемент управления и его свойство. В ссылке на элемент управления вслед за именем объекта через восклицательный знак записывается имя элемента управления, заключенное в квадратные скобки.
Чтобы сослаться на свойство элемента управления, следует дополнить ссылку на элемент управления через точку именем свойства. Перечень свойств элемента управления можно посмотреть, открыв объект в режиме конструктора, выбрав этот элемент и вызвав окно его свойств. Различные типы элементов управления имеют различные свойства.
Например, в форме Студенты ссылку на элемент управления Надпись (Caption) с именем «ФИО Надпись» надо записать
Forms![Студенты]![ФИО Надпись]
Имя элемента управления записывается в его свойстве, которое можно видеть в окне свойств на вкладке Другие в строке Имя. В форме Студенты для элемента управления Надпись с именем «ФИО Надпись» отображается его значение «Фамилия студента».
В ссылке на свойство с именем ВыводНаЭкран, которое соответствует строке Вывод на экран (Visible) на вкладке Макет, надо использовать английский вариант этого имени Visible:
Forms![СТУДЕНТЫ]![ФИОНадпись].Visible
Ссылка на подчиненную форму или отчет. Ссылка на подчиненную форму (или отчет) записывается как ссылка на элемент управления формы (отчета), включающей данную форму (отчет). Форма после внедрения в другую форму содержится в элементе управления Подчиненная форма, отчет – в элементе управления Подчиненный отчет. Элемент управления Подчиненная форма/отчет имеет специальное свойство Форма или, соответственно, Отчет. Это свойство позволяет ссылаться на элемент управления подчиненных объектов и их свойств. Таким образом, полная ссылка на свойство элемента управления в подчиненной форме имеет в общем виде следующую структуру:
Forms![Имя формы]![Элемент Подчиненная форма].Form![Элемент подчиненной формы].Имя свойства
При ссылках на элемент управления в подчиненной форме или подчиненном отчете не обязательно использовать полный идентификатор формы или отчета с указанием свойств Форма или Отчет.
Например, следующий идентификатор определяет ссылку на элемент управления – поле АДРЕС в подчиненной форме Студенты, встроенной в форму Группы:
Forms![Группы]![Студенты]![АДРЕС]
При ссылках на элемент управления в текущей форме или отчете нет необходимости указывать идентификатор формы или отчета.
Создание ссылок построителем выражений. Ссылки на объекты, элементы управления и свойства удобно создавать с помощью построителя выражений.
Чтобы вызвать построителя выражений, надо выбрать в окне макроса строку аргумента макрокоманды, в которую требуется ввести выражение и нажать появившуюся кнопку построителя. В открывшемся окне Построитель выражений надо ввести или вставить элементы выражения в поле записи выражений.
Для того, чтобы вставить ссылку в поле записи выражений, выделяют в нижней половине окна построителя элементы, определяющие эту ссылку, и дважды нажимают кнопку мыши или нажимают кнопку Вставить.
В левом поле в нижней половине окна построителя надо раскрыть двойным нажатием кнопки мыши папку, содержащую объекты или элементы нужного типа (папку – запросы, формы, таблицы и т.д.). Затем выбрать папку необходимого объекта (конкретный запрос, форму, таблицу и т.д.). В среднем поле выбрать нужный элемент (например, конкретное поле), а в правом отметить Значение (Value), если формируется ссылка на элемент, или нужное свойство, если формируется ссылка на свойство. Для вставки ссылки в поле выражений надо дважды нажать кнопку мыши или нажать кнопку Вставить.
Access скопирует созданное выражение в ту строку, из которой был вызван построитель выражений. Если в данной строке уже содержится выражение, то оно будет заменено на новое. Если строка аргумента, из которой вызывается построитель выражений, уже содержит выражение, то оно автоматически копируется в поле выражений, где может быть отредактировано.
Если нужный объект или свойство не появляются в нижней части окна построителя выражений, это означает, что их нельзя использовать в том контексте, в котором был вызван построитель выражений.
