1219

Основы работы с СУБД MS Access

Лабораторная работа

Информатика, кибернетика и программирование

Редактирование таблиц, создание форм и запросов в СУБД MS Access. Изменение структуры таблиц. Редактирование таблиц, сортировка и фильтрация записей. Создание в Конструкторе (самый сложный). Использование макросов, обмен данными между СУБД MS Access и MS Excel, создание сетевых приложений.

Русский

2013-01-06

1.51 MB

329 чел.

Лабораторная работа №   (часть 1)

Основы работы с СУБД  MS Access

(Продолжительность занятия 4 академических часа)

Цель работы: Изучить порядок применения СУБД MS Access для создания реляционных таблиц.

Вопросы, изучаемые на занятии:

  1.  создание новой базы данных в MS Access 2007
  2.  создание таблиц баз данных;
  3.  установка связей между таблицами;
  4.  заполнение таблиц данными.

 

1. Создание новой базы данных в MS Access 2007

Действия, необходимые для создания новой пустой БД.

1. На странице Приступая к работе с Microsoft Office Access щелкните мышью пиктограмму Новая база данных. Справа появится боковая панель (рис. 1).

2. Введите имя файла.

Программа Access хранит всю информацию о БД в одном файле с расширением accdb (что означает БД Access). He соглашайтесь на имя, которое Access выбирает автоматически  (например, Databasel.accdb). Вместо него подберите что-нибудь более подходящее. В этом примере Ф.И.О. вашего преподавателя вполне подходит.

Названия файлов программы Access, могут включать комбинацию букв, пробелов, цифр, скобок, дефисов (-) и знаков подчеркивания (_). Как правило, лучше избегать применения других специальных символов, некоторые из них недопустимы.

Рис. 1-  Панель Новая БД

 

База данных   будет размещена в папке C:\Documents and Settings\Matt\My Documents.  Вы можете изменить имя файла, щелкнув кнопкой мыши в поле Имя файла (File Name), и выбрать другую папку для размещения, щелкнув кнопкой мыши пиктограмму папки.

3.  Выберите папку.

Как и в остальных программах пакета Office, в Access предполагается, что вы хотите хранить все созданные вами файлы в личной папке Мои документы (My Documents). Если это не так, щелкните кнопкой мыши пиктограмму папки для вывода на экран диалогового окна Файл новой базы данных (File New Database), перейдите в нужную папку (рис. 2) и щелкните мышью кнопку ОК.

Рис. 2. Диалоговое окно Файл новой базы данных

Это окно также дает возможность сохранить вашу БД в формате, применявшемся в предыдущих версиях программы Access (mdb). Для этого нужно выбрать в поле Тип файла (Save as type) вариант формата 2000 или 2002—2003- Если вы работаете под управлением ОС Windows Vista, то заметите, что у диалогового окна Файл новой базы данных совсем другой внешний вид, но те же самые параметры

4.   Щелкните мышью кнопку Создать в правом нижнем углу окна Access). Программа создаст файл вашей БД и затем выведет на экран лист данных, на котором вы сможете создать свою первую таблицу БД.

Как только вы создаете или открываете БД, окно Access немного меняется. В верхней части экрана появляется выразительная панель инструментов (лента), а слева - область переходов (navigation pane). В данный момент вы находитесь в центре управления, здесь вы будете выполнять все задачи, связанные с вашей БД (как показано на рис. 3).

Рис. 3 Меню с вкладкой Режим таблицы

Задание на разработку СУБД

Реализовать с применением пакета MS Access информационную систему с базой данных ИС_Учет_Успеваемости, содержащую три таблицы:  

1. Таблица «Кадры», содержит 7 полей, наименование полей и их тип:

КодСтудентаСчетчик;

Фамилия, Имя, Отчество, Гражданство – Текстовые;

ДатаРожденияДата/время;

НомУчГруппы – Текстовый. 

2. Таблица «Учебный план», содержит 4 поля, наименование полей и их тип:

КодДисциплиныСчетчик;

Наименование, ПреподавательТекстовые;

КолЧасов – Числовой.

3. Таблица «Электронный журнал», содержит 6 полей, наименование полей и их тип:

КодСчетчик;

ДатаДата/время;

Студент – смешанный тип данных (содержит поля КодСтудента и Фамилия из таблицы Кадры, создается с помощью Мастера подстановок );

Дисциплина – смешанный тип данных (содержит поля КодДисциплин, Наименование из таблицы Учебный план, создается с помощью Мастера подстановок);

ВидЗанятия – Текстовый;

ОценкаЧисловой.

Ниже приведена подробная методика создания данного приложения.

2. Разработка таблиц

1.1. Разработка базовых таблиц. 

В окне ИС_Учет_Успеваемости: база данных откройте созданную вами базу данных в Access. Щелкните по вкладке Создание.. Щелкните кнопку Конструктор таблиц, чтобы запустить создание новой таблицы в режиме Конструктора. На экране появится пустая форма Конструктора таблиц (см. рис. 5).

Рис. 5 Окно конструктора таблиц

Создать в таблице поля с атрибутом Имя поля: КодСтудента, Фамилия, Имя, Отчество, ДатаРождения, НомУчГруппы, Гражданство.

Установить для каждого поля следующий Тип данных: для поля КодСтудентаСчетчик; для полей Фамилия, Имя, Отчество, ГражданствоТекстовый; для поля ДатаРожденияДата/время; НомУчГруппы – Текстовый. Установить поле КодСтудента ключевым, для чего поставить во вкладке конструктор на панели инструментов нажать кн. Ключевое поле.

На панели быстрого пуска нажать кн. Сохранить, в поле Имя таблицы: окна Сохранение ввести – Кадры, нажать кн. ОК. Закрыть таблицу..

Используя режим – Конструктор, создать вторую таблицу под именем – Учебный план. В таблицу ввести следующие поля с атрибутом Имя поля: КодДисциплин, Наименование, Преподаватель, КолЧасов. Тип данных установить: для поля КодДисциплинСчетчик (сделать его ключевым); Наименование, ПреподавательТекстовый; КолЧасов – Числовой.

2.2. Настройка свойств полей. 

Вторым этапом создания таблиц баз данных является настройка свойств полей. Заметим, что при создании нового поля в зависимости от его типа некоторые свойства имеют значения по умолчанию.

Открыть таблицу Кадры в режиме Конструктор (для этого в контекстном меню выбрать пункт Конструктор) Установить курсор на поле КодСтудента, на вкладке Общие (Свойства поля) установить свойство Подпись№ п/п. Для полей Фамилия,  Имя и  Отчество установить свойства: Размер поля – 255; Обязательное полеДа; Индексированное полеДа (Допускаются совпадения). Для поля ДатаРождения установить (выбрать) свойства: Формат поля (справа в строке будет символ) – Краткий формат даты (19.06.2007); Маска ввода – (справа в строке будет символ запустить мастер ), подтвердить сохранение таблицы, нажать кн. Да, в окне Создание масок ввода выбрать Краткий формат даты (27.09.1969), нажать кн. Далее>, в следующем окне снова нажать кн. Далее>, затем кн. Готово. Свойство Маска ввода должна установиться – 00.00.0000;0;_ ; ПодписьДата рождения; Обязательное полеДа; Индексированное полеДа (Допускаются совпадения). Для поля НомУчГруппы установить свойства: ПодписьУч. группа; Обязательное полеДа; Индексированное полеДа (Допускаются совпадения), Значение по умолчанию – номер своей учебной группы. Для поля Гражданство: Размер поля255; Значение по умолчаниюРоссийская_Федерация; Обязательное полеДа; Индексированное полеДа (Допускаются совпадения).

Нажать кн. Сохранить, закрыть таблицу Кадры.

Открыть для редактирования таблицу Учебный план. Установить свойства полей: поле КодДисциплин – свойство Подпись№ п/п; поле НаименованиеРазмер поля – 255, Подпись – Дисциплина, Обязательное полеДа, Индексированное полеДа (Совпадения не допускаются); поле ПреподавательОбязательное полеДа, Индексированное полеДа (Допускаются совпадения); поле КолЧасовПодписьЧасы. Сохранить и закрыть таблицу.

1.4. Установка фиксированного набора значений. 

Открыть таблицу Кадры в режиме Конструктор. Для поля Гражданство, открыть список Тип данных и выбрать Мастер подстановок... . В окне Создание подстановки выбрать режим – Будет введен фиксированный набор значений, нажать кн. Далее. В следующем окне в Столбец 1 последовательно в строки столбца ввести гражданство: Российская_Федерация, Республика_Беларусь, Украина и т.д. Нажать кн. Далее, затем Готово. Сохранить и закрыть таблицу Кадры.

3.Создание связей и заполнение таблиц

3.1. Создание и настройка сводной таблицы.

Используя режим конструктора создать таблицу Электронный журнал, включить в ее состав необходимые поля и настроить их свойства в следующем порядке:

Имя поляКод, Тип данныхСчетчик, Свойства: Подпись№ п/п. Сделать поле ключевым.

Имя поляДата, Тип данныхДата/время, Свойства: Формат поляКраткий формат даты; Маска ввода – (используя мастер масок ввода) 00.00.0000;0;_ ; Значение по умолчанию – запустить мастер Функции , в окне Построитель выражений открыть папку Функции, затем Встроенные функции, выбрать тип функции Дата/время, затем функцию – Date, нажать кн. Вставить, затем ОК, в поле свойства “Значение по умолчанию” появится – Date() (эта функция генерирует токующую дату); Обязательное полеДа, Индексированное полеДа (Допускаются совпадения).

Имя поляСтудент, Тип данных – выбрать Мастер подстановок ... , в окне Создание подстановки установить – столбец подстановки использует значения из таблицы или запроса, нажать кн. Далее>, выбрать таблицу Кадры, нажать кн. Далее>, из поля Доступные поля: в поле Выбранные поля: используя кн. переместить поля КодСтудента, Фамилия, нажать кн. Далее>, убедится что в следующем окне установлен переключатель Скрыть ключевой столбец, нажать кн. Далее>, затем Готово, выполнить рекомендации по сохранению таблицы.

Имя поляДисциплина, Тип данных – выбрать Мастер подстановок ... аналогично предыдущему полю связать с таблицей Учебный план (поля КодДисциплин, Наименование).

Имя поляВидЗанятия, Тип данных – выбрать Мастер подстановок ... используя режим – фиксированный набор значений ввести следующие виды занятий: Лекция, Лаб_Зан, Практ_Зан, Семинар. Свойства: ПодписьВид занятия; Значение по умолчаниюПракт_Зан.

Имя поляОценка, Тип данных – выбрать Мастер подстановок ... используя режим – фиксированный набор значений ввести следующие виды оценок: 5, 4, 3, 2, установить Тип данныхЧисловой.

В свойствах полей Студент (КодСтудента), Дисциплина (КодДисциплин), Оценка убрать 0 из Значение по умолчанию, Обязательное полеДа, Индексированное полеДа (Допускаются совпадения).

После произведенных изменений сохраните таблицу.

3.2. Редактирование схемы данных.

Закрыть все таблицы. На ленточной панели инструментов выбрать

вкладку Работа с базами данных на ленте инструментов (см. рис. 6 ).

Рис. 6 – Вкладка работа с базами данных

В группе Показать или скрыть щелкните кнопку Схема данных. Нажать кн. Схема данных. В окне Схема данных должны располагаться таблицы со связями (соединениями одноименных полей в связанных таблицах).

Выполнить коррекцию связей, для чего, установить указатель мыши на линию связи и дважды щелкнуть ЛКМ. В окне Связи (см.рис. 7.)установить переключатели: Обеспечение целостности данных; каскадное обновление связанных полей; каскадное удаление связанных записей, нажать ОК. Аналогично настроить вторую связь. Убедится, что тип отношений между базовыми таблицами и таблицей данных Один ко многим. Сохранить и закрыть схему данных.

