МУ РГР
.pdf6) Создание дополнительных объектов базы данных: форм, отчетов и т.п. Запросы, формы, отчеты строятся на основе таблиц.
а) Создание форм.
Иногда для удобства ввода информации в таблицы применяются формы. В Access можно воспользоваться заготовками форм, соответствующие кнопки расположены на ленте «Создание». Первая заготовка используется для создания формы, в которую можно будет вводить информацию только по одной строке соответствующей таблицы за один раз. Созданная при помощи такой заготовки форма для таблицы «Структура НИИ» представлена на рисунке 9.
Рисунок 9 – Образец формы для таблицы «Структура НИИ»
При большом количестве полей в таблице такая форма очень удобна для ввода данных, она не позволяет случайно пропустить ввод какого-либо поля. При переходе к следующей записи программа проверит уникальность сделанных добавлений и не допустит повтора. Существуют другие формы: разделенная (рисунок 10а), несколько элементов (рисунок 10б). Разделенная форма позволяет видеть на экране данные, введенные в таблицу и поля для ввода. «Несколько элементов» позволяет видеть на экране сразу несколько записей в форме, но это не приемлемо для таблиц с очень большим количеством полей, так как это снижает удобство ввода информации в мелкие по размерам поля. Используя разные типы формы, создаем формы для всех таблиц. После создания форм дополните данные в таблицах по своему усмотрению. Для этого щелкните мышкой по кнопке «Следующая запись» на Строке состояния в нижней части экрана или воспользуйтесь клавишей «Tab», нажимая ее до появления на экране пустой записи в форме.
б) Создание отчетов.
Для того чтобы иметь возможность распечатать данные, имеющиеся в базе, используются отчеты. На первом этапе освоения программы Access целесообразно воспользоваться командой «Мастер отчетов», расположенной на ленте «Создать». В процессе работы «Мастер отчетов» предложит выбрать из списка доступные поля (рисунок 11), для чего можно воспользоваться стрелками > и <, выделяя нужную строку из списка курсором.
11
а б Рисунок 10 – Образцы форм
Рисунок 11 – Список доступных полей при формировании отчета
Далее стоит выбор способа сортировки информации в отчете. Выбираем
сортировка в алфавитном порядке (по возрастанию) для поля «Зарплата».
Далее выбираем «Табличный» макет и книжную ориентацию бумаги, т.к. число полей в таблице небольшое, и она легко разместится на странице достаточно крупным шрифтом. Следующий шаг «Мастера отчетов» предполагает выбор стиля (внешнего вида будущего отчета). На завершающем этапе вы должны выбрать удобное для вас имя отчета и либо просмотреть готовый отчет, либо перейти к редактированию, выбрав команду «Изменить макет отчета». Получаем отчет (рисунок 12).
Рисунок 12 – Этапы создания отчета
12
Теперь нужно изменить длину поля «Фамилия». Для этого нужно навести мышь на заголовок отчета «Досье» и кликнуть левой клавишей, выбрав режим «Конструктор» (рисунок 13). Мышкой нужно растянуть границы поля «Фамилия». В этом же режиме задаются остальные атрибуты формы: цвет и размер формы, шрифта, оформления и т.п. Аналогично создаем отчеты для остальных таблиц.
Рисунок 13 – Режим «Конструктора» для отчета
в) Создание запросов.
Запрос – это некоторая форма представления данных по какому-либо условию. На вкладке «Создание» выберите группу «Другие», инструмент «Конструктор запросов».
Например, нужно вывести в алфавитном порядке все фамилии сотрудников. Этап выполнения и результат представлены на рисунке 14.
Рисунок 14 – Построение запроса и результат его выполнения
Сделаем запрос, который выводит фамилии людей, зарплата которых больше 700 евро (рисунок 15).
В следующем запросе вводим фамилию, по фамилии выводится отдел, в котором служит человек с этой фамилией. В конструкторе создаем запрос: выбираем 3 таблицы в качестве данных (рисунок 16).
Следующий запрос: вывести фамилию человека, дата рождения которого самая ранняя, - то есть он старше всех. Реализация на рисунке 17.
13
Рисунок 15 – Заполнение запроса и результат его выполнения
Рисунок 16 – Организация запроса по фамилии
Рисунок 17 – Организация запроса по возрасту через «Построитель»
Обобщая, можно дать некоторые рекомендации по созданию в «Построителе» запросов. На рисунке 18 представлена условная схема создания запроса с некоторыми условиями.
14
Рисунок 18 - Схема создания запроса
Обозначения на рисунке 18 (место, куда вписывается функция): 1 – если нужно по каждой строчке что-то вывести или сосчитать;
2 – если нужно по столбику данные (сумма, арифметическое и т.д.) или вывести строки по определенному критерию (например, содержащие букву «е»).
Синтаксис написания: «Алиас: функция» (алиас - это короткое имя, поставленное в соответствие реальному, длинному имени функции или набору нескольких функций). Значения некоторых функций:
Like “*p*” – выводит только те записи, в которых присутствует буква р; StrReverse([]) – зеркальный переворот;
Len([])-Len(Replace([]; ‘” “; “”) – считает количество пробелов; LCase([])-уменьшает буквы (регистр);
UCase([])-увеличивает буквы (регистр); Replace([]; “а”; «А») – меняет а на А;
IIf([]>DAvg(“[]”; «[табл.]”); [])-выводит значение больше среднего; Count – расчет количества элементов;
Replace(UCase[]);Left([]; 1; Left(LCase([];1))) - буквы большие, кроме первой.
Для усвоения материала рекомендуется запрограммировать следующие задания (либо через запросы либо через макросы):
1)Сосчитать количество записей или строк в таблице.
2)Сосчитать количество букв в поле; строке; столбце.
3)Сосчитать количество слов в столбце.
4)Сосчитать количество повторений буквы в строке; столбце.
5)Сосчитать среднее арифметическое по строке и столбцу.
6)Вывести записи, начинающиеся и заканчивающиеся на «К».
7)Заменить все «ро» на «то»; сделать все буквы заглавными, кроме «е».
8)Вывести запись без первой буквы и без двух последних.
9)Перевести 2 первые буквы поля в верхний регистр, 1 - в нижний, остальные - в верхний.
10)Подсчитать количество пробелов в поле; сжать лишние пробелы.
11)Осуществить зеркальный переворот поля.
12)Запросить пользователя ввести поле из таблицы, вывести на соответствующую запись всю информацию.
13)По полю подчиненной таблицы, содержащему букву «а» вывести соответствующую ей запись в таблице-источнике.
14)Вывести диалоговое окно с текущей датой; временем.
15)Вывести таймер-заставку.
16)Привести примеры использования операторов Count, Trim, Mid, StrConv, Replace, StrReverse, Date, Len, MsgBox, Left, Right.
15
г) Создание макросов.
Из всех приложений Microsoft (Word, Excel и т.д.) в Access макросы делать проще всего (рисунок 19) так как макросы выполняют уже готовые действия. Чтобы создать макрос, надо воспользоваться инструментом «Макрос» в группе «Другие» ленты Создание. Выбираем какую-либо команду, внизу окна задаем ее параметры, закрываем макрос, давая ему название. Нужен макрос, чтобы он запускался при открытии файла - дайте имя autoexec.
Рисунок 19 – Пример макроса
д) Создание главной кнопочной формы.
Лента Работа с базами данных. Создаем кнопочную форму, нажимаем на кнопку Изменить. В окне нажимаем Создать (рисунок 20). В кнопочной форме создаем новые кнопки и назначаем им функции (например, открыть отчет или выйти), далее закрываем форму, затем открываем ее в режиме конструктора, чтобы задать ей физические характеристики (например, расположение на ней кнопок, цвет и заставку фона, вкладки и т.п.). Примеры оформления кнопочных форм представлены на рисунке 21.
Рисунок 20 – Выбор команды первой кнопки главной кнопочной формы
Рисунок 21 – Примеры выполнения главных кнопочных форм
16
2 Расчетно-графическая работа №2. VBA
Цель работы: изучение возможностей языка программирования; приобретение практических навыков программирования.
2.1 Рабочее задание
Макросы по Word сохранить в один файл, аналогично по Excel. Задание по вариантам указано в таблице 2.
Таблица 2 – Список таблиц базы и полей таблиц с форматами полей
№ |
Пр-е |
Описание действий макросов |
|
|
|
|
|
||
|
|
1.Вывести дату и текущее время, а также показать изменение размера окна. |
||
|
|
2. |
Сочетание клавиш <Ctrl+З>: шрифт - 22 пт, начертание - полужирный, цвет |
|
|
|
текста - синий, подчеркивание - красное, пунктирной линией, регистр теста - |
||
|
Word |
ВСЕ ПРОПИСНЫЕ, выравнивание - по центру. |
||
|
|
3. |
Пользователь нажимает на кнопку, вводит в появившееся окно число, окно |
|
1 |
|
закрывается. При нажатии |
на другую кнопку на форме появляется окно, |
|
|
|
|
|
|
|
|
выдающее введенное число пользователем. |
||
|
|
|
|
|
|
|
1. |
Сделать окно-заставку. |
|
|
Excel |
2. |
Запросить пользователя |
ввести номер столбца, посчитать количество |
|
положительных чисел в столбце таблицы с введенным номером. |
|||
|
|
|||
|
|
3. |
Форматировать область таким образом: ячейка с верхней видимой границей |
|
|
|
|
|
|
|
|
1. |
Вывести диалоговое окно в правом нижнем углу. |
|
|
|
2.Форматирование текста желтым цветом и фиолетовым фоном. |
||
|
Word |
3. Ввести в верхний колонтитул информацию о текущих дате и времени и |
||
|
|
вставить в верхний колонтитул свою фамилию и инициалы, оформив их с |
||
2 |
|
помощью редактора текстовых эффектов WordArt. |
||
|
|
|
|
|
|
|
1. |
Подсчет длины текста в диалоговом окне. |
|
|
Excel |
2. |
Изменить порядок букв на обратный. |
|
|
3. |
Ввод 3 чисел в диалоговое окно, подсчет среднего арифметического и вывод в |
||
|
|
|||
|
|
ячейку подсчитанного значения. |
1.Показать работу генератора случайных чисел.
2.При нажатии на кнопку в документе создавать новый документ и далее работа с выбором значения из списка.
|
Word |
3. |
Создать |
макрос, строящий шаблон таблицы ежемесячных |
расходов |
по |
|
|
питанию. |
При запуске макроса должен появляться шаблон |
таблицы |
с |
|||
|
|
||||||
|
|
названиями всех строк и столбцов, а после заполнения таблицы числами, |
|||||
3 |
|
автоматически должна строиться вертикальная столбцовая диаграмма для |
|||||
|
наглядного представления доли каждой статьи расходов. |
|
|
||||
|
|
|
|
||||
|
|
|
|
||||
|
|
1. |
Отсортировать данные трех таблиц по возрастанию, убыванию (кнопки на |
||||
|
|
форме). |
|
|
|
||
|
Excel |
2. |
Форматировать выделенные ячейки: синим цветом, курсивом и желтым |
||||
|
фоном. |
|
|
|
|||
|
|
|
|
|
|||
|
|
3. |
Запросить пользователя ввести номер строки, посчитать количество |
||||
|
|
отрицательных чисел в строке таблицы с введенным номером. |
|
|
|||
|
|
|
|
||||
4 Word |
1.При открытии файла выводить сообщение со статистикой о файле. |
|
|||||
2. Вывести разные диалоговые окна с оповещением какая кнопка была нажата |
|||||||
|
|
17
для вызова этого окна.
3. Создать макрос, строящий шаблон таблицы рейтинга некоторых известных политиков. При запуске макроса должен появляться шаблон таблицы с названиями всех строк и столбцов, а после заполнения таблицы числами (рейтингами), автоматически должна строиться горизонтальная столбцовая диаграмма для наглядного представления соотношения рейтингов.
|
1. |
Посчитать количество открытых книг, листов. |
|
|
Excel 2. Посчитать число используемых ячеек в текущем листе, книге. |
||
|
3. |
Форматировать выделенную область таким образом: |
|
|
1. |
Использовать функции сравнения и кнопки в документе. |
|
|
2. |
Вывести разные диалоговые окна с оповещением какая кнопка была нажата |
|
|
Word для вызова этого окна. |
||
|
3. |
Вставка даты в текст при нажатии на кнопку в документе и закрытие с |
|
|
сохранением. |
||
5 |
1. При запуске макроса должен появляться шаблон таблицы соответствия между |
||
факультетами университета и количеством заявлений, поданных на этот |
|||
|
|||
|
факультет.с названиями всех строк и столбцов, а после заполнения таблицы |
||
|
Excel числами, автоматически должна строиться круговая диаграмма для наглядного |
||
|
представления соотношения количества абитуриентов каждого факультета. |
2.Подсчет 3 любых текстовых функции через нажатия на кнопку формы.
3.Кнопка в файле на автозаполнение строк простыми числами от — 20 до 20.
|
|
|
|
|
1. |
Вставлять при нажатии на кнопку статистику по приложению. |
||
|
|
|
|
|
2. |
Удаление текущей строки и абзаца. |
||
|
|
|
|
|
3. |
При запуске макроса должен появляться шаблон таблицы ежемесячных |
||
|
|
Word расходов по коммунальным платежам с названиями всех строк и столбцов, а |
||||||
|
|
|
|
|
|
после заполнения таблицы числами, автоматически должна строиться |
||
6 |
|
|
|
|
|
вертикальная столбцовая диаграмма для наглядного представления доли каждой |
||
|
|
|
|
|
статьи расходов. |
|||
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. |
Построить диаграмму по данным таблицы в файле. |
||
|
|
Excel |
2. |
Удаление всех ячеек, равных 50 или -29. |
||||
|
|
3. |
Считать через окно ввода данных 2 числа, вывести в другом окне результат |
|||||
|
|
|
|
|
||||
|
|
|
|
|
|
их произведения. |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. |
Пример расчета и использования InputBox и MsgBox. |
||
|
|
Word 2. Создание нового документа при нажатии на кнопку формы. |
||||||
|
|
|
|
|
3. |
Автозамена в абзаце слова «война» на «МИР». |
||
7 |
|
|
|
|
|
|
|
|
|
|
|
|
1. |
При запуске программы выводить на форме приветственное сообщение. |
|||
|
|
|
|
|
||||
|
|
Excel 2. При нажатии на кнопку создавать новую книгу с именем текущего листа. |
||||||
|
|
|
|
|
3. |
Посчитать количество столбцов и строк в выделенной области. |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. |
Сделать таблицу, в столбцах подсчитать сумму и среднее арифметическое. |
||
|
|
Word 2. При нажатии на кнопку в документе – свернуть файл. |
||||||
8 |
|
|
|
|
3. |
Определить количество цифр в натуральном числе. |
||
|
|
|
|
|
|
|
|
|
|
|
|
1. |
При нажатии на кнопку создавать новую книгу. |
||||
|
|
|
|
|
||||
|
|
Excel 2. Подсчитать количество открытых книг в данный момент. |
||||||
|
|
|
|
|
3. |
Форматировать ячейку таким образом: нижняя грань ячейки видима |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. |
Вывод информационного окна справки. |
|
|
9 |
|
Word |
|
|
2. |
Вывести в левом верхнем углу текущую дату в диалоговом меню. |
|
|
|
|
|
3. |
Перевести заданное в двоичной системе счисление число в восьмиричную |
|
||
|
|
|
|
|
|
|
||
|
|
|
|
|
|
систему. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
|
|
|
|
|
|
|
1. |
Окно-заставка. |
||
|
|
|
Excel |
|
2. Удаление и копирование столбца с данными на текущем листе. |
||||
|
|
|
|
|
|
3. |
Удаление листа в текущем документе. |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. |
Удаление последних текущих 3 строк в файле, абзаца. |
||
|
|
|
|
Word |
|
2. Найти сумму цифр введенного числа. |
|||
|
|
|
|
|
|
3. |
Вывести статистику по файлу. |
||
|
|
|
|
|
|
|
|
|
|
10 |
|
|
|
|
1. |
Переименовать листы в текущей книге через диалоговое окно. |
|||
|
|
|
|
2. |
Удалить последний лист из текущей книги. |
||||
|
|
|
Excel |
||||||
|
|
|
3. |
Даны три числа. Определить, можно ли построить треугольник с длинами |
|||||
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
сторон равными этим числам. |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. |
Закрыть документ после подсчета функции в таблице. |
||
|
|
|
|
Word |
|
2. Форматирование всех «оба» синим цветом в тексте на красном фоне. |
|||
|
|
|
|
|
|
3. |
При нажатии на кнопку создавать новый документ. |
||
|
|
|
|
|
|
|
|
|
|
11 |
|
|
|
|
1. |
При нажатии на кнопку создавать новую книгу с именем текущего листа. |
|||
|
|
|
|
2. |
Удалить данные из ячеек А1:С6. |
||||
|
|
|
Excel |
||||||
|
|
|
3. |
Скопировать данные из ячеек C8, С9, С10, С11 в Е8:Е11 увеличив их в |
|||||
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
несколько раз. |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. |
Вывести окно с предупредительным значком критической ошибки при |
|
|
|
|
|
|
|
|
нажатии на кнопку формы. |
|
|
|
|
|
|
Word |
|
|
2. Найти наименьшее общее кратное двух натуральных чисел. |
|
|
|
|
|
|
|
|
|
3. |
Вывести окно, в котором будет написано крылатое выражение, программно |
|
|
12 |
|
|
|
|
||||
|
|
|
|
|
|
перевернутое задом наперед. |
|
||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. |
Вывести окно любой справочной информации. |
|
|
|
|
|
Excel |
|
|
2. Очистить все ячейки, содержащие числа 1 и -2. |
|
|
|
|
|
|
|
|
|
3. |
Открывает новый файл с любым диалоговым оповещением. |
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. Подсчитывает и выводит в диалоговом окне среднее арифметическое 5 чисел. |
|
|
|
|
|
|
Word |
|
|
2. Вставка ссылки с всплывающей подсказкой. |
|
|
|
|
|
|
|
|
|
3. |
Найти наибольший общий делитель двух натуральных чисел. |
|
131. Для произвольных коэффициентов квадратного уравнения определить количество корней этого уравнения.
|
|
Excel |
|
2. Вывод окна со статистикой документа и даты при нажатии на кнопку в |
|
|
|
|
|
|
документе и на кнопку формы. |
|
|
|
|
|
|
3. |
Расчет значений функций массива данных. |
|
|
|
|
|
|
|
|
|
|
|
1. |
Определить, равна ли сумма двух первых цифр заданного четырехзначного |
|
|
|
Word |
|
числа сумме двух его последних цифр. |
|
||
|
2. |
Форматирование колонок. |
|
|||
|
|
|
|
|||
|
|
|
3. |
Подсчет разности и деления в таблице. |
|
|
14 |
|
|
|
|
|
|
|
|
1. |
Автозаполнение числами столбика по выбору пользователя (ввод в |
|
||
|
|
|
|
|||
|
Excel |
|
диалоговом окне) до 30 любыми числами. |
|
||
|
2. |
Определить, есть ли среди цифр заданного пятизначного числа одинаковые. |
|
|||
|
|
|
|
|||
|
|
|
3. |
Пример использования InputBox, логических функций и MsgBox. |
|
1. При запуске программы выводить сообщение: «Макрос готов!». Word 2. Перевести десятичное целое число в в двоичную систему.
3. Сделать таблицу, в столбцах подсчитать сумму, разность, произведение,
15частное и среднее арифметическое.
1.Форматировать выделенную область таким образом: верхний регистр. Excel 2. Вывести в правом нижнем углу текущее время в диалоговом меню.
3.Переименовать листы именами по запросу пользователя.
19
|
|
1. |
Ввести слово, обрезать первую и последнюю буквы и вывести получившееся. |
|
Word 2. Вывод только номера текущего часа в диалоговом окне. |
||
|
|
3. |
Ввести в диалоговом окне текст, вывести его после кнопки. |
16 |
|
|
|
|
1. |
Сделать окно-заставку. |
|
|
|
||
|
Excel 2. Считать переменные из А3:А10, вывести среднее арифметическое в А12. |
||
|
|
3. |
Скопировать из С10:С20 значения чисел в ячейки D10:D20, умножив на 2. |
|
|
|
|
|
|
1. |
В символьной строке удалить все повторяющиеся слова и вывести |
|
|
полученную строку на экран. |
|
|
Word 2. Ввести текст в диалоговом окне, вывести количество символов в другом окне. |
||
|
|
3. |
Ввести текст в диалоговом окне, вывести его в обратном порядке: с конца к |
17 |
|
началу в документе. |
|
|
|
|
|
|
|
1. |
Вывести информационное сообщение и сообщение о критической ошибке. |
|
Excel |
2. |
Привести пример работы любых 3 логических и 2 статистических функций. |
|
3. |
По данным в ячейках А1, А2, А3 рассчитать площадь по формуле Герона, |
|
|
|
||
|
|
вывести в диалоговом окне результат. |
|
|
|
|
|
|
|
1. |
В символьной строке каждое слово АЫ заменить на слово АлматЫ и |
|
|
полученную строку вывести на экран. |
|
|
Word |
2. |
Вводится номер в диалоговое меню, в файле записывается количество цифр в |
|
введенном номере. |
||
|
|
||
|
|
3. |
Вывести разные диалоговые окна с оповещением какая кнопка была нажата |
|
|
для вызова этого окна. |
181. При нажатии на кнопку создавать новую книгу с именем текущего листа.
2. Вывод окна со статистикой документа и даты при нажатии на кнопку в
|
|
документе. |
|
Excel |
|||
|
3. Определить, содержит ли строка слова - полиндромы (слова, читающиеся |
||
|
|
||
|
|
одинаково слева направо и справа налево) и если содержит, то вывести их на |
|
|
|
экран. |
1.Подсчитать количество строк в таблице, вывести диалоговое окно на экран.
2.Вывести выражение буквами в обратном порядке.
|
|
Word |
|
3. |
Написать программу, шифрующую и расшифровывающую сообщение |
|
|
|
|
|
заменой каждой буквы на букву циклически сдвинутую на N позиций в |
|
|
19 |
|
|
|
алфавите. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. |
Автозаполнение столбика n числами из последовательного массива |
|
|
|
|
|
пользователя. |
|
|
|
|
Excel |
|
|
||
|
|
|
2. |
Удалить данные из ячеек А6:F10, переименовать столбик. |
|
|
|
|
|
|
|
||
|
|
|
|
3. |
В ячейки вводятся даты и время без точек, перевести в нормальный вид. |
|
|
|
|
|
|
|
|
|
|
|
1. |
Замена всех чисел в документе на «число». |
|
|
|
Word 2. Окно-заставка с таймером. |
|
||||
|
|
|
3. |
Вывести в правом верхнем углу текущее время в диалоговом окне. |
|
201. Посчитать количество листов, заполненных строк в текущей книге. 2. Посчитать количество букв «а» в документе.
Excel 3. Символьная строка содержит арифметическое выражение, состоящее из чисел, соединенных знаками сложения, вычитания и умножения. Вычислить значение этого выражения и результат вывести на экран.
|
|
|
|
|
1. |
Форматировать выделенные ячейки: жирным, желтым с красным контуром. |
|
|
|
Word |
|
2. |
Символьная строка представляет собой шестнадцатеричную запись числа. |
|
21 |
|
|
Перевести это число в двоичную систему счисления. |
||
|
|
|
|
|||
|
|
|
|
|
3. |
При нажатии на кнопку закрыть приложение с сохранением. |
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |