Рефераты. Автошкола "Кадиллак"

Выпадающий список “Автомобиль” – содержит значение “Любой”, и значения всех автомобилей имеющихся в автопарке школы.

Выпадающий список “Инструктор” – формируется посредством анализа первого поля. И заполняется всеми инструкторами, которые обучают на этой модели автомобиля.

Кнопка “Отчет” – формирует табличный отчет по заданным критериям.

Кнопка “Закрыть” – возвращает в главное меню.

2.5   Отчёты


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

2.5.1 Информация о клиенте


Рисунок 37 – Информация о клиенте


Отчёт “Информация” – отображает всю информацию о выбранном клиенте в таблице. Эта информация содержит помимо общих данных указанных при его регистрации, также и информацию касательно его обучения.

Кнопка “Печать” – открывает диалог отправления этого отчета на печать, а кнопка “Вернуться” – скрывает этот лист и возвращает на форму построения отчета.

2.5.2 Результаты учебы

Рисунок 38 - Результаты учебы


Отчет “Результаты учебы” – отображает все данные по учебе, а именно о сдаче экзаменов, различными категориями учеников. Верхнее поле содержит критерии выбранной категории  (“Статус”, “Год рождения”, “Автомобиль”), ниже идут непосредственно сами количественные результаты сдачи  каждого из экзаменов.

В графе “Итого допущено до экзамена в ГАИ” – отображается количественная информация о том, сколько учеников сдали все внутренние экзамены автошколы.

В графе “Итого сдало экзамен в ГАИ” – отображается количественная информация о том, сколько учеников сдали все экзамены в ГАИ и получили возможность получить права.

В графе “Всего записей в базе” – отображается сколько всего запсией в базе данных, которые удовлетворяют заданному критерию.

Кнопка “Печать” – открывает диалог отправления этого отчета на печать, а кнопка “Вернуться” – скрывает этот лист и возвращает на форму построения отчета.

2.5.3 Статистика инструкторов

Рисунок 39 - Статистика инструкторов


Отчет “Статистика инструкторов” – отображает все данные по результатам сдачи экзаменов у конкретных инструкторов.

Графа “Инструктор” – отображает имя инструктора по которому выдается информация.

Графа “Автомобиль” – отображает марку автомобиля, на которой проводит обучение инструктор.

Графа “Кол-во” записанных учеников – отображает количественную информацию об учениках, обучавшихся у данного инструктора. В расчет принимаются только те, кто уже окончил обучение.

Ниже идет подробная информация по каждому экзамену.

Самая нижняя графа – “Процент полностью сдавших экзамены в ГАИ”, отображает процентную информацию о тех, кто сдал все экзамены в гаи, и получил возможность получить права.

Кнопка “Печать” – открывает диалог отправления этого отчета на печать, а кнопка “Вернуться” – скрывает этот лист и возвращает на форму построения отчета.

 

3. Заключение


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

В ходе выполнения курсовой работы была подробно изучена среда разработки VBA и закреплены следующие навыки:

1)        Создание пользовательского интерфейса.

2)        Создание алгоритмов автоматизирующих процесс работы с базой данных.

3)        Занесение новых значений в базу данных.

4)        Обработка ошибочных данных.

5)        Алгоритмы создания отчетной информации.


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

1)        Добавление новых видов отчетов.

2)        Добавление интерфейсной части по редактированию исходной базы данных (устройство на работу новых сотрудников, расширение автопарка).

3)        Добавление учета посещаемости занятий.

4)        Анализ сдачи экзаменов по сезонам.


4. Литература


1.                                         Горных Е. Н. Программирование на VBA.: Учебное пособие - Челябинск: Изд. ЮУрГУ, 2003.-76 с.

2.                                         Уокенбах Джон. Профессиональное программирование на VBA в Excel 2002.:Пер. с англ. – М.: Издательский дом «Вильямс», 2003. – 784 с.

5. Приложения

Здесь содержатся некоторые листинги кода.


5.1 Главная форма


Кнопка “Клиенты”:

Private Sub bt_client_Click()

MainForm.Hide

ClientForm.Show (0)

End Sub


Кнопка “Выход”:

Private Sub bt_exit_Click()

MainForm.Hide

Application.DisplayFormulaBar = True

Application.CommandBars("Standard").Visible = True

Application.CommandBars("Formatting").Visible = True

Workbooks("cursed2ex.xls").Save

Workbooks("cursed2ex.xls").Close

End Sub


Кнопка “Группы”:

Private Sub bt_group_Click()

MainForm.Hide

GroupForm.Show (0)

End Sub


Кнопка “Статистика сдачи”:

Private Sub bt_stat_Click()