Рис. 7- Настройка схемы данных

3.3. Ввод данных в режиме таблицы.

Поочередно открыть таблицы в Режиме таблицы и заполнить информацию в базовых таблицах Кадры (не менее 25 записей с разными датами фамилиями и т.п., можно произвольно) и Учебный план (не менее 10 записей). Затем заполнить таблицу Электронный журнал (не менее 25 записей). Сохраните результаты работы.

Замечания:

1. Ширину полей таблиц при необходимости можно отредактировать с помощью мыши.

2. Просмотр и коррекцию всех данных можно осуществлять из таблицы Кадры для чего необходимо щелкнуть ЛКМ на значек ”+” в первом столбце таблицы Кадры напротив соответствующей строки с фамилией студента.

Контрольные вопросы

  1.  Назовите особенности справочной системы MS Access.
  2.  Перечислите основные моделей типы организации баз данных?
  3.  Что такое реляционная база данных?
  4.  Что такое целостность данных и как она обеспечивается?
  5.  Что такое поле? Назовите основные типы и свойства полей.
  6.  Что такое и как устанавливается маска ввода?
  7.  Что такое и как устанавливается фиксированный набор значений для ввода?
  8.  Как сделать так, чтобы в заполняемую запись автоматически вводилась текущая дата?
  9.  Что такое схема данных и как производится ее редактирование?
  10.  Назовите особенности непосредственного ввода данных в режиме таблицы.
  11.  Как просмотреть из одной таблицы данные, находящиеся в других связанных с ней таблицах?

Дополнительные  задания:

  1.  Сделать составной ключ и посмотреть, что будет со схемой данных.
  2.  Создайте составной индекс по  полям  код студента и номер группы.
  3.   Вставьте гиперссылку в таблицу Учебный план и проверить, как будет работать СУБД

Лабораторная работа №   (часть 2)

Редактирование таблиц, создание форм и запросов в СУБД MS Access 

Цель работы: Изучить порядок редактирования таблиц, создания простых форм и построения запросов в СУБД MS Access.

Вопросы, изучаемые на занятии:

  1.  изменение структуры таблиц;
  2.  сортировка записей в таблицах;
  3.  фильтрация записей в таблицах;
  4.  создание и редактирование  форм;
  5.  построение запросов.
  6.  создание и редактирование отчетов

  1.  Изменение структуры таблиц. Редактирование таблиц, сортировка и фильтрация записей

Изменение структуры таблицы. Запустить MS Access и открыть базу данных, разработанную на предыдущем занятии (ИС_Учет_Успеваемости).

Открыть таблицу Кадры в режиме Конструктор. Установить курсор на поле Фамилия. На вкладке Конструктор в разделе Сервис нажать кн. Добавить строки (или выполнить команду Вставка). Добавить поле Пол с текстовым типом данных. Сохранить таблицу. Перейти в Режим таблицы. Заполнить столбец Пол (мужской/женский). Закрыть таблицу Кадры.

2. Сортировка записей в таблицах. 

Открыть для просмотра записей таблицу Электронный журнал. Провести сортировку записей в таблице по фамилиям студентов, для чего: выделить столбец Студент (щелкнуть ЛКМ по заголовку столбца), на ленточной панели инструментов Главная щелкнуть по кн. Сортировка по возрастанию. Повторить действия, используя кн. Сортировка по убыванию. Восстановить сортировку записей по № п/п.

3.Фильтрация записей в таблицах. 

Фильтрация – самый простой способ выделения записей в таблице по какому-либо признаку (критерию).

Рассмотрим применение фильтра по выделенному. Установить курсор на одну из фамилий студентов в поле Студент таблицы Электронный журнал, на панели инструментов  Главная нажать кн. Фильтр по выделенному (), убедится, что в таблице остались записи по выбранному студенту. Нажать кн. Удалить фильтр (команда Применить фильтр).

Рассмотрим использование простого фильтра, выполните следующие действия:

1.Щелкните любую ячейку столбца таблицы, Кадры по которому нужно установить фильтр - наити студентов, с датой рождения  начинающихся с цифр 198, щелкните одну из ячеек столбца Дата рождения).

2. Щелкните вкладку Главная на ленте команд, перейдите в группу Сортировка и фильтр и нажмите кнопку Фильтр. На экране раскроется меню (см. рис.8).

Рис. 8 – Простой фильтр

3. Щелкните строку Фильтры  дат (для числового поля - Числовые фильтры) и выберите-  вариант Между (см. рис. 9).

Рис. 9- Варианты текстового фильтра

4. Введите параметры фильтра в появившемся на экране окне диалога (см. рис. 10).

Рис. 10 – Окно ввода параметров

5.  нажмите кнопку ОК для фильтрации записей таблицы. В результате в таблице будут видны только те строки, у которых даты соответствуют требуемому диапазону даты;

- щелкните кнопку на панели навигации, чтобы отменить установленный фильтр. Простой фильтр будет снят, и в таблице отобразятся все записи.

Рассмотрим использование расширенного фильтра,  и выполните следующие действия:

1. Щелкните любую ячейку таблицы;

2. Щелкните вкладку Главная на ленте команд, перейдите в группу Сортировка и фильтр и щелкните стрелку после кнопки Дополнительно. На экране раскроется меню (см. рис. 11);

Рис. 11 – Окно дополнительно

3.  щелкните опцию Расширенный фильтр и установите требуемые параметры фильтрации в окне конструктора фильтров. Выберите таблицу Электронный журнал  и проведите  фильтрацию с условием – отобрать студентов имеющих оценки выше «2» и ниже «5».

4. Щелкните вкладку Главная на ленте команд, перейдите в группу Сортировка и фильтр и нажмите кнопку Применить фильтр. 

5. Щелкните кнопку , чтобы отменить установленный фильтр или Дополнительно – Применить фильтр.

6. Отмените любые установленные фильтры, щелкните вкладку Главная, перейдите в группу Сортировка и фильтр и щелкните стрелку после кнопки Дополнительно. Затем в раскрывшемся меню выберите команду Очистить все фильтры.

4. Создание  форм

Для того, чтобы организовать удобный и интуитивно понятный интерфейс пользователя для работы с данными, в Microsoft Access 2007 используются формы. Формы представляют собой настраиваемые диалоговые окна, которые являются специализированными объектами базы данных (как таблицы или запросы) и сохраняются в файле базы данных.

По сравнению с режимом таблицы, формы предоставляют более удобный способ просмотра и правки данных в таблицах базы данных. Они позволяют выполнять проверку корректности данных при вводе, проводить вычисления, обеспечивать доступ к данным в связанных таблицах.

Формы также могут применяться для управления доступом к данным: с их помощью можно определять, какие поля будут отображаться при вводе данных в таблицу.

По сравнению с предыдущими версиями программы, в Microsoft Office Access 2007 предусмотрены новые средства, помогающие быстро создавать формы, а также добавлены новые типы форм и улучшены их функциональные возможности. Наибольшее практическое значение имеют следующие способы создания новых форм в уже существующей базе данных:

- автоматическое создание простой формы;

- автоматическое создание разделенной формы;

- создание формы с помощью Мастера форм;

- создание формы с дополнительными элементами;

- создание пустой формы;

- создание формы в режиме Конструктора.

Создадим автоматически простую форму:

- в области переходов базы данных щелкните имя таблицы, для которой вы хотите создать форму (например, Кадры).

- щелкните вкладку Создание.

-  в группе Формы щелкните кнопку Форма. Приложение Access 2007 создаст форму для выбранной таблицы и отобразит ее в режиме макета (см. рис.12).

Рис.  12 – Простая форма

- в режиме макета внесите следующие изменения:

- настройте сетку (ширину, стиль, цвет);

-  настройте шрифты (Шрифт – Times New Roman; размер – 18; полужирный; выравнивать – по центру. Цвет заливки/фона – цвет морской волны; цвет текста – белый; тип оформления – утопленное оформление);

- оформите элементы управления (поставьте на форму эмблему, заголовок, дату и время);

- нажмите кнопку Сохранить на панели быстрого доступа, чтобы сохранить новую форму в базе данных. На экране появится окно запроса имени новой формы. Введите желаемое название формы в поле Имя формы (например, Кадры) и нажмите кнопку ОК. Название новой формы появится в области переходов.

Создадим разделенную форму:

Разделенная форма - это новая возможность, появившаяся в версии Microsoft Office Access 2007. Отличие разделенной формы от простой состоит в том, что она отображает данные, содержащиеся в таблице, одновременно в двух представлениях - в режиме формы и в режиме таблицы.

Для того, чтобы автоматически создать разделенную форму, выполните следующие действия:

-  в  области переходов щелкните имя таблицы, для которой вы хотите создать форму (например, Учебный план).

- щелкните вкладку Создание.

- в группе Формы щелкните кнопку Разделенная форма. Приложение Access 2007 создаст форму для выбранной таблицы и отобразит ее в режиме макета (см. рис.13).

Рис.13  – Раздельная форма

- в режиме макета  внесите изменения в структуру формы: настроите размер полей формы в соответствии с вводимыми в таблицу данными;.

- нажмите кнопку Сохранить на панели быстрого доступа, чтобы сохранить новую форму в базе данных. На экране появится окно запроса имени новой формы.

- Введите желаемое название формы в поле Имя формы (например, Список учащихся) и нажмите кнопку ОК. Название новой формы появится в области переходов.

Наибольшими возможностями обладает Конструктор. При проектировании формы в Конструкторе можно использовать расширенный набор элементов управления, который недоступен в обычном режиме редактирования макета формы.

Разработчик также имеет возможность настраивать внешний вид формы и расположенных на ней элементов управления в соответствии со своими требованиями и предпочтениями. В Конструкторе можно поменять цвет, стиль оформления, положение и реакцию на действия пользователя у любого элемента управления, расположенного на форме, а также настроить любые свойства самой формы. В приложении 1 показаны все элементы управления.

Создадим форму в конструкторе (это бонус - самостоятельно):

- продумать вид формы и включать следующие разделы:

раздел Заголовок формы - определяет верхнюю часть формы. Этот раздел добавляется в форму вместе с разделом примечания формы. В область заголовка формы можно поместить текст, графику и другие элементы управления. При печати многостраничной формы раздел заголовка отображается только на первой странице;

раздел Верхний колонтитул - определяет верхний колонтитул страницы при печати формы. Этот раздел добавляется в форму вместе с разделом, определяющим нижний колонтитул страницы, и отображается только тогда, когда форма открыта в режиме предварительного просмотра. При печати многостраничной формы верхний колонтитул отображается вверху каждой страницы;

раздел Область данных - определяет основную часть формы, содержащую данные, полученные из источника. Данный раздел может содержать элементы управления, отображающие данные из таблиц и запросов, а также неизменяемые данные (например, пояснительные надписи). При печати многостраничной формы этот раздел отображается на каждой странице;

раздел Нижний колонтитул - определяет нижний колонтитул страницы при печати формы. Этот раздел добавляется в форму вместе с разделом, определяющим верхний колонтитул страницы. Он отображается только тогда, когда форма открыта в режиме предварительного просмотра При печати многостраничной формы нижний колонтитул отображается внизу каждой страницы;

раздел Примечание формы - определяет нижнюю часть формы. Этот раздел добавляется в форму вместе с разделом заголовка формы. При печати многостраничной формы примечание формы будет отображено только внизу последней страницы.

- щелкните вкладку Создание;

- в группе Формы щелкните кнопку Конструктор форм;

- щелкните контекстную вкладку Конструктор.

