Внимание !!! При программировании необходимо ставить имена своих объектов. Используйте Справку Access, для чего выделите интересующее Вас свойство и нажмите клавишу F1.
1. В форме Классы_Список создать две пустые кнопки (после вызова мастера нажать кнопку "отмена"). Открыть свойства первой кнопки. В свойствах Подпись и Имя поставить - ФИО1 (полужирный, красный). Для второй кнопки установите, соответственно, ФИО2 (полужирный, синий). В свойстве кнопки ФИО1 Нажатие кнопки (События) вызвать модуль формы (нажать на кнопку с тремя точками и пункт Программа). Набрать текст программы
Private Sub ФИО1_Click()
[ФИО2].Visible=True
[ФИО2].SetFocus
[ФИО1].Visible=False
End Sub
Выбрать кнопку ФИО2 (см. список Объект вверху) и скопировать туда первую программу, заменив ФИО2 на ФИО1 и наоборот. Для события Открытие формы (свойство формы) создать процедуру
Private Sub Form_Open(Cancel As Integer)
[ФИО2].Visible = False
End Sub
2. Создать пустую кнопку. Задать ей Имя и Подпись - Цвет. Записать процедуру на событие Нажатие кнопки:
Private Static Sub Цвет_Click()
Dim ICv As Long
Dim cv1, cv2, cv3 As Integer
cv1 = Int((254 * Rnd) + 1)
cv2 = Int((254 * Rnd) + 1)
cv3 = Int((254 * Rnd) + 1)
ICv = RGB(cv1, cv2, cv3)
Forms![Классы_Список]!Заголовок.ForeColor = ICv
Forms![Классы_Список]!Школа.BackColor = ICv
Forms![Классы_Список]!Шифр.BackColor = Icv
End Sub
3. Создать кнопку Колич, при нажатии на которую выводится количество учеников в текущем классе:
Private Sub Колич_Click()
Dim FIOdb As DATABASE
Dim FIOrec As Recordset
Dim s, s1 As Variant
Set FIOdb = CurrentDb()
Set FIOrec = FIOdb.OpenRecordset("Классы_Кол", dbOpenDynaset)
FIOrec.FindFirst "[Код_К] = " & CStr(Forms![Классы_Список]![Код_К])
s = FIOrec![Кол]
s1 = FIOrec![Школа]
MsgBox ("Количество учеников в " & Forms![Классы_Список]![Шифр] & " классе " & s1 & " школы - " & CStr(s))
FIOrec.Close
FIOdb.Close
End Sub
В процедуре Классы_Кол - это запрос, в котором вычисляется количество учеников в каждом классе (поле Кол, Код_К - это поле Код_Класса, Шифр - Имя_Класса.
4. Создать поле Кол, в котором при переходе к новому классу будет выводится количество учеников данного классе: Для этого необходимо создать функцию в Общей области, Для чего, находясь в конструкторе, нажмите кнопку Программы на панели инструментов и после строк
Option Compare Database
Option Explicit
введите имя функции Public Function CountKol(). При этом автоматически будет создана процедура, которую необходимо записать следующий текст:
Public Function CountKol()
Dim FIOdb As DATABASE
Dim FIOrec As Recordset
Set FIOdb = CurrentDb()
Set FIOrec = FIOdb.OpenRecordset("Классы_Кол", dbOpenDynaset)
FIOrec.FindFirst "[Код_К] = " & CStr(Forms![Классы_Список]![Код_К])
CountKol = FIOrec![Кол]
FIOrec.Close
FIOdb.Close
End Function
В поле Кол формы в свойство Данные ввести строку - = CountKol(). Создайте надпись для поля Кол - "Количество учеников в классе - ").
5. Изменить программу для кнопок ФИО1 и ФИО2 так, чтобы при нажатии кнопки ФИО1 появлялась кнопка ФИО2 со случайно выбранным цветом текста. Аналогично сделать для кнопки ФИО2 (см. п. 2).
6. Создать в форме "Классы_Список" поля для вывода по каждому классу следующей информации:
- количество девушек;
- количество юношей;
- количество персональных компьютеров;
- фамилию и день рождения самого младшего ученика в классе.
Написать соответствующую процедуру.
7. Создать форму "Статистика по школам" и написать процедуры для просмотра следующей информации:
- количество учеников в школе;
- количество девушек;
- количество юношей;
- количество персональных компьютеров.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.