MainForm.Hide

StatForm.Show (0)

End Sub


Кнопка “Статистика инструкторов”:

Private Sub CommandButton1_Click()

MainForm.Hide

InstrForm.Show (0)

End Sub


Кнопка “Справка”:

Private Sub CommandButton2_Click()

MainForm.Hide

MainHelpForm.Show (0)

End Sub


Активация главной формы:

Private Sub UserForm_Activate()

Dim x, y As Integer

x = 0

y = 0

Sheets("База").Activate

Cells(1, 1).Select

all = Selection.CurrentRegion.Rows.Count

For i = 2 To all

    If Sheets("База").Cells(i, 29) = "Ожидает" Then

    x = x + 1

    End If

Next i

For i = 2 To all

    If Sheets("База").Cells(i, 29) = "Обучаемый" Then

    y = y + 1

    End If

Next i

Sheets("Данные").Activate

If Sheets("Данные").Range("I2") = "" Then lb_beg.Caption = "Не установлено" Else lb_beg.Caption = Sheets("Данные").Range("I2")

If Sheets("Данные").Range("J2") = "" Then lb_end.Caption = "Не установлено" Else lb_end.Caption = Sheets("Данные").Range("J2")

If lb_beg.Caption = "Не установлено" Then lb_rest.Caption = "Не установлено"    Else lb_rest.Caption = CDate(lb_end.Caption) - Date

End Sub

5.2 Форма “Справка”

Кнопка “Все ясно!”:

Private Sub CommandButton1_Click()

MainHelpForm.Hide

MainForm.Show (0)

End Sub

Завершение работы формы:

Private Sub UserForm_Terminate()

MainForm.Show (0)

End Sub

Активация формы:

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

5.3 Форма “Группы”


Кнопка “Закрыть”:

Private Sub bt_exitgroup_Click()

GroupForm.Hide

MainForm.Show (0)

End Sub


Кнопка “Сформировать группу”:

Private Sub bt_newgroup_Click()

Dim x, y As Integer

x = 0

y = 0

Sheets("База").Activate

Sheets("База").Cells(1, 1).Select

all = Selection.CurrentRegion.Rows.Count

For i = 2 To all

    If Sheets("База").Cells(i, 29) = "Ожидает" Then

    x = x + 1

    End If

Next i

For i = 2 To all

    If Sheets("База").Cells(i, 29) = "Обучаемый" Then

    y = y + 1

    End If

Next i

If x = 0 Or y > 0 Then

z = MsgBox("Нельзя сформировать группу! ", vbCritical + vbOKOnly, "Автошкола")

Else

GroupForm.Hide

CreateGroupForm.Show (0)

End If

End Sub


Кнопка “Выпустить группу”:

Private Sub bt_unform_Click()

If CDate(Sheets("Данные").Range("J2")) <= Date And lb_cur.ListCount > 0 Then

    x = MsgBox("Вы подтверждаете окончание обучения группы?", vbQuestion + vbYesNo, "Автошкола")

    If x = 6 Then

    Sheets("База").Activate

    Sheets("База").Cells(1, 1).Select

    all = Selection.CurrentRegion.Rows.Count

        For i = 2 To all

            If Sheets("База").Cells(i, 29) = "Обучаемый" Then Cells(i, 29) = "Окончил"

        Next i

    lb_cur.Clear

    Sheets("Данные").Activate

    Sheets("Данные").Range("H2") = ""

    Sheets("Данные").Range("I2") = ""

    Sheets("Данные").Range("J2") = ""

    End If

Else

    If lb_cur.ListCount > 0 Then

        x = MsgBox("Программа обучения еще не пройдена!", vbCritical + vbOKOnly, "Автошкола")

    Else

        x = MsgBox("Группа не набрана!", vbCritical + vbOKOnly, "Автошкола")

    End If

End If

End Sub


Активация формы:

Private Sub UserForm_Activate()

lb_cur.Clear

lb_next.Clear

Sheets("База").Activate

Sheets("База").Cells(1, 1).Select

all = Selection.CurrentRegion.Rows.Count

For i = 2 To all

    If Sheets("База").Cells(i, 29) = "Обучаемый" Then lb_cur.AddItem (Sheets("База").Cells(i, 2) & " " & Sheets("База").Cells(i, 3) & " " & Sheets("База").Cells(i, 4))

Next i

For i = 2 To all

    If Sheets("База").Cells(i, 29) = "Ожидает" Then lb_next.AddItem (Sheets("База").Cells(i, 2) & " " & Sheets("База").Cells(i, 3) & " " & Sheets("База").Cells(i, 4))

Страницы: 1, 2, 3, 4, 5, 6



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.