- добавьте в форму строку заголовка. Для этого нажмите кнопку  (Заголовок) в группе Элементы управления, щелкните мышью в верхней части  формы и введите текст заголовка (например, Добавление   новой дисциплины). Окончив ввод, нажмите клавишу Enter. При необходимости переместите заголовок формы, если считаете, что он расположен неудачно;

- в  области Сервис нажать Добавить поля, а  затем щелкните знак плюс (+) рядом с таблицей, содержащей  поля,  которые  нужно включить  в форму.   Если  в форме должны использоваться поля из нескольких таблиц, то нужно раскрыть списки полей всех нужных вам таблиц. В примере мы создадим форму по таблице Электронный журнал, поэтому щелкните знак плюс перед ее названием. В результате на экране появится перечень полей таблицы;

- добавьте в раздел Область данных макета новой формы все нужные вам поля таблицы. Для вставки поля сначала щелкните название этого поля в области Список полей, а затем щелкните мышью в том месте раздела Область данных формы, где вы хотите поместить это поле. На форме появится группа из двух связанных элементов - собственно поля ввода и подписи к нему (подпись совпадает с именем этого поля в исходной таблице).Описанным выше способом добавьте на форму необходимые поля.

Постарайтесь разместить их около нижней границы раздела Область данных, чтобы сверху осталось место для дополнительных элементов формы.

- добавьте на форму первую пояснительную надпись. Для этого перейдите на контекстную вкладку Конструктор и в группе Элементы управления щелкните кнопку Надпись. После этого щелкните мышью в верхней части раздела Область данных и введите текст надписи ( дисциплины:). Окончив ввод, нажмите клавишу Enter. Перетащите созданную надпись к верхнему левому углу раздела Область данных.

Далее продолжите сами заполнять оставшиеся области

  1.  Построение запросов

При работе с базами данных наиболее часто используются простые запросы – выбор записей из таблиц или других запросов удовлетворяющих заданному критерию.

В Microsoft Access 2007 используются четыре основных способа создания нового запроса:

- создание запроса на основе существующего фильтра;

- создание запроса с использованием Мастера запросов;

- создание запроса с помощью Конструктора запросов;

- создание запроса в режиме SQL-редактора.

Рассмотрим наиболее часто используемые варианты создания запросов.

5.1. Формирование простого запроса, как расширенного фильтра. открыть таблицу Электронный журнал, выполнить команду Главная/Сортировка и фильтр/Дополнительно/Расширенный фильтр. В строке Поле: из раскрывающегося списка выбрать в отдельные столбцы поля: Код, Дата, Студент, Дисциплина, ВидЗанятия, Оценка. В строке Сортировка: для поля Дата установить – по возрастанию. Условие отбора: установить: для поля Оценка – 2, ВидЗанятияПракт_Зан. В строке “или:” для поля ВидЗанятия установить – Лаб_Зан, для поля Оценка – 2.

На панели быстрого пуска нажать  кн. Сохранить как запрос. В окне Сохранение в виде запроса ввести имя – Запрос по неудовлетворительным оценкам. Закрыть окно фильтра. Перейти на вкладку Запросы. Выполнить запрос (кн. Открыть) Запрос по неудовлетворительным оценкам. Проверить правильность выборки данных из таблицы Электронный журнал.

Самостоятельно сформируйте запросы по следующим критериям: 1) отличные оценки; 2) оценки 4 или 5.

5.2. Формирование простого запроса с помощью мастера

1.  Щелкните вкладку Создание.

2.  В группе Другие нажмите кнопку Мастер запросов. На экране появится первое диалоговое окно Мастера запросов (см. рис. 14).

3.  Убедитесь, что в окне Мастера отмечен вариант Простой запрос.  Нажмите кнопку ОК. На экране появится следующее окно Мастера.

Рис.14 – Мастер запросов

  1.  Раскройте список Таблицы и запросы и выберите источник данных для создания нового запроса. В поле Таблицы/запросы: выбрать Таблица: Электронный журнал. Из поля Доступные поля: переместить в поле Выбранные поля: все поля данных; 

Рис.15 – Мастер, очередной шаг

5. Снова открыть поле Таблицы/запросы: и выбрать Таблица: Кадры, из поля Доступные поля: переместить в поле Выбранные поля: – Пол, НомУчГруппы. Нажать кн. Далее>. Выбрать вид отчета – подробный, Далее>;

6. Задать имя запроса – Учет успеваемости за (дата). Нажать кн. Готово;

7. Перейдите в режим Конструктор. Для поля Дата в строку Условие отбора: ввести [За какое число?] (вводится в квадратных скобках). Сохранить запрос;

8. Выберите Режим таблицы. В окне Введите значение параметра ввести одну из дат, содержащихся в таблице, нажать кн. ОК. Закрыть окно запроса (см.рис.16).

Рис.16-Проверка работы запроса

Проверить работу запроса по другим датам;

9. Самостоятельно сформируйте запросы по следующим критериям: 1) по датам больше заданной 2) по датам лежащей в диапазоне между заданными, 3) по заданным оценкам, 4) по оценкам больше заданной.

  1.  Разработка перекрестного запроса.

Перекрестный запрос – запрос, результатом выполнения которого является таблица, столбцами и строками которой являются записи, находящиеся в заданных полях других таблиц или других запросов.

5.3.1. Сформируем с помощью перекрестного запроса таблицу, в которой названиями строк являются записи, содержащиеся в полях Фамилия, Имя и ВидЗанятия, а названиями столбцов – записи, содержащиеся в поле  Наименования (дисциплин), также имеется еще один столбец – “средний балл”. Сама же таблица должна содержать средние значения записей поля Оценка, т.е. средний балл соответствующий данному студенту, виду занятий и дисциплине.

Подготовку данных для создания перекрестного запроса осуществим с помощью простого запроса, для чего  выполните следующие действия:

1. Щелкните вкладку Создание.

2. В группе Другие нажмите кнопку Мастер запросов. На экране появится первое диалоговое окно Мастера запросов (см. рис. 14).

3. Убедитесь, что в окне Мастера отмечен вариант Простой запрос .  Нажмите кнопку ОК. На экране появится следующее окно Мастера.

4. В окне Создание простых запросов в поле Таблицы/запросы: выбрать Таблица: Кадры, из поля Доступные поля: переместить в поле Выбранные поля: Фамилия, Имя; Таблица: Учебный план – поле Наименование; Таблица: Электронный журнал – поля ВидЗанятия  и Оценка. Нажать кн. Далее> (рис.17).

Рис.17-Шаг мастра

5. Выбрать вид отчета – подробный, Далее>. Задать имя запроса – Подготовка данных.  Нажать кн. Готово;

6. На вкладке Запросы окна База данных, нажать на кн. Создать. В окне новый запрос выбрать Перекрестный запрос. Нажать кн. ОК. В окне Создание перекрестных таблиц выбрать Показать Запросы и Запрос: Подготовка данных Далее>.

7. В следующем окне предлагается выбрать поля для заголовков строк. Выбрать в качестве полей заголовка строк – Фамилия, Имя и ВидЗанятия. Нажать кн. Далее>. В качестве заголовка столбцов в следующем окне выбрать поле – Наименование.  Нажать кн. Далее>.

8. В следующем окне в качестве поля вычислений выбрать Оценка, Функции: – Максимум. – Да. Нажать кн. Далее>. Задать имя запроса – Таблица успеваемости, нажать кН и изменить структуру запроса Готово.

Отредактируйте запрос. Просмотреть содержимое полученной перекрестной таблицы. Сохранить и закрыть запрос.

5.3.2. Сформируем с помощью перекрестного запроса таблицу, в которой названиями строк являются записи, содержащиеся в полях Фамилия, Имя, а названиями столбцов – в поле Дата. Сама же таблица должна содержать записи поля Оценка, относящиеся к заданным НомУчГруппы, Дисциплине и ВидуЗанятия (для определенности, например, выберем группу ЗБУс-11, математика и практика).

Подготовку данных для создания перекрестного запроса осуществим с помощью простого запроса, для чего необходимо выполнить следующие действия:

  1.  На вкладке Запросы окна База данных нажать на кн. Создать.
  2.  В окне новый запрос выбрать Простой запрос. В окне Создание простых запросов в поле Таблицы/запросы: выбрать Таблица: Кадры, из поля Доступные поля: переместить в поле Выбранные поля: Фамилия, Имя, НомУчГруппы; Таблица: Учебный план – поле Наименование; Таблица: Электронный журнал – поля Дата, ВидЗанятия  и Оценка. Нажать кн. Далее>.
  3.  Выбрать вид отчета – подробный, Далее>. Задать имя запроса – Подготовка данных_1.  Нажать кн. Готово.
  4.   на вкладке Запросы окна База данных, нажать на кн. Создать. В окне новый запрос выбрать Перекрестный запрос. Нажать кн. ОК. В окне Создание перекрестных таблиц выбрать Показать Запросы и Запрос: Подготовка данных_1  Нажать кн. Далее>.
  5.  В следующем окне предлагается выбрать поля для заголовков строк. Выбрать в качестве полей заголовка строк – Фамилия, Имя. Нажать кн. Далее>.
  6.  В качестве заголовка столбцов в следующем окне выбрать поле – Дата.  Нажать кн. Далее>.
  7.  В следующем окне в качестве поля вычислений выбрать Оценка, Функции: – Среднее. Вычислить итоговое значение для каждой строкиДа. Нажать кн. Далее>. Задать имя запроса – Журнал успеваемости по математике (Практ_Зан) группы ЗБУс-11, нажать кн. Готово.
  8.  Открыть созданный запрос в режиме конструктора. Добавить поля НомУчГруппы, Дисциплина и ВидЗанятий,  условия отбора ЗБУс-11, Математика и Практ_Зан соответственно.

Просмотреть содержимое полученной перекрестной таблицы. Сохранить результаты работы.

  1.  Конструирование отчетов

В отличие от других объектов базы данных, с помощью отчета невозможно изменять сведения, хранящиеся в базе данных. С помощью отчета можно только отображать данные, содержащиеся в таблицах или выбранные из базы данных по запросу. Зато  отчет  лучше подходит для представления требуемых пользователю данных в виде полноценных документов, не уступающих подготовленным в Microsoft Word, для которых можно выбрать требуемый стиль оформления, а затем напечатать на принтере или отправить по электронной почте.

6.1. Создание нового отчета

С помощью средств Microsoft Access 2007 пользователь можно создать множество различных отчетов любой степени сложности. К основным способам создания нового отчета в текущей базе данных Access 2007 можно отнести следующие варианты:

- автоматическое создание отчета с помощью средства Отчет;

- создание отчета с помощью Мастера отчетов;

- создание отчета с использованием средства Пустой отчет;

- создание отчета в Конструкторе отчетов;

- создание наклеек с помощью Мастера наклеек.

Каждый отчет Access 2007 содержит необходимые пользователю сведения, выбранные из таблиц и / или запросов базы данных. Наряду с данными, извлекаемыми из таблиц и запросов, в любом отчете обязательно содержится информация о макете отчета. В макете отчета хранятся заданные пользователем параметры страницы отчета, а также сведения о структуре и свойствах отчета и его отдельных элементов (подписей, заголовков, рисунков).

Таблицы и запросы, содержащие базовые данные для отчета, называются источником записей отчета.

6.2. Автоматическое создание

Самый простой и быстрый способ создания нового отчета заключается в использовании средства автоматического создания отчетов. Автоматическое создание простого отчета на основе существующего запроса или таблицы базы данных выполняется с помощью инструмента Отчет. Сразу после создания нового отчета его можно просмотреть и при необходимости распечатать или отправить по электронной почте. Если вас не устраивает структура или форматирование созданного отчета, он может изменить требуемые параметры отчета в режиме макета или в Конструкторе.

