Set db = CurrentDb
Set rs = db.OpenRecordset("Товары")
With rs
.MoveFirst
Me![Стоимость кофе] = 0
Do While.EOF = False
If.Fields("Марка") Like "Кофе*" Then Me![“Стоимость кофе”] = _
Me![“Стоимость кофе”] +.Fields("Стоимость товара")
.MoveNext
Loop
End Wtth
End Sub
Рис. 2.5. Форма “Товары”
Пример 2. Найти и вывести на экран номер группы с максимальным количеством студентов и средним баллом в группе более 4,7 в таблице " Группа ".
Private Sub Поиск_Номер_Группы()
Dim db As Database
Dim rs As DAO.Recordset, max As Single, n As Variant
Set db = CurrentDb
Set rs = db.OpenRecordset("ГРУППА")
With rs
.MoveFirst
max =.Fields(1)
.MoveNext
Do While.EOF = False
If.Fields(1) > max And.Fields(2) > 4.7 Then max =.Fields(1): n =.Bookmark
.MoveNext
Loop
.Bookmark = n
MsgBox "Количество студентов - " & max & Chr(13) & "Номер группы - " & _
.Fields(0)
End With
End Sub
Пример 3. Используя библиотеку ADO в окне модуля создать процедуру для заполнения данными поле “Среднее ” таблицы “Урожайность ” (рис. 2.6).
Рис.2.6. Структура таблицы “Урожайность”
Public Sub Расчет_ADO()
Dim connection As New ADODB.connection 'Если база днных текущая, то
'эту строку можно не писать
'Если базу данных нужно открыть на диске, то после этой строки нужно писать
'Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0";Data Sourse=путь к файлу"
Dim rs As New ADODB.Recordset
Dim s As Double, i As Integer, n As Long
With rs
.Open "Урожайность", CurrentProject.connection, adOpenKeyset, adLockOptimistic
.MoveFirst
Do While.EOF = False
s = 0: n = 0
For i = 1 To.Fields.Count - 2
s = s +.Fields(i): n = n + 1
Next i
s = s / n
.Fields(5) = s
.MoveNext
Loop
End With
End Sub
3. СПИСОК ЛИТЕРАТУРЫ
1. Джон Вейскас. Эффективная работа с Microsoft Access 7.0 для Windows.- С-Пб.:Питер, 1997.
2. М.Хэлворсян, М.Янг. Эффективная работа с Microsoft Office 97.- С-Пб.:Питер, 1997.
3. МакФедризг Пол и др. Microsoft Office 97. Энциклопедия пользователя: пер. с англ.-К.: Издательство "ДиаСофт", 1998.
4. К. Гетц, М. Джилберт. Программирование в Microsoft Office. Полное руководство по VBA: пер. с англ.-К.: Издательская группа BHV, 1999.
5. Киммел, Пол. Освой самостоятельно программирование для Microsoft Access 2000 за 24 часа.: пер. с англ.-М.:"Вильямс". 2000.
6. Король В.И. Visual Basic 6.0, Visual Basic for Application 6.0. Язык программирования. Справочник с примерами.-М.: КУДРИЦ-ОБРАЗ, 2000.
7. Каммингс С. VBA для “чайников”: Пер. с англ.: М.:”Вильямс”, 2000.
8. Кен Гетц, Майк Джилберт. Программирование в Microsoft Office: пер. с англ.-К:”Ирина”. BHV, 2000.
9. С.Браун. Visial Basic: учебный курс. – СПб.: Питер, 2001.
10. Ю. Бекаревич, Н. Пушкина. Microsoft Access 2002. –СПб.: БХВ-Петербург, 2003.
4. СОДЕРЖАНИЕ
1. ОСНОВЫ ТЕХНОЛОГИИ MICROSOFT ACCESS………………………………………2
1.1.Введение………………………………………………………………………………. 2
1.2. Что такое базы даннях?................................................................................................2
1.3. Архитектура Microsoft Access……………………………………………………….2
1.4. Создание базы даннях.Создание таблиц. Связывание таблиц.................................3
1.5. Изменение проекта базы даннях.................................................................................9
1.6. Сздание запросов.......................................................................................................11
1.7. Создание и редактирование форм............................................................................ 16
1.8. Создание и редактирование отчетов.........................................................................20
1.9. Создание и применение макросов.............................................................................25
2. РАЗРАБОТКА ПРИЛОЖЕНИЯ ПОЛЬЗОВАТЕЛЯ С ИСПОЛЬЗОВАНИЕМ VBA...28
2.1. Введение.....................................................................................................................28
2.2. Модули Access……………………………………………………………………...28
2.3. Классы и семейства...................................................................................................28
2.4. Объектные модули Microsoft Office………………………………………………..28
2.5. Модели объектов Microsoft…………………………………………………………29
2.6. Модели объектов доступа к данням DAO и ADO………………………………...29
2.7. Ссылки на объекты.....................................................................................................29
2.8. Свойства и методы объектов……………………………………………………….30
2.9. Применение метода DoCmd в программах VBA....................................................30
2.10.Работа с объектами доступа к данным......................................................................33
3. СПИСОК ЛИТЕРАТУРЫ..................................................................................................37
Приложение
ТАБЛИЦЫ БАЗЫ ДАННЫХ УЧЕБНЫЙ ПРОЦЕСС
Таблица 1. Данные таблицы СТУДЕНТ
Номер группы | Номер студента | ФИО | Год рождения | Адрес | + Балл поступления |
Аристов Р.П. | Одесса | 4,25 | |||
Бондаренко С.А. | Одесса | 4,5 | |||
Борисова Е.И. | Николаев | 4,25 | |||
Макова Н.Е. | Херсон | 4,75 | |||
Боярская Н.П. | Херсон | 4,5 | |||
Федоров Д.К. | Николаев | 4,25 | |||
Сидоров И.Р. | Одесса | 4,5 | |||
Андреев А.П. | Измаил | 4,25 | |||
Петров П.Н. | Измаил | 4,75 | |||
Иванов К.К. | Николаев | 4,5 |
Ключевыми полями таблицы СТУДЕНТ являются поля: Номер группы, Номер студента.
Таблица 2. Данные таблицы ГРУПП А
Номер группы | Кол_во студентов | Средний балл |
4,5 | ||
4,4 | ||
4,8 | ||
4,5 | ||
4,8 | ||
3,9 | ||
4,7 | ||
Ключевыми полями таблицы ГРУППА является поле: Номер группы.
Таблица 3. Данные таблицы КАФЕДРА
Код кафедры | Название | Телефон | Зав кафедрой | Фото |
Информатики | 310-13-24 | Игнатьев В.В. | ||
Математики | 310-43-98 | Иванов И.И. | ||
Истории | 310-23-65 | Смирнова И.Б. | ||
Иностранного языка | 310-97-43 | Жданова А.Е. | ||
Физкультуры | 310-87-56 | Плетнев В.А. | ||
Философии | 310-34-12 | Бондаренко В.В. |
Ключевыми полями таблицы КАФЕДРА является поле: Код кафедры.
Таблица 4. Данные таблицы ПРЕПОДАВАТЕЛЬ
Таб номер | ФИО | Уч_степень | Уч_звание | Код кафедры |
Андреев А.П. | д.т.н. | профессор | ||
Апухтин И.С. | к.т.н. | доцент | ||
Глухов И.Л. | к.т.н. | доцент | ||
Сеченов Ю.Б. | к.т.н. | доцент | ||
Чернов В.Б. | к.т.н. | доцент | ||
Блюмкина А.Т. | д.ф.-н. | профессор | ||
Львова В.И. | ассистент | |||
Шапошников И.Т. | д.т.н. | профессор | ||
Новиков П.Н. | ассистент | |||
Ильясов А.А. | к.фил.н. | доцент | ||
Пустынцев Р.Т. | к.ист.н. | доцент | ||
Романов И.П. | к.ист.н. | доцент | ||
Цветков А.И. | к.ист.н. | доцент | ||
Сорокина М.Ф. | к.фил.н. | доцент | ||
Богомолов П.Р. | к.фил.н. | доцент | ||
Лысова М.И. | к.фил.н. | доцент | ||
Шаповалова М.Ф. | к.фил.н. | доцент | ||
Кудряшова Г.М. | ассистент ассистент ассистент ассистент | |||
Жигарева Н.К. | к.пед.н. | доцент | ||
Егорова Н.Н. | ст.преп. | |||
Ермолин Е.Н. | ассистент ассистент ассистент | |||
Логинов А.М. | к.фил.н. | доцент | ||
Яковлев К.В. | к.фил.н. | доцент | ||
Раков А.В. | к.фил.н. | доцент | ||
Соловьев С.И. | ассистент |
Ключевыми полями таблицы ПРЕПОДАВАТЕЛЬ является поле: Таб номер.
Таблица 5. Данные таблицы ПРЕДМЕТ
Код предмета | Название | Всего часов | Лекции | Практика | Число семестров | Программа |
Информатика | ||||||
Математика | ||||||
История | ||||||
Иностранный яз. | ||||||
Философия | ||||||
Физкультура |
Ключевыми полями таблицы ПРЕДМЕТ является поле: Код предмета.
Таблица 6. Данные таблицы ИЗУЧЕНИЕ
Номер группы | Код предмета | Таб номер | Вид занятия | Часы | Ср_балл |
лек | |||||
пр | |||||
лек | |||||
пр | |||||
лек | |||||
пр | |||||
пр | |||||
лек | |||||
пр | |||||
лек | |||||
лек | |||||
пр | |||||
лек | |||||
лек | |||||
пр | |||||
пр | |||||
пр | |||||
лек | |||||
пр |
Ключевыми полями таблицы ИЗУЧЕНИЕ являются поля: Номер группы, Код предмета,Таб номер, Вид занятия.
Таблица 7. Данные таблицы УСПЕВАЕМОСТЬ
Номер группы | Номер студента | Код предмета | Таб номер | Вид занятия | Оценка |
лек | |||||
пр | |||||
лек | |||||
пр | |||||
лек | |||||
пр | |||||
лек | |||||
пр |
Ключевыми полями таблицы УСПЕВАЕМОСТЬ являются поля: Номер группы, Номер студента, Код предмета, Таб номер, Вид занятий
Таблица 8. Данные таблицы ТОВАРЫ
КодТовара | Марка | Описание товара | КодПоставщика | Цена | На складе | Стоимость товара |
Кофе "Добра кава" | Молотый по 100 г | 2,61р. | 2 610,00р. | |||
Кофе "Nescafe Classic" | Растворим. по 100 г | 6,26р. | 3 756,00р. | |||
Кофе "Арабика" | В зернах 100 г | 2,40р. | 3 120,00р. | |||
Кофе "Галка" | Растворим. по 50 г | 2,44р. | 1 366,40р. | |||
Кофе "Галка" | Капучино по 10 г | 3,78р. | 945,00р. | |||
Кофе Maxima | Молотый по 250 г | 4,80р. | 7 200,00р. | |||
Кофе "Віденська кава" | В зернах по 100 г | 1,94р. | 1 396,80р. | |||
Чай Майский | 200 г листовой | 4,66р. | 2 330,00р. | |||
Чай Dilmah | 125 г кр. Лист | 2,95р. | 295,00р. |
Таблица 9. Данные таблицы ПОСТАВЩИКИ
КодПоставщика | ФирмаПоставщика | Город | Страна | ДатаПоставки |
Чаеразвесочная фабрика | Москва | Россия | 04.09.2006 | |
АТ "Галка" | Львов | Украина | 10.08.2006 | |
Dilmah | Штутгарт | Германия | 30.03.2005 | |
Nestle | Франкфурт на Майне | Германия | 11.07.2007 | |
АТ "Свиточ" | Львов | Украина | 12.08.2005 |