Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

End Sub




End Sub

Rst.Close

End If

Else

Rst.MoveFirst

Rst.Close

End If

Next i

Rst.MoveNext

Else

If rst.EOF And rst.BOF Then

Rst.MoveFirst

Rst.MoveLast

Rst.Close

End If

End If

Else

Next i

Rst.MoveNext

End If

Else

If rst.EOF And rst.BOF Then

Rst.MoveFirst

Rst.MoveLast

Rst.Close

Next i

Rst.MoveNext

End If

If rst.EOF And rst.BOF Then

Rst.MoveFirst

Rst.MoveLast

Rst.Close

End If

Exit Sub

If rst.EOF And rst.BOF Then

Rst.MoveFirst

Rst.MoveLast

Dim strSQL As String

Dim n As Long

Dim s As Long

Dim i As Long

End Sub

FrmStat.Hide

Public rst As Recordset

Public dbsData As Database

Private Sub cmbOk_Click()

Private Sub Form_Activate()

Set rst = dbsData.OpenRecordset("Spisok", dbOpenDynaset)

txtKol.Text = ""

txtSrBall.Text = ""

txtWord.Text = ""

txtExel.Text = ""

txtAccess.Text = ""

' общее количество студентов соответствует количеству записей в таблице Spisok

txtKol.Text = rst.RecordCount

' для подсчета общего балла достаточно взять все оценки из таблицы Ocenki

Set rst = dbsData.OpenRecordset("Ocenki", dbOpenDynaset)

txtSrBall.Text = "0"

s = 0

For i = 1 To rst.RecordCount

s = s + rst.Fields("Ocenka").Value

' при подсчете среднего получится вещественное число, представим его в форматированном виде

txtSrBall.Text = Format(s / rst.RecordCount, "0.00")

' подсчитаем оценки с кодом предмета 1 (Word)

Set rst = dbsData.OpenRecordset("Ocenki", dbOpenDynaset)

txtWord.Text = "0"

s = 0

n = 0

For i = 1 To rst.RecordCount

If rst.Fields("CodPredm").Value = 1 Then

s = s + rst.Fields("Ocenka").Value

n = n + 1

If n = 0 Then

txtWord.Text = "0"

txtWord.Text = Format(s / n, "0.00")

' сформируем запрос который будет содержать только оценки с кодом предмета 2 (Exel)

Set rst = dbsData.OpenRecordset("Select * From Ocenki Where CodPredm = 2", dbOpenDynaset)

txtExel.Text = "0"

s = 0

For i = 1 To rst.RecordCount

s = s + rst.Fields("Ocenka").Value

txtExel.Text = Format(s / rst.RecordCount, "0.00")

' и самый простой вариант - подсчет произвести с помощью SQL запроса

strSQL = "SELECT Sum([Ocenki]![Ocenka])/Count([Ocenki]![Ocenka]) AS Access " & _

"From Ocenki WHERE (((Ocenki.CodPredm)=3));"

Set rst = dbsData.OpenRecordset(strSQL, dbOpenDynaset)

If IsNull(rst.Fields("Access")) Then

txtAccess.Text = "0"

txtAccess.Text = Format(rst.Fields("Access"), "0.00")

Private Sub Form_Load()

Set dbsData = OpenDatabase("dbLaba.mdb")

 

Протестируйте приложение полностью, проверьте работу всех функциональных возможностей.

По окончании скомпилируйте exe-файл своей работы (File – Make Project1.exe), указав свое имя проекта и предоставьте преподавателю для защиты.

 




Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 343; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.