Создайте автоматически  простой отчет на основе таблицы Учебный план

1. Откройте требуемую ИС_учета_успеваемости.

2. В области переходов щелкните название того таблицы Учебный план

(если необходимо, то таблицы или запроса), который должен использоваться в качестве источника данных для нового отчета.

3. На ленте инструментов перейдите на вкладку Создание (см. рис. 16).

Рис. 16 – Лента со вкладкой Создание

  1.  В группе Отчеты щелкните кнопку Отчет. Приложение Access 2007 создаст новый отчет и отобразит его в режиме макета (см. рис. 16).

Рис. 16 - Новый отчет в режиме макета

Настроите размер полей, отформатируйте отчет в соответствии с требованиями: шрифт-Tahoma; размер-16; цвет текста заголовка - зеленый; заливка - темно-бардовый; итоги - сумма, среднее, количество записей; сетка на весь отчет; добавить эмблему и сделать заголовок, поставить страницы (см.рис.16).

5. Нажмите кнопку Сохранить на панели быстрого доступа, чтобы сохранить новый отчет в текущей базе данных. На экране появится окно запроса имени нового отчета (см. рис. 17).

Рис. 17 – Сохранение автоотчета

6. Введите желаемое название отчета в поле Имя отчета (рис.17).

  1.  Нажмите кнопку ОК. Новый отчет будет сохранен в текущей базе данных, а его название появится в области переходов.

6.3. Создание с помощью Мастера

В случае использования Мастера отчетов при создании нового отчета можно указать способ группировки и сортировки данных, а также включить в отчет поля из нескольких таблиц или запросов (при условии, что в Access уже заданы отношения между этими таблицами и запросами).

Создайте новый отчет по таблице или запросу с помощью Мастера и  выполните следующие действия:

1. Откройте требуемую ИС_учета_успеваемости.

2. В области переходов щелкните название того объекта базы данных таблицу Электронный журнал и  запрос_1 (который вы создали).

3. Щелкните вкладку Создание.

  1.  В группе Отчеты щелкните кнопку Мастер отчетов. На экране появится первое диалоговое окно Мастера отчетов (см. рис. 18), в котором  выберите исходную таблицу или запрос и переместите набор полей для нового отчета.

Рис. 18– Окно мастера отчетов

5. В списке Доступные поля отметьте поля таблицы и запроса, которые должны быть включены в новый отчет. Если вы хотите использовать весь набор полей исходной таблицы, щелкните кнопку    . Чтобы выбрать только часть полей таблицы, щелкните каждое требуемое поле и нажмите кнопку     для его переноса в список Выбранные поля (рис.18) и щелкните Далее.

6. В следующем окне мастера выберите вид представления по своему усмотрению и щелкните Далее.

7.В следующем окне Мастера (см. рис. 19), Добавить уровни группировки. Выберите один из видов представления данных, предложенных в окне Мастера. Для просмотра образца представления данных щелкните имя представления в списке. Выбранный образец будет показан в правой части окна Мастера. Выбирайте уровни группировки отчета следующим образом:

- чтобы добавить уровень группировки по полю, щелкните название поля в списке доступных полей и нажмите кнопку    ;

- чтобы изменить порядок уровней группировки, используйте кнопку для перемещения уровня группировки на одну позицию вверх или кнопку  для перемещения на одну позицию вниз;

- чтобы удалить уровень группировки по полю, щелкните название уровня на образце представления данных отчета и нажмите кнопку (см. рис.19). Нажмите кнопку Далее. На экране появится третье окно Мастера.

Рис. 19 – Уровни группирования

  1.   На экране появится четвертое окно Мастера (см. рис. 20).

В котором, становите  порядок сортировки данных отчета. В окне Мастера вы можете выбрать до четырех полей сортировки, установив сортировку по возрастанию или по убыванию в каждом из отмеченных полей.  Чтобы установить сортировку данных  по  какому-либо  полю,  раскройте  список  и  щелкните название поля.  По  умолчанию  данные  в  поле сортируются по возрастанию, для выбора сортировки по убыванию щелкните кнопку По возрастанию, расположенную справа от списка (при этом ее название изменится на По убыванию).

Нажмите  кнопку Итоги, в открывшемся диалоговом окне поставить галочки Сумма, минимум, максимум, проверить что бы была активирована радиокнопка  Данные и итоги (см.рис.20). Нажмите кнопку Далее.

Рис. 20 – Выбор порядка сортировки

9. Появится окно  Вид макета. В  группе  Макет  выберите   вид  макета  отчета,  отметив  один   из предложенных вариантов (рис.21):

- Ступенчатый - при установке этого переключателя новый отчет будет оформлен по макету «Ступенчатый»;

- Блок - при установке этого переключателя новый отчет будет оформлен по макету «Блок»;

- Структура - при установке этого переключателя новый отчет будет оформлен по макету «Структура».

Рис. 21 -  Вид макета

Отставьте макет Ступенчатый, предложенный по умолчанию и ориентация - книжная. Снимите флажок Настроить ширину полей для размещения на одной странице. По умолчанию этот флажок установлен, и поля отчета имеют такую ширину, чтобы все они могли разместиться на одной странице.  Посмотрите образец оформления отчета с выбранными настройками в левой части окна Мастера.  Нажмите кнопку Далее.

  1.  На экране появится шестое окно Мастера  выбор стиля отчета (см. рис. 22).

Рис. 22 -  Выбор стиля отчета

В предложенном списке выберите стиль оформления нового отчета Справедливость. Нажмите кнопку Далее.

  1.  На экране появится последнее окно Мастера (см. рис. 23).

Рис. 23 – Последнее окно мастера

Введите название нового отчета Комбинированный в верхнее поле ввода.  В группе Дальнейшие действия оставьте вариант Просмотреть отчет, выбранный по умолчанию. В этом случае сразу после завершения работы Мастера можно будет просмотреть результирующий вид созданного отчета.

Нажмите кнопку Готово. Новый отчет будет сохранен в текущей базе данных. В рабочей области Access 2007 откроется окно предварительного просмотра созданного отчета (см. рис. 24).

Рис. 24 – Готовый отчет

       Совет

Если по каким-то причинам вас не устраивает внешний вид чета, получившего отчета в результате работы Мастера отчетов, то вы можете подкорректировать его в   Конструкторе отчетов.

6.4. Создание пустого отчета

Если ни одно из уже рассмотренных нами средств создания отчетов не позволяет достичь желаемого результата, можно воспользоваться инструментом Пустой отчет или создать требуемый отчет с помощью Конструктора отчетов.

С помощью Конструктора отчетов можно создать отчет любой сложности, но этот способ достаточно трудоемок. Пустой отчет - это очень быстрый способ создания отчета, особенно если в новом отчете должно содержаться небольшое количество полей.

Создайте пустой отчет для чего, выполните следующие действия:

Откройте требуемую базу данных Access 2007 (например, учебную базу данных Личная картотека).

1. Откройте требуемую ИС_учета_успеваемости.

3. В группе Отчеты щелкните кнопку Пустой отчет. Приложение Access 2007 создаст пустой отчет и отобразит его в режиме макета (см. рис. 25).

Рис. 25 – Отчет в режиме макета

3. В области Список полей щелкните знак плюс (+) рядом с таблицей, содержащей поля, которые нужно включить в отчет. Если в отчете должны выводиться данные из полей нескольких таблиц, раскройте списки полей всех нужных вам таблиц. Создайте отчет по таблице БД Кадры, поэтому щелкните знак плюс перед ее названием. В результате на экране появится перечень полей таблицы Кадры (см. рис. 26).

Рис. 26 – Выбор полей для отчета

4. Добавьте в пустой макет нового отчета все нужные вам поля таблицы. Для вставки поля в отчет дважды щелкните название этого поля в
области
Список полей. Значения выбранного поля появятся в отчете.

Добавьте поля Фамилия, Имя, Отчество, Дата рождения, Уч.группа, Гражданство (см.рис.26)

6. Проведете сортировку данных в отчете. Фамилии людей  в алфавитном порядке, для чего, щелкните правой кнопкой мыши название поля Фамилия и выберите команду Сортировка от А до Я в появившемся контекстном меню.

7. Настройте параметры отображения данных в отчете, воспользовавшись командами контекстной вкладки Формат (см. рис.27), расположенными в группе Шрифт.

Рис. 27 – Вкладка формат

Последовательно щелкните заголовки столбцов отчета (Фамилия, Имя, Отчество, Дата рождения, Уч.группа, Гражданство) и установите для них  полужирный шрифт.

8. Добавьте в отчет дополнительные элементы,
воспользовавшись командами контекстной вкладки
Формат (см. рис. 27). Для этого щелкните одну или несколько кнопок группы Элементы управления:

- Эмблема - служит для выбора изображения, которое будет  использоваться в качестве эмблемы нового отчета;

- (Заголовок) - позволяет добавить или изменить заголовок нового отчета;

- (Номер страницы) - служит для вставки номеров страниц;

- (Дата и время) - добавляет в отчет элемент, отображающий текущее значение даты и / или времени;

- сетка;

-итог- рассчитать количество записей;

-номера страниц;

- добавьте поле;

  1.  Измените  стилъ оформления отчета. Для этого перейдите на контекстную вкладку Формат, в группе Автоформат нажмите кнопку Автоформат и в раскрывшемся списке щелкните образец схемы оформления отчета -, Поток. Отчет будет отформатирован в соответствии с выбранной схемой. Результат «Готовый отчет» см. рис. 28.

Рис. 28 – Готовый отчет

10. Нажмите кнопку Сохранить на панели быстрого доступа, чтобы сохранить готовый отчет в текущей базе данных. На экране появится окно запроса имени нового отчета. .Введите желаемое название отчета в поле Имя отчета - Быстрый и нажмите кнопку ОК. Отчет будет сохранен в базе данных, а его название появится в области переходов.

6.5. Создание в Конструкторе (самый сложный)

Любой отчет Access 2007 может состоять из нескольких разделов, каждый из которых имеет свое функциональное назначение. Чтобы создавать правильно работающие отчеты, пользователю необходимо хорошо понимать назначение каждого раздела отчета. В частности, от выбора раздела для размещения вычисляемого элемента управления напрямую зависит способ вычисления результата и, следовательно, итоговое значение этого элемента.

Просматривать и изменять структуру отчета удобнее всего в режиме Конструктора отчетов. Сейчас мы познакомимся с перечнем возможных разделов отчета, которые можно увидеть в Конструкторе, и кратко рассмотрим назначение каждого из этих разделов.

- Заголовок отчета - печатается только один раз в самом начале отчета. В заголовок отчета включается информация, которая обычно помещается на обложке, - например, эмблема компании, название отчета или дата. Если в заголовке отчета размещен вычисляемый элемент управления, использующий статистическую функцию (например, Sum), значение этой функции (в рассматриваемом случае - сумма) рассчитывается для всего отчета. Заголовок отчета печатается перед верхним колонтитулом.

- Верхний колонтитул - печатается вверху каждой страницы отчета. Например, верхний колонтитул можно использовать в тех случаях, когда нужно, чтобы название отчета повторялось на каждой странице.

- Заголовок группы - печатается перед каждой новой группой записей отчета и обычно используется для печати названия группы. Например, если отчет о контактах сгруппирован по категориям контактов, в заголовках групп можно указать названия категорий контактов. Если в заголовок группы поместить вычисляемый элемент управления, использующий статистическую функцию (например, Sum), значение этой функции (сумма) будет рассчитываться только для текущей группы.

- Область данных - этот раздел отчета печатается один раз для каждой строки данных из источника записей. В области данных размещаются элементы управления, составляющие основное содержание отчета.

- Примечание группы - печатается в конце каждой группы записей отчета. Примечание группы можно использовать для печати сводной информации по группе.

- Нижний колонтитул - печатается внизу каждой страницы отчета. Используется для нумерации страниц и для печати постраничной информации.

- Примечание отчета - печатается один раз в самом конце отчета. Примечание отчета можно использовать для печати итогов и другой сводной информации по всему отчету.

При создании отчетов в режиме Конструктора можно использовать тот же набор элементов управления, что и при создании форм. Базовые элементы управления, использующиеся при создании отчетов, расположены в группе Элементы управления вкладки Конструктор на ленте инструментов.

Контрольные вопросы

  1.  Каким образом можно осуществить изменение структуры таблиц?
  2.  Как произвести сортировку записей в таблицах?
  3.  Для чего нужна и как осуществляется фильтрация записей в таблицах?
  4.  Назначение форм. Как можно создать и отредактировать простые формы?
  5.  Назовите основные возможности мастера форм.
  6.  Как производится редактирование формы в режиме конструктора?
  7.  Что такое запрос? Перечислите и поясните основные виды запросов.
  8.  Что такое расширенных фильтр и как с его помощью осуществляется формирование простых запросов?
  9.  Дайте определение параметрического запроса и поясните порядок его создания.
  10.  Поясните назначение и порядок выполнения перекрестного запроса.

Дополнительные задания:

  1.  Провести фильтрацию с помощью расширенного фильтра в таблице Электронный журнал (вид занятия-лекции и практика с оценкой 4 и5 или5).
  2.   Создайте форму  в режиме Конструктор (начало в лаб. работе)
  3.  Расположите на форму  элементы  управления  в режиме Конструктор смотри назначение элементов в приложении 1(поле, надпись, кнопка- сделать переход по записям, поле со писком и настроить его)
  4.  Создайте перекрестный запрос из таблицы Электронный журнал и запроса Учет успеваемости за.
  5.  Создайте  запрос - повторяющиеся записи на основе  таблицы Кадры.
  6.  Создайте  запрос – записи без подчиненных  таблицы Учебный план.
  7.  Создать запросы в формате SQL:
  •  создать таблицу Справочная с полями с простыми индексами -   место рождения; регион; адрес местожительства; адрес школы;
  •  запрос изменения структуры таблицы – удалить поле Гражданство в таблице Кадры;
  •   добавить два поля в таблицу Электронный журнал;
  •  создать и удалить индексы в таблице Справочная;

- запрос удаления таблицы и записей в таблице  Электронный журнал;

- запрос на ввод данных в таблице  Справочная;

- запрос на соединение таблиц  Электронный журнал и Учебный план;

- запрос удаления таблицы и записей в таблице  Электронный журнал;

- запросы на выборку таблицы:  Электронный журнал – выбрать студентов которые не получили «неуд» по дисциплинам физика, математика и правоведение; выбрать студентов которые не граждане России и пол муж; Таблицы Учебный план и  Электронный журнал  - выбрать преподавателей у которых учебных часов больше чем 60 и мене 90 и имеющих практические занятия.

7. В мастере отчетов показать, чтобы были видны: к-во часов; сумма; min; max.

8. Что такое условное форматирование. Проведите условное форматирование при создании отчета в режиме Отчет -  если в поле пол – муж.,  то ячейка окрашивается в желтый цвет иначе – синий.

9. Создайте процедуру обработки события – добавить поле в форму Электронный журнал и посчитать  средний балл по изучаемым дисциплинам.

 


Лабораторная работа №   (часть3)

Использование макросов, обмен данными между СУБД MS Access и MS Excel, создание сетевых приложений

(Продолжительность занятия 4 часа)

Цель работы: Изучить методику написания простейших макросов, технологию обмена данными между СУБД MS Access и табличным процессором MS Excel и особенности создание сетевых приложений.

Вопросы, изучаемые на занятии:

1)  написание простейших макросов;

2) импорт данных из электронных таблиц;

3) экспорт данных в электронную таблицу;

4) создание сетевых приложений: репликация баз данных, создание страниц доступа к данным.

 

Задание и рекомендации по выполнению лабораторной работы

1. Использование макросов

Использование макросов – это один из способов программирования в MS Access, позволяющего расширить функциональные возможности создаваемой системы управления данными. Основным назначением макросов является создание интерфейса, упрощающее выполнение типовых задачи. Access предлагает широкий набор команд, которые могут применяться в макросах.  

Макросы создаются в специальном окне конструктора макросов, которое может быть открыто несколькими способами (например, в окне базы данных можно перейти на вкладку Макросы и нажать кнопку Создать).

Верхняя часть окна конструктора макросов состоит из нескольких столбцов, по умолчанию выводятся два из них: Макрокоманда и Примечания.

В строках столбца Макрокоманда из раскрывающегося списка можно выбрать необходимую макрокоманду. Столбец Примечания служит для ввода комментариев, поясняющих выполняемые действия.

Каждая новая макрокоманда макроса добавляется к  уже существующим макрокомандам записью ее в ближайшую незанятую строку бланка. После ввода всех макрокоманд в макрос его надо сохранить  кнопкой панели инструментов макроса.

После ввода макрокоманды в нижней части окна конструктора макросов могут появиться строки для задания аргументов  введенной макрокоманды.

Для выполнения макроса нужно нажать кнопку Выполнить

Задание - Создайте четыре простых макроса для одновременного открытия и закрытия всех таблиц и всех форм (кроме главной) создаваемой информационной системы (Открыть  таблицу Электронный журнал, Закрыть таблицу Электронный журнал, Открыть форму, Закрыть форму).

Поместите кнопки, запускающие созданные макросы на главную форму приложения.

Группа макросов создается как один макрос, в котором содержатся несколько макросов, например, связанных с решением одной задачи или используемых при работе с одной формой. Работать с группой часто оказывается удобнее, чем с несколькими отдельными макросами.

Для создания группы макросов нужно вызвать столбец Имя макроса. Для создания группы макросов нужно вызвать столбец Имена макросов. Он появится после нажатия на пиктограмму (см. рис. 1).

В ячейку столбца Имя макроса надо ввести имя первого макроса, входящего в группу макросов. Затем записать макрокоманды, выполняемые в первом макросе. Аналогичным образом надо ввести имена других макросов и их макрокоманды. Все макросы, созданные в одном окне, будут составлять одну группу макросов. Имя, указанное при сохранении такой группы макросов, будет именем группы, которое выводится в списке макросов в окне базы данных.

Для ссылок на макросы, которые вошли в группу макросов, используется следующий синтаксис:

<Имя Группы Макросов>.<Имя Макроса>.

Использование условий в макросе. 

Условия позволяют задать порядок передачи управления между макрокомандами в макросе и обеспечивают выполнение определенных ветвей алгоритма. Например, если в макросе проверяется значение поля в форме на соответствие заданным условиям, то для одних значений может потребоваться вывести сообщение, а для других значений — произвести вывод отчета.

Условие вводится в строку макрокоманды в столбец Условие. Столбец Условие вызывается в окно макроса нажатием соответствующей кнопки на панели инструментов. Условие задается с помощью логического выражения.

Рис.1 – Конструктор макросов

Задание -  Создайте группу макросов которая позволяет открыть форму, добавить поле и запись,  закрасить это поле зеленым цветом. Продумайте условие (в нужное  время перейти не в форму а отчет,  стипендию получают те студенты у которых по информатике – 4 и математике не ниже -3).

Для организации ветвлений в программе наряду с условиями нужно использовать макрокоманды Остановить Макрос и Запуск Макроса, последняя из которых позволяет создавать также циклы в программах.

Организация выполнения макросов. При запуске макроса выполнение начинается с первой макрокоманды и следует по алгоритму, реализуемому макросом. В процессе выполнения проверяются условия и в зависимости от результата выполняются те или иные макрокоманды или макросы. При вызове другого макроса управление передается вызванному макросу. Вызванный макрос может выполняться несколько раз. После выполнения вызванного макроса управление возвращается к вызывающему макросу и продолжается выполнение его макрокоманд. При этом, следуя алгоритму, макрос выполняется по одному из заранее определенных путей из множества возложенных. Таким образом, макрос сам выбирает этот путь в зависимости от условий.

В Ассеss имеется возможность организовать выполнение макросов, используя механизм расширенной обработки событий (т. е. результатов действий пользователя). Ассеss распознает определенные события, к которым может привязываться запуск макроса. Событиями, например, являются открытие отчета, ввод новых данных, элементов управления в форме или перевод фокуса на другую запись или поле в форме, щелчок мышью. Существуют события формы, события элемента управления, события записи и раздела формы, события отчета и раздела отчета. Различные события вызывают различную реакцию системы, поэтому порядок выполнения макросов зависит от порядка возникновения событий и в значительной степени определяется действиями пользователя в формах. При этом управление программой в основном осуществляется пользователем, который выполняет различные действия, а программа реагирует на них.

Задание -  Организовать работу 3 – х макросов, 1го- по щелчку мыши, 2го-перевод фокуса на другую запись, 3-го- по нажатии на рисунок (рисунок внедрите на форму(отчет)).

  1.  Импорт и экспорт данных

2.1. Импорт данных из электронных таблиц. MS Access позволяет импортировать данные из файлов электронных таблиц, созданных в Lotus 1-2-3 и MS Excel. Причем в базу данных MS Access может импортироваться либо часть электронной таблицы, либо файл электронной таблицы целиком.

2.1.1. Подготовка электронной таблицы. Запустить приложение MS Excel. Разработать электронную таблицу по учету кадровой информации по студентам отдельной группы- на основе лабораторной работы по MS Excel.

При разработке электронной таблицы необходимо учитывать, что MS Access определяет типы данных для полей новой таблицы, анализируя значения в первых 25 импортируемых строках. Кроме того, если первая строка электронной таблицы содержит заголовки столбцов, то их можно использовать в качестве имен полей новой таблицы MS Access.

Сохранить файл таблицы в личной папке  под именем Кадровый учет. Закрыть приложение MS Excel.

2.1.2. Импорт электронной таблицы. Запустить приложение MS Access и создать БД Кадровый учет. Выполнить закладку на ленте Внешние данные / Импорт/Excel. В диалоговом окне Внешние данные найти созданный ранее файл Кадровый учет и нажать кн. Импорт.

 

Укажите, когда и где сохранить данные в текущей базе – Импортировать данные источника в новувую…… нажать кн. Ок.

Во втором диалоговом окне мастера установить кнопку  – листы или Именованные диапазоны, нажать кн. ОК.

В следующем диалоговом окне мастера установить – первая строка содержит заголовки столбцов, нажать кн. Далее.

В следующем диалоговом окне мастера проверьте описание полей, а для ключевого поля проверить индексы, нажать кн. Далее.

В следующем диалоговом окне мастера назначьте автоматическое создание ключа, нажать кн. Далее.

В последнем окне мастера назовите таблицу или лист, нажмите Готово.

Задание -  Провести импорт этой-же таблицы в режимах связанная таблица(обеспечение режима автоматизации) и добавьте записи из таблицы в таблицу Кадры.

2.2. Экспорт данных в электронную таблицу. Откройте базу данных ИС_Учет_Успеваемости. В окне базы данных в области переходов выделить таблицу Электронный журнал, выполнить команду Внешние данные / Экспорт… . В диалоговом окне выберите - место назначения, формат и параметры, нажать кн. ОК.

В поле Тип файла диалогового окна Сохранение объекта установить – Microsoft Excel 2003(07), имя файла оставьте тем же, а текущий каталог выберите самостоятельно, нажать кн. Ок.

Открыть приложение Microsoft Excel и открыть в нем таблицу Электронный журнал. Посмотреть содержимое таблицы и сделать выводы.

