- •62 Компьютерные информационные технологии: лабораторные работы
- •Лабораторная работа №1
- •Контрольные вопросы
- •Лабораторная работа № 2
- •Контрольные вопросы
- •Контрольные вопросы
- •Лабораторная работа №4 Создание новых таблиц в субд access. Цель работы: в среде субд access освоить следующие приемы:
- •Выполнение работы
- •Контрольные вопросы
- •Лабораторная работа №5 Создание запросов в субд access. Цель работы: в среде субд access освоить следующие приемы:
- •Теоретические положения
- •Выполнение работы
- •Контрольные вопросы
- •Выполнение работы
- •Создание запроса на удаление записей.
- •Лабораторная работа №7 Создание форм в субд access. Цель работы: научиться в среде субд access разрабатывать формы, освоить следующие приемы:
- •Выполнение работы
- •Контрольные вопросы
- •Выполнение работы
- •2.Создание суммарного отчета по сгруппированным данным с помощью мастера отчетов.
- •Контрольные вопросы
- •Лабораторная работа №9 Проектирование и создание базы данных в субд access из указанных атрибутов (полей).
- •Теоретические положения
- •Выполнение работы
- •Лабораторная работа №10 Проектирование и создание базы данных в субд access по своей предметной области.
- •Выполнение работы
- •Контрольные вопросы
- •Лабораторная работа №11 Разработка макросов в субд access. Создание стартовой кнопочной формы.
- •Теоретические положения
- •Выполнение работы
- •Лабораторная работа №12 Защита базы данных
- •Теоретические положения Защита на уровне пользователей
- •Лабораторная работа №13 Изучение объектов dao на примере разработки приложения.
- •Теоретические положения
62 Компьютерные информационные технологии: лабораторные работы
Содержание
Для перехода к нужной работе щелкните ссылку на нее левой клавишей мыши с удерживанием клавиши CTRL
Лабораторная работа №1 1
Автоматизация заполнения базы данных в Microsoft Excel c помощью VBA. 1
Лабораторная работа № 2 7
Преобразование списка Microsoft Excel в формат Microsoft Access 7
Лабораторная работа №3 12
Работа с имеющейся на диске базой данной в СУБД ACCESS. 12
Лабораторная работа №4 14
Создание новых таблиц в СУБД ACCESS. 14
Лабораторная работа №5 17
Создание запросов в СУБД ACCESS. 17
Лабораторная работа №6 21
Создание запросов на изменение в СУБД ACCESS. 21
3.Создание запроса на удаление записей. 23
Лабораторная работа №7 25
Создание форм в СУБД ACCESS. 25
Лабораторная работа №8 28
Создание отчетов в СУБД ACCESS. 28
Лабораторная работа №9 31
Проектирование и создание базы данных в СУБД ACCESS из указанных атрибутов (полей). 31
Лабораторная работа №10 37
Проектирование и создание базы данных в СУБД ACCESS по своей предметной области. 37
Лабораторная работа №11 38
Разработка макросов в СУБД ACCESS. Создание стартовой кнопочной формы. 38
Лабораторная работа №12 44
Защита базы данных 44
Защита на уровне пользователей 44
Лабораторная работа №13 53
Изучение объектов DAO на примере разработки приложения. 53
Лабораторная работа №1
Автоматизация заполнения базы данных в Microsoft Excel c помощью VBA.
Цель работы: освоить в Microsoft Excel следующие приемы:
1) повторить (изучить) в VBA EXCEL разработку приложения с использованием стандартных объектов VBA;
2) последовательное заполнение плоской базы данных через пользовательскую форму.
Выполнение работы
1. Создание пользовательской формы для заполнения базы данных туристов.
Для заполнения базы данных на рабочем листе с помощью редактора VBA (вызывается командой Разработчик/ Visual Basic) создадим диалоговое окно регистрация туристов фирмы "Эх, прокачу'" (рис. 1).
Для этого:
– в редакторе VBA вставить объект UserForm1 (вызывается из строки меню Insert – команда UserForm).
– на объекте UserForm1 из панели элементов ToolBox (строки меню View – ToolBox) разместить следующие объекты так, как показано на рисунке 1: Label (надпись), TextBox (поле), SpinButton (Счетчик), ComboBox (поле со списком), CommandButton (кнопка) и Frame (фрейм или рамка). В одном из фреймов разместить объекты СheckBox (флажок), а во втором – объекты OptionButton (переключатель).
– для создания необходимых надписей на русском языке так, как показано на рисунке 1, можно воспользоваться свойством Caption, имеющемся у всех перечисленных выше объектов. Свойство Caption отображает текст, необходимый пользователю, в надписи объекта. Программа же обращается к объекту по его имени, отображаемом в свойстве Name.
Рис. 1. Диалоговое окно – Регистрация туристов фирмы "Эх, прокачу!"
2. Разработаем программный код (приведен ниже). При этом необходимо разобраться с назначением каждой процедуры кода.
3. Сохраним программу и запустим ее на выполнение
4. Заполним в Excel созданную базу данных пятью записями через пользовательскую форму.
5. Создадим кнопку «Вызов формы» в Excel для активизации пользовательской формы без загрузки редактора VBA. Для этого в меню Элементы управления найдем объект Кнопка, поместим его на активный рабочий лист, изменим надпись на кнопке на «Вызов формы» с помощью команды правой кнопки мыши Свойства – Сaption, дважды щелкнем левой клавишей мыши по Кнопке и перейдем в редактор VBA. В открывшемя листе кода запишем команду UserForm1.Show для отображения пользовательской формы, сохраним проект и запустим на выполнение.
При инициализации диалогового окна программа проверяет, есть ли заголовки у полей создаваемой базы данных о регистрации туристов. Если этих заголовков нет, то программа автоматически создает их. Обратите внимание, что у окна приложения появилось пользовательское имя Регистрация. База данных туристов.
Обсудим, как приведенная ниже программа решает перечисленные задачи и что происходит в программе.
Событие Initialize объекта UserForm1 |
1. Активизирует диалоговое окно. 2. Назначает клавише <Esc> функцию кнопки Отмена, а клавише <Enter> — Вычислить. 3. Назначает кнопкам ОК, Отмена всплывающие подсказки. 4. Закрепляет первую строку так, чтобы она всегда отображалась на экране. 5. Создает заголовки полей базы данных, если они еще не были созданы. 6. Заполняет раскрывающийся список. 7. Устанавливает текст заголовка окна приложения. |
Нажатие кнопки ОК запускает на выполнение процедуру CommandButton1.Click |
1. Определяет номер первой пустой строки в базе данных о регистрации туристов, куда будет введена новая запись. 2. Считывает данные из диалогового окна. 3. Вводит их в первую пустую строку. |
Нажатие кнопки Отмена запускает на выполнение процедуру CommandButton2.Click |
Закрывает диалоговое окно. Устанавливает заголовок приложения, используемый по умолчанию, т. е. удаляет пользовательский заголовок приложения, созданный при активизации формы. |
SpinButton1.Change |
Вводит значение в поле Продолжительность тура. |
Заголовок Рабочего Листа |
Создает заголовки полей базы данных о регистрации туристов. Эти заголовки отображаются с примечаниями. |
ПРОГРАММНЫЙ КОД:
Private Sub CommandButton1_Click()
' Процедура считывания информации из диалогового окна
' и записи ее в базу данных на рабочем листе
' Смысл переменных однозначно определен их названиями
Dim Фамилия As String * 20
Dim Имя As String * 20
Dim Пол As String * 3
Dim ВыбранныйТур As String * 20
Dim Оплачено As String * 3
Dim Фото As String * 3
Dim Паспорт As String * 3
Dim Срок As String * 3
Dim НомерСтроки As Integer
' Номер Строки - номер первой пустой строки рабочего листа
НомерСтроки = Application.CountA(ActiveSheet.Columns(1)) + 1
' Считывание информации из диалогового окна в переменные
With UserForm1
Фамилия = .TextBox1.Text
Имя = .TextBox2.Text
Срок = .TextBox3.Text
If .OptionButton1.Value = True Then
Пол = "Муж"
Else
Пол = "Жен"
End If
If .CheckBox1.Value = True Then
Оплачено = "Да"
Else
Оплачено = "Нет"
End If
If .CheckBox2.Value = True Then
Фото = "Да"
Else
Фото = "Нет"
End If
If .CheckBox3.Value = True Then
Паспорт = "Да"
Else
Паспорт = "Нет"
End If
ВыбранныйТур = .ComboBox1.List(.ComboBox1.ListIndex, 0)
End With
' Ввод данных в строку с номером Номер Строки рабочего листа
With ActiveSheet
.Cells(НомерСтроки, 1).Value = Фамилия
.Cells(НомерСтроки, 2).Value = Имя
.Cells(НомерСтроки, 3).Value = Пол
.Cells(НомерСтроки, 4).Value = ВыбранныйТур
.Cells(НомерСтроки, 5).Value = Оплачено
.Cells(НомерСтроки, 6).Value = Фото
.Cells(НомерСтроки, 7).Value = Паспорт
.Cells(НомерСтроки, 8).Value = Срок
End With
End Sub
Private Sub CommandButton2_Click()
' Процедура закрытия диалогового окна
' Установка заголовка окна приложения по умолчанию
UserForm1.Hide
Application.Caption = Empty
End Sub
Private Sub SpinButton1_Change()
' Процедура ввода значения счетчика в поле ввода
With UserForm1
.TextBox3.Text = CStr(.SpinButton1.Value)
End With
End Sub
Private Sub TextBox3_Change()
' Процедура установки значения счетчика из поля ввода
With UserForm1
.SpinButton1.Value = CInt(.TextBox3.Text)
End With
End Sub
Private Sub UserForm_Initialize()
' Процедура вызова диалогового окна
' и задание элементов раскрывающегося списка
ЗаголовокРабочегоЛиста
' Задание пользовательского заголовка окна приложения
Application.Caption = "Регистрация. База данных туристов"
' Закрытие строки формул окна Excel
Application.DisplayFormulaBar = False
' Задание элементов раскрывающегося списка
With CommandButton1
.Default = True
.ControlTipText = "Ввод данных в базу данных"
End With
With CommandButton2
.Cancel = True
.ControlTipText = "Кнопка отмены"
End With
OptionButton1.Value = True
With ComboBox1
.List = Array("Лондон", "Париж", "Берлин")
.ListIndex = 0
End With
' Активизация диалогового окна
UserForm1.Show
End Sub
Sub ЗаголовокРабочегоЛиста()
' Процедура создания заголовков полей базы данных
' Если заголовки существуют, то досрочный выход из процедуры
If Range("A1").Value = "Фамилия" Then
Range("A2").Select
Exit Sub
End If
' Если заголовки не существуют, то создаются заголовки полей
ActiveSheet.Cells.Clear
Range("A1:H1").Value = Array("Фамилия", "Имя", "Пол", _
"Выбранный Тур", "Оплачено", "Фото", "Паспорт", "Срок")
Range("А:А").ColumnWidth = 12
Range("D:D").ColumnWidth = 14
' Закрепляется первая строка с тем, чтобы она всегда
' отображалась на экране
Range("2:2").Select
ActiveWindow.FreezePanes = True
Range("A2").Select
End Sub