Задание -  Провести экспорт этой-же таблицы в приложения – HTML, Word, XML и покажите результаты в соответствующих приложениях.

3. Создание сетевых информационных систем

3.1. Репликация баз данных. Чтобы использовать базу данных в сети, необходимо соответствующим образом настроить ее параметры и параметры ее объектов, а также определить особенности общего доступа к данным. Репликацией называется средство для организации работы с одной базой данных на разных компьютерах сети. Репликация – это создание специальных копий базы данных, между которыми осуществляется обмен данными, называемый синхронизацией.

Существует несколько способов репликации. Ниже рассмотрена так называемая репликация средствами Access.

! Формат ACCDB-файлов не поддерживает репликацию

  1.  Использовование реплицированную базу данных в формате MDB. Функциональные возможности репликации для файлов формата MDB поддерживаются по-прежнему (Access 2003).

Откройте базу данных  ИС_Учет_Успеваемости и выполните команду Сервис/Репликация/Создать реплику. В появившемся окне щелкните Да для подтверждения закрытия БД.

В окне с запросом о создании резервной копии базы данных выбрать Создать.

После указанных действий база данных ИС_Учет_Успеваемости будет преобразована в основную реплику и появится диалоговое окно Размещение новой реплики, в котором необходимо указать папку для размещения новой реплики и можно задать ее имя. После нажатия кнопки ОК, создание реплики будет завершено.

Откроем два раза приложение Access на своем компьютере и загрузим базы данных ИС_Учет_Успеваемости и Реплика для ИС_Учет_Успеваемости, тем самым, эмитируя сетевую работу с базой данных двумя пользователями.

Добавляя и удаляя записи в одной из баз данных и выполняя затем команду Работа с базами данных убедитесь в обмене данными между базами. Обратите внимание на приоритет между базами.

2) Повторное создание базы данных в формате файлов Office Access 2007 вручную

Если предполагается, что новый формат файлов имеет преимущества, которые важнее преимуществ, предоставляемых репликацией, можно создать новую базу данных в формате Office Access 2007 и повторно создать реплицированную базу данных вручную.

Перед началом повторного создания базы данных следует убедиться, что отображаются все скрытые и системные объекты. Это необходимо для того, чтобы после повторного создания реплики иметь доступ к полям, предназначенным для реплики.

Откройте реплику, которую нужно преобразовать. Чтобы отображались скрытые и системные поля, следует открывать реплику при помощи той же версии Access, которая была использована при создании реплики.

В меню Сервис выберите команду Параметры. Откроется диалоговое окно «Параметры».

На вкладке Режим в разделе Показать выберите пункты Скрытые объекты и Системные объекты. Чтобы применить новые значения параметров и закрыть диалоговое окно «Параметры», нажмите кнопку ОК.

  1.  Создайте и откройте пустую базу данных.

 Примечание.    Будет создана новая пустая таблица с именем Таблица1. Эту таблицу следует удалить — закройте ее без внесения каких-либо изменений. Щелкните правой кнопкой мыши вкладку объекта и в контекстном меню выберите команду Закрыть. На вкладке Внешние данные в группе Импорт выберите команду Access. 

  1.  На экране появится диалоговое окно Внешние данные - База данных Access.
  2.  Нажмите кнопку Обзор, чтобы указать расположение реплицированной базы данных.
  3.  Щелкните реплицированную базу данных, содержащую объекты базы данных, которые следует создать повторно в новой базе данных, и нажмите кнопку Открыть. 
  4.  В диалоговом окне Внешние данные - База данных Access установите флажок Импорт таблиц, запросов, форм, отчетов, макросов и модулей в текущую базу данных и нажмите кнопку ОК.
  5.  Выберите объекты базы данных, которые нужно импортировать в новую базу данных. Если предполагается импортировать все объекты, на каждой вкладке нажимайте кнопку Выделить все. 

На этом этапе не следует выбирать таблицы. Они будут повторно создаваться на следующих этапах.

  1.  После завершения выбора объектов нажмите кнопку ОК, чтобы импортировать их. На последней странице мастера можно сохранить шаги процедуры импорта для дальнейшего использования. Для этого установите флажок Сохранить шаги импорта, введите нужные данные и нажмите кнопку Сохранить импорт.
  2.  Откройте реплицированную базу данных в Office Access 2007. В реплицированной базе данных для каждой таблицы создайте запрос на создание таблицы, выбирающий все данные из исходной таблицы и создающий таблицу в новой базе данных с теми же данными.

3.2. Файлы ACCDE являются версией файлов MDE для Office Access 2007. ACCDE-файл – это «блокированная» версия исходного ACCDB-файла. Если ACCDB содержал код VBA, то в файле ACCDE будет содержаться только компилированный код.  В результате пользователь не сможет просмотреть или изменить код VBA. Кроме того, при использовании файлов ACCDE у пользователей нет разрешений на внесение изменений в формы и отчеты. ACCDE-файлы создаются из файлов ACCDB.

Задание -  Сделайте репликацию БД в  Access 2003, а затем импортируйте в Access 2007.

Преобразуйте имеющуюся БД в формат SQL Server используя существующую.

Создайте исполняемый файл базы данных (ACCDE).

Разделите БД – и зашифруйте паролем только таблицы.

Проведите анализ таблиц и устраните недочеты.

Сжать базу данных и посмотреть сколько она стала занимать места.

3.3. Создание Интернет-страниц доступа к данным. Помимо таблиц, запросов, форм и отчетов в Access можно использовать еще один тип объектов работы с данными – страницы доступа к данным (впервые они появились в Access 2000), это веб-страницы, представляющие для просмотра и редактирования данные, хранящиеся в базах данных.

Страницы доступа к данным содержат текст в формате HTML-XML и располагаются в отдельных  HTML-файлах, а их просмотр может осуществляться как из среды Access, так и с помощью Интернет-браузера, например, Internet Explorer.

Чтобы создать, отредактировать или просмотреть имеющиеся страницы доступа к данным нужно перейти на вкладку Страницы панели объектов окна базы данных (Access 2003). Открыть страницу в MS Access можно, либо два раза щелкнуть на ее имя ЛКМ, либо выделить имя страницы и нажать кнопку Открыть. Для просмотра страницы в браузере непосредственно из MS Access нужно вызвать нажатием ПКМ контекстное меню и в нем выбрать Предварительный просмотр веб-страницы, либо не используя MS Access можно просмотреть страницу непосредственно открыв соответствующий ей файл в Интернет-браузере.     

Страница доступа к данным непосредственно связана с данными базы данных, поэтому все изменения, выполненные на странице в окне браузера, сохраняться и в базе данных.

Создадим страницу доступа к данным для таблицы Кадры. Выберем на вкладку Страницы, Создание страницы доступа к данным с помощью мастера. В появившемся окне выберем: Таблицы и запросы – Таблица: Кадры, в качестве выбранных полей переместим все доступные поля таблицы, затем нажмем кн. Готово. После чего создаваемая страница будет открыта в режиме конструктора. Отредактируем название страницы, изменив его на Доступ к таблице Кадры. Сохраним страницу в своей папке. (Возможно, на экране появится окно с предупреждением о том, что для подключения страницы указан абсолютный путь. Проигнорируйте данное сообщение.)  

Закройте MS Access. Откройте страницу доступа к данным  с помощью Internet Explorer. Внесите какие-либо изменения  в таблицу Кадры. Затем откройте MS Access и просмотрите сделанные изменения.

Задание - Создание страницы доступа к данным MS Access 2007.

Представьте в отчете все задания данной части лабораторной работы

Контрольные вопросы

  1.  Поясните технологию написания простых макросов.
  2.  Назовите основные команды макросов доступные в Access.
  3.  В чем состоит технология обмена данными между MS Access и MS Excel?
  4.  Поясните порядок импорта данных из электронной таблицы в базу данных.
  5.  Поясните порядок экспорта данных из базы данных в электронную таблицу.
  6.  Что такое репликация базы данных?
  7.  Поясните методику репликации базы данных средствами Access.
  8.  Для чего нужны и как создаются страницы доступа к данным?

Приложение 1.

Основные элементы управления

Каждая форма Access 2007 обязательно содержит несколько элементов управления, с помощью которых осуществляется доступ к данным, содержащимся в таблицах базы данных. В терминологии Microsoft Access 2007 элементами управления называются улучшающие интерфейс пользователя объекты, которые используются для отображения данных или выполнения других действий и позволяют просматривать данные и работать с ними.

Наиболее широко используемый элемент управления - поле (текстовое или числовое), которое служит для отображения, ввода и корректировки данных, хранящихся в ячейке таблицы базы данных. К распространенным элементам управления форм Access 2007 также относятся кнопки, флажки, переключатели, списки, надписи, а также рамки объектов для отображения графики и объектов OLE.

Создание форм, содержащих необходимые элементы управления, существенно упрощает процесс ввода данных в таблицу и позволяет предотвратить многие ошибки. Программное управление формами и размещенными на них элементами управления осуществляется с помощью процедур, написанных на Visual Basic - встроенном языке программирования Access 2007.

По функциональному признаку любой элемент управления можно отнести к одной из трех следующих групп:

Присоединенные элементы управления - элементы управления, источником данных которых служит поле таблицы или запроса. Каждый присоединенный элемент управления служит для отображения значений соответствующего ему поля базы данных. Значения могут быть текстовыми, числовыми, логическими, датами, рисунками или диаграммами. Например, для текстового поля формы, в котором отображается фамилия служащего, могут использоваться данные поля Фамилия в таблице Служащие.

Свободные элементы управления - элементы управления, не имеющие источника данных (например, поля или выражения). Свободные элементы управления используются для вывода на экран дополнительных сведений, пояснений, линий, прямоугольников и рисунков. Примером свободного элемента является надпись, которая отображает заголовок формы.

Вычисляемые элементы управления - элементы управления, источником данных которых является результат вычисления заданного пользователем выражения, а не поле какой-либо таблицы базы данных. Для указания значения, которое должно содержаться в вычисляемом элементе управления, необходимо задать выражение, служащее источником данных элемента. Выражение - это сочетание математических операторов (+,-,*,/, = ), имен других элементов управления, имен полей, функций, возвращающих единственное значение, и констант.

Например, в следующем выражении рассчитывается цена изделия с 25% скидкой путем умножения значения поля Цена за единицу на константу (0,75):

= [Цена за единицу] * 0,75

В выражении могут использоваться данные поля в базовой таблице или запросе формы или данные из другого элемента управления формы.

Базовые элементы управления, использующиеся при создании форм Access 2007 в режиме Конструктора, расположены в группе Элементы управления контекстной вкладки Конструктор (см. рис.  ).

Рис.  - Контекстная вкладка Конструктор

В состав группы Элементы управления входят следующие кнопки:

-  (Эмблема) - добавляет на форму рисунок, который будет ис- J пользоваться в качестве эмблемы;

- (Заголовок) - служит для вставки заголовка формы;

- (Номер страницы) - добавляет на форму номера страниц;

-  (Дата и время) - добавляет на форму текущие значения даты

и / или времени;

-  (Поле) - добавляет на форму элемент управления «Поле»;

-   (Надпись) - добавляет на форму элемент управления «Надпись»-;

- (Кнопка) - добавляет на форму элемент управления «Кнопка»;

-  (Поле со списком) - добавляет на форму элемент управления «Поле со списком»;

- (Линия) - добавляет на форму элемент управления «Линия»;

-  (Группа переключателей) - добавляет на форму элемент управления «Группа переключателей»;

- (Выключатель) - добавляет на форму элемент управления «Выключатель»;

- (Вставить диаграмму) - добавляет на форму элемент управления «Диаграмма»;

-  (Вставить или удалить разрыв страницы) - добавляет на форму элемент управления «Разрыв страницы»;

- (Список) - добавляет на форму элемент управления «Список»;

- (Прямоугольник) - добавляет на форму элемент управления «Прямоугольник»;

- (Флажок) - добавляет на форму элемент управления «Флажок»;

- (Вкладка) - добавляет на форму элемент управления «Вкладка» (без листов вкладок);

- (Свободная рамка объекта) - добавляет на форму элемент управления «Свободная рамка объекта»;

- (Вставить гиперссылку) - добавляет на форму элемент управления «Гиперссылка»;

- (Подчиненная форма / отчет) - добавляет на форму элемент управления «Подчиненная форма/отчет»;

- (Присоединенная рамка объекта) - добавляет на форму элемент управления «Присоединенная рамка объекта»;

- (Переключатель) - добавляет на форму элемент управления «Переключатель»;

- (Вставить вкладку) - добавляет на форму новый лист вкладки для элемента управления «Вкладка»;

- (Рисунок) - добавляет на форму элемент управления «Рисунок»;

- (Вложение) - добавляет на форму элемент управления «Вложение»;

- (Вставить элемент ActiveX) - позволяет добавить на форму элемент управления ActiveX;

- (Толщина линии) - позволяет изменить толщину линий отмеченного на форме элемента управления;

- (Тип линии) - позволяет изменить тип линий отмеченного на форме элемента управления;

- (Цвет линии) - позволяет изменить цвет линий отмеченного на форме элемента управления;

- (Обычное оформление) позволяет изменить тип оформления;

- (Задать стандартные свойства)- устанавливает стандартные свойства для выделенного элемента управления;

- (Выбрать) - позволяет изменить нужный элемент управления;

- (Выделить все) - позволяет выделить все элементы управления;

- (Использовать мастера) – включает и отключает режим Мастера.

Приложение 2

Что лучше использовать — макросы или программы VBA

Решение о том, какое средство программирования следует использовать - макросы или программы VBA — должно приниматься с учетом двух факторов: безопасности и функциональности. Требования к безопасности обусловлены тем, что на языке VBA можно создать программу, которая способна снизить уровень защиты данных или повредить файлы на компьютере. При работе с базой данных, созданной другим человеком, программы VBA допустимо использовать только в том случае, если база данных получена из надежного источника. Если создаваемая база будет использоваться другими лицами, следует избегать применения программных средств, которые требуют предоставления базе данных статуса надежного источника.

В  большинстве остальных программ Microsoft Office под термином «макрос» понимается программа на языке VBA, поэтому важно не путать этот термин с макросами Access).

Чтобы обеспечить безопасность своей базы данных, следует по возможности стараться применять макросы, прибегая к программированию на языке VBA только в тех случаях, когда нужные операции невозможно выполнить с использованием макрокоманд. Более того, рекомендуется использовать только такие макрокоманды, для выполнения которых не требуется предоставлять базе данных статус надежной. Подобное ограничение при применении макрокоманд позволяет пользователям быть уверенными, что база данных не содержит программ, способных повредить данные или другие файлы на компьютерах. Частично для повышения популярности макросов в Office Access 2007 включено много новых макрокоманд, с помощью которых можно создавать более мощные макросы, чем в предыдущих версиях Access.

Например, теперь в макрокомандах доступно создание и использование глобальных временных переменных. Новые макрокоманды обработки ошибок значительно упростили выполнение этой процедуры. В более ранних версиях Access подобные возможности доступны только в VBA. Кроме того, в Access 2007 можно внедрить макрос непосредственно в свойство события объекта или элемента управления. Внедренный макрос становится частью объекта или элемента управления и переносится при перемещении и копировании таких объектов.

При добавлении программных возможностей в объект или элемент управления рекомендуется использовать следующие ниже варианты в указанном порядке:

  1.  Макрос, содержащий только макрокоманды, для выполнения которых не требуется предоставлять базе данных статус надежной.
  2.  Макрос, содержащий макрокоманды, для выполнения которых требуется предоставлять базе данных статус надежной.
  3.  Процедура VBA

При построении макроса можно переключаться между коротким списком макрокоманд, которые не требуют предоставления базе данных статуса надежной для ее выполнения, и списком всех доступных макрокоманд, для чего нужно нажать кнопку Показать все действия в построителе макросов. При нажатии кнопки Показать все действия будет также выведен полный список аргументов для макрокоманды RunCommand.

Применение макросов облегчает выполнение многих задач по программированию, таких как открытие и закрытие форм, а также выполнение отчетов. С их помощью можно просто и быстро связать созданные объекты базы данных (Объекты базы данных. База данных Microsoft Access может содержать таблицы, запросы, формы, отчеты, страницы доступа к данным, макросы и модули. Проект Microsoft Access может содержать такие объекты как формы, отчеты, страницы макросы и модули.), поскольку практически не нужно запоминать правила синтаксиса. Аргументы (Аргумент. Значение, предоставляющее информацию для действия, события, метода, свойства, функции или процедуры.), доступные для каждой из макрокоманд, отображаются в окне построителя макросов.

Помимо случаев, когда применение макросов обусловлено повышенным уровнем безопасности и удобством в работе, их необходимо использовать для выполнения следующих задач:

- Назначение клавише макрокоманды или набора макрокоманд. Для выполнения этой задачи требуется создать группу макрокоманд с именем AutoKeys. 

- Выполнение макрокоманды или последовательности макрокоманд при первом открытии базы данных. Для выполнения этой задачи требуется создать группу макрокоманд с именем AutoExec. 

 Примечание.    Макрос AutoExec выполняется раньше других макросов или программ VBA, даже если в диалоговом окне Параметры Access указана стартовая форма и для события этой формы OnOpen или OnLoad назначен макрос или программа VBA.

Программы на языке VBA вместо макросов следует использовать для выполнения следующих задач:

- использование встроенных функций или создание собственных функций.     В Access включено множество встроенных функций, например функция IPmt, которая рассчитывает проценты по платежам. Встроенные функции позволяют выполнять вычисления, не прибегая к разработке сложных выражений (Выражение. Сочетание математических и логических операторов, констант, функций, имен полей, элементов управления и свойств, в результате обработки которого получается единственное значение. Выражение может выполнять вычисления, обрабатывать текст или проверять данные.). С помощью программ VBA пользователи могут создавать собственные функции как для решения задач, выходящих за рамки возможностей встроенных функций, так и для замены сложных выражений. Кроме того, пользовательские функции можно использовать в выражениях для выполнения общих операций над несколькими объектами.

- создание и обработка объектов.     В большинстве случаев удобнее создавать или изменять объект в режиме Конструктор (Конструктор. Представление, в котором отображается структура следующих объектов базы данных: таблицы, запросы, формы, отчеты и макросы. В режиме конструктора можно создавать новые объекты базы данных или изменять структуру существующих.) для этого объекта. Однако в некоторых ситуациях может возникнуть необходимость изменить определение объекта в программе. Средства VBA позволяют выполнять обработку всех объектов в базе данных, а также самой базы данных.

- выполнение системных макрокоманд.     Макрокоманда RunApp, включенная в макрос, позволяет выполнить другую программу (например, Microsoft Office Excel 2007) в оболочке Access, однако возможности макросов при работе вне Access ограничены. С помощью программ VBA можно проверить наличие файла на компьютере, воспользоваться возможностями автоматизации (Программирование объектов. Стандартное средство для работы с объектами некоторого приложения из другого приложения или средства разработки. Программирование объектов (ранее называемое программированием OLE) является функцией модели COM (Component Object Model, модель компонентных объектов).) или динамического обмена данными (DDE) (DDE (Dynamic Data Exchange — динамический обмен данными). Протокол обмена данными между приложениями Microsoft Windows.) для обмена данными с другими программами, созданными на платформе Microsoft Windows, такими как Office Excel 2007, а также вызвать функцию библиотеки динамической компоновки (DLL) (Библиотека динамической компоновки (DLL). Набор подпрограмм, которые могут вызываться из процедур Visual Basic и загружаются или связываются с приложением во время его выполнения.) Windows.

\- последовательная обработка записей.    С помощью языка VBA можно последовательно обработать набор записей, выполняя нужные операции с каждой из записей. Напротив, в макросах обработка выполняется в отношении всего набора данных одновременно.

Если программа на языке VBA используется в базе данных, предназначенной для передачи другим пользователям, следует выполнить упаковку и подпись этой базы данных, чтобы пользователи были уверены, что эта программа получена из надежного источника. Дополнительные сведения об упаковке и подписи баз данных см. в статье Обеспечение безопасности баз данных в Access 2007.

Выполнение стандартных задач по программированию с использованием создание кнопок

При добавлении в форму кнопки можно воспользоваться мастером создания кнопок, чтобы начать создание программы для этой кнопки. Этот мастер руководит процедурой создания кнопки, предназначенной для выполнения конкретной задачи. В файле Office Access 2007 (ACCDB-файле) мастер создает макрос, который внедряется в свойство OnClick соответствующей кнопки. В файле MDB или ADP мастером создается программа на языке VBA, поскольку в этих форматах файлов внедренные макросы недоступны. В любом случае полученный в итоге макрос (или программу VBA) впоследствии можно изменить в соответствии со своими потребностями.

  1.  Нажмите кнопку Microsoft Office , а затем выберите команду Открыть. 
  2.  В диалоговом окне Открыть выберите и откройте нужную базу данных.
  3.  В области переходов щелкните правой кнопкой мыши форму, в которую нужно добавить кнопку, и выберите команду Конструктор.
  4.  Убедитесь, что на вкладке Конструктор в группе Элементы управления установлен флажок Использовать мастер.

  1.  На вкладке Конструктор в группе Элементы управления и поля выберите команду Кнопка.

  1.  В сетке формы щелкните место, где нужно разместить кнопку.

Откроется окно создания кнопок.

  1.  На первой странице мастера щелкните каждую из категорий в списке Категории, чтобы увидеть, какие команды можно назначить этой кнопке в мастере. В списке Макрокоманды выберите нужную макрокоманду, а затем щелкните Далее.
  2.  Выберите параметр Текст или Рисунок, чтобы в кнопке отображался соответственно текст или рисунок.

- Если нужно, чтобы отображался текст, его можно изменить в текстовом поле, расположенном рядом с параметром Текст.

- Если нужно отобразить рисунок, будет предложено выбрать один из представленных в списке доступных рисунков. Если требуется другой рисунок, установите флажок Показать все рисунки, чтобы показать все рисунки кнопок, доступные в Office Access 2007, или нажмите кнопку Обзор и выберите нужный рисунок.

Нажмите кнопку Далее.

  1.  Введите понятное имя для кнопки. Этот шаг является необязательным, а данное имя не отображается в кнопке. Однако рекомендуется указывать понятные имена, что упростит ссылку на нужные кнопки впоследствии (например, при настройке переключения между элементами управления на форме с помощью клавиши). Например, если данная кнопка закрывает форму, ей можно присвоить имя cmdClose или CommandClose.
  2.  Нажмите кнопку Готово.  Access поместит созданную кнопку на форму.
  3.  Если нужно просмотреть созданную мастером программу, выполните следующие шаги (необязательно):
  4.  Если окно свойств еще не открыто, нажмите клавишу F4, чтобы открыть его.
  5.  Щелкните вкладку Событие в окне свойств.
  6.  В поле свойства On Click нажмите кнопку .

В Access откроется окно построителя макросов, содержащее макрос, созданный мастером. При необходимости этот макрос можно изменить (дополнительные сведения об изменении макросов см. в разделе Общее представление о макросах или по ссылкам в разделе См. также). По завершении работы с макросом на вкладке Конструктор в группе Закрыть нажмите кнопку Закрыть, чтобы закрыть окно построителя макросов. Если будет выведено приглашение подтвердить сохранение изменений и обновление свойства, нажмите кнопку Да, чтобы сохранить изменения, или кнопку Нет, чтобы отклонить их.

  1.  На вкладке Конструктор в группе Представления нажмите кнопку Представление, а затем щелкните Режим формы.
    Нажмите новую кнопку, чтобы убедиться, что она работает как ожидалось.

Общее представление о макросах

Макрос представляет собой средство, которое позволяет автоматизировать выполнение задач и добавить в формы, отчеты и элементы управления дополнительную функциональность. Например, при добавлении кнопки в форму свойство события OnClick этой кнопки связывается с макросом, содержащим команды, которые должны выполняться при каждом нажатии кнопки.

Полезно представить макрос Access как упрощенный язык программирования, где программа создается путем построения списка макрокоманд (Макрокоманда. Основной компонент макроса; замкнутая инструкция, самостоятельно или в комбинации с другими макрокомандами определяющая выполняемые в макросе действия. В других макроязыках макрокоманды иногда называют просто командами.), которые будут выполнены. При построение макроса каждая из макрокоманд выбирается в раскрывающемся списке, а затем в нее подставляются нужные данные. Макросы позволяют расширять функциональность форм, отчетов и элементов управления, не прибегая к созданию программы в модуле VBA. Макросы содержат поднабор команд, доступных в VBA, и многие пользователи находят более удобным работать с макросами, а не с программами VBA.

Макросы создаются с использованием построителя макросов, окно которого показано на следующем рисунке.

Чтобы открыть построитель макросов:

  •  На вкладке Создание в группе Другие щелкните Макрос. Если эта команда недоступна, щелкните стрелку либо под кнопкой Модуль, либо под кнопкой Модуль класса, а затем щелкните Макрос. 

Дополнительные сведения о создании макросов см. по ссылкам, приведенным в разделе См. также в настоящей статье.

К началу страницы

Общее представление о языке VBA

VBA представляет собой язык программирования, с помощью которого можно создавать в Access мощные приложения. VBA содержит сотни команд, которые позволяют выполнять намного более сложные операции, чем допускается макросами Access.

Возможности VBA можно расширить, воспользовавшись элементами управления сторонних разработчиков или создав собственные функции и процедуры в соответствии со своими потребностями. VBA также можно использовать для интеграции Access с другими программами.

Быстрый способ начать программировать на языке VBA — предварительно построить макрос Access, а затем преобразовать его в программу VBA. Инструкции по этой процедуре содержатся в разделе Преобразование макросов в программы VBA. При этом будет создан новый модуль, содержащий функцию (Процедура Function. Процедура, которая возвращает значение и может быть использована в выражении. Описание такой процедуры начинается с инструкции Function и заканчивается инструкцией End Function.) VBA, выполняющую те же операции, что и макрос. Кроме того, сразу будет открыт редактор Visual Basic, где можно изменить данную процедуру. При работе в редакторе Visual Basic можно щелкнуть ключевые слова и нажать клавишу F1, чтобы открыть справку разработчика Access и узнать больше о каждом из этих ключевых слов. Позже можно более глубоко изучить справку разработчика Access и узнать о новых командах, которые помогут выполнить нужные задачи программирования.

Преобразование макросов в программы VBA

В Office Access 2007 можно автоматически преобразовать макросы в модули или модули класса VBA. Преобразование доступно в отношении макросов, прикрепленных к формам или отчетам независимо от того, представлены ли они как отдельные объекты или являются внедренными макросами. Можно также преобразовать глобальные макросы, не связанные с конкретной формой или отчетом.

Преобразование макросов, связанных с формой или отчетом

Следующая ниже процедура преобразовывает в VBA любые макросы, на которые есть ссылка в форме, отчете или их элементах управления (либо макросы, внедренные в эти объекты) и добавляет программу VBA в модуль класса формы или отчета. Модуль класса становится частью формы или отчета и переносится при перемещении или копировании.

  1.  В области переходов щелкните правой кнопкой мыши форму или отчет и выберите команду Конструктор (Конструктор. Представление, в котором отображается структура следующих объектов базы данных: таблицы, запросы, формы, отчеты и макросы. В режиме конструктора можно создавать новые объекты базы данных или изменять структуру существующих.).
  2.  На вкладке Инструменты для базы данных в группе Макрос щелкните Преобразовать макросы формы или Преобразовать макросы отчета.
  3.  В окне Преобразование макросов формы или Преобразование макросов отчета укажите, нужно ли добавлять программы обработки ошибок в создаваемые этими программами функции. Кроме того, если макросы имели примечания, укажите, должны ли они включаться в функции как комментарии. Нажмите кнопку Преобразовать, чтобы продолжить выполнение процедуры.

Если для формы или отчета существует модуль класса, Access создаст такой модуль и добавит в него отдельную процедуру для каждого макроса, который был связан с формой или отчетом. Кроме того, Access изменит свойства события для формы или отчета таким образом, что впредь вместо макросов будут выполняться новые процедуры VBA.

  1.  Чтобы просмотреть и изменить программу VBA, выполните следующие действия:
    1.  Если форма или отчет открыты в режиме конструктора, а окно свойств не отображается, нажмите клавишу F4, чтобы открыть его.
    2.  На вкладке События окна свойств щелкните одно из полей свойств, которое содержит текст [Процедура события], а затем нажмите кнопку . Чтобы просмотреть свойства событий для отдельного элемента управления, щелкните нужный элемент управления. Чтобы просмотреть свойства событий для всей формы или отчета, выберите в раскрывающемся списке, расположенном в верхней части окна свойств, параметр Форма или Отчет.

Откроется редактор Visual Basic, где будет отображена процедура события в соответствующем модуле класса. Можно выполнить прокрутку вверх или вниз, чтобы просмотреть другие процедуры, включенные в тот же модуль класса.

Преобразование глобальных макросов

  1.  В области переходов щелкните имя макроса, который нужно преобразовать.
  2.  На вкладке Инструменты для базы данных в группе Макрос щелкните Преобразовать макросы.
  3.  В диалоговом окне Преобразование макроса укажите нужные параметры, а затем нажмите кнопку Преобразовать.

Access преобразует макрос и откроет окно редактора Visual Basic.

  1.  Чтобы просмотреть и изменить программу VBA, выполните следующие действия:
    1.  Если в редакторе Visual Basic не отображается окно проекта, выберите в меню Представление команду Окно проекта.
    2.  Разверните дерево под узлом с именем базы данных, в которой ведется работа.
    3.  В узле Модули дважды щелкните модуль Преобразованный макрос-имя макроса.

Нужный модуль будет открыт в редакторе Visual Basic.

Прикрепление функции VBA к свойству события

При преобразовании глобального макроса в VBA полученная программа VBA помещается в стандартный модуль. В отличие от модуля класса, стандартный модуль не является частью формы или отчета. Скорее всего, потребуется связать эту функцию со свойством события формы, отчета или элемента управления, чтобы выполнить ее в нужное время. Для этого можно скопировать программу VBA в модуль класса, а затем связать ее со свойством события либо создать специальный вызов функции, находящейся в стандартном модуле, из свойства события с использованием следующей ниже процедуры.

  1.  В редакторе Visual Basic обратите внимание на имя функции. Например, если был преобразован макрос с именем МойМакрос, имя функции будет МойМакрос().
  2.  Закройте редактор Visual Basic.
  3.  В области переходов щелкните правой кнопкой мыши форму или отчет, которые нужно связать с функцией, и выберите команду Конструктор.
  4.  Щелкните элемент управления или раздел, которые нужно связать с функцией.
  5.  Если окно свойств еще не открыто, нажмите клавишу F4, чтобы открыть его.
  6.  На вкладке Событие в окне свойств щелкните поле свойства события, которое нужно связать с функцией.
  7.  В поле свойства введите знак равенства (=), а за ним имя функции: =МойМакрос(). Убедитесь, что не забыли поставить скобки.
  8.  Сохраните форму или отчет, нажав на панели быстрого доступа кнопку Сохранить .
  9.  В области переходов дважды щелкните форму или отчет, а затем проверьте, что программа выполняется, как ожидалось.

Это основные шаги по добавлению программы VBA в базу данных. В данной статье приводятся только сведения начального уровня. Доступно большое количество справочников и электронных ресурсов, с помощью которых можно усовершенствовать свои навыки в области программирования.


 

А также другие работы, которые могут Вас заинтересовать

55031. Заповідна краса Полтавщини 105 KB
  А чи є необхідністю для людини зривати букети польових та лісових квітів ламати та палити дерева забруднювати береги річок та галявини лісів і нарешті стріляти в беззахисних птахів на світанні Слід пам’ятати що благословенна земля ця не діталася нам у спадщину від батьків ми взяли її в борг у нащадків.
55032. Портфель вчителя 70 KB
  Професійний розвиток вчителя це зростання становлення інтеграція і реалізація в педагогічному працю професійних значущих якостей та здібностей професійних знань і умінь але головне формування у нього здатності до самооцінки рефлексії. Цьому сприяє технологія обєднана під назвою Портфель вчителя...
55033. Портфоліо вчителя або тека досягнень 82 KB
  Робота в методичному обєднанні, співпраця з міським методичним центром, вузами і іншими установами. Участь в професійних і творчих педагогічних конкурсах. Участь в методичних і тижнях. Організація і проведення семінарів, «круглих столів», майстер-класів і т.п. Проведення наукових досліджень.
55034. Портфоліо учня початкових класів 38 KB
  Безумовна цінність портфоліо полягає у тому, що саме портфоліо сприяє підвищенню самооцінки учня, максимальному розкриттю індивідуальних можливостей кожного учня та розвитку мотивації подальшого творчого зростання. Тому вкрай важливо усвідомити для себе і пояснити дитині, що складання портфоліо – це не гонка за дипломами і усілякими грамотами!
55035. Макроэкономическое равновесие и его нарушение 17.93 KB
  Под макроэкономическим равновесием понимается состояние в экономике, при котором пропорции обмена сложились таким образом, что на всех рынках одновременно достигнуто равенство между спросом и предложением.
55036. Портфоліо учня - незамінний порадник учителя, який є носієм інформації про учня як особистість 283 KB
  Контроль та оцінювання навчальних досягнень школярів - тема актуальна, і тому постійно обговорюється. Зазвичай увага зосереджується навколо форм та методів зовнішнього контролю, тобто того, що здійснює вчитель. А як, у якій формі подається учню зростання рівня його знань?
55037. Адаптация молодых специалистов на предприятии ШЧ-5 745 KB
  Повышение роли предприятий-работодателей в системе профессиональной подготовки управленческих кадров. Обучение по охране труда и проверка знаний требований охраны труда работников рабочих профессий при профессиональной подготовке, переподготовке и обучении их вторым профессиям...
55038. Портфоліо як одна з форм оцінювання індивідуальних досягнень учнів початкових класів 214.5 KB
  Відсутність оцінок протягом першого і другого років навчання в початковій школі в жодному разі не повинно розумітися як повна відмова від системи контролю і оцінки з боку вчителя. Навпаки, оцінка замінюється розгорнутою системою взаємин, співпрацею дитини і дорослого у контрольно-оціночної діяльності, яка будується на змістовно-оціночної основі.
55039. ПОРТРЕТ УЧИТЕЛЯ В РІЗНИХ РАКУРСАХ 73 KB
  Тому для одних Учитель це жива конкретна людина симпатична чи не дуже, як поталанило, а для інших - це певна міфологема одиниця легенди, яка необхідна часом людині для самозбагачення, самовиправдання, самоствердження чи просто для того, щоб пам’ять про чарівну частину життя дитинство та молодість...