Конспект урока на тему «Создание электронного журнала в Microsoft Office Excel»

«Создание электронного журнала в Microsoft Office Excel»


Разработчик:

преподаватель информатики:

Ласкин В.О.


e-mail: [email protected]

1 Оформление главной страницы

На первом этапе создания электронного журнала необходимо сформировать страницы журнала, календарно-тематические планы, главную страницу и осуществить навигацию между всеми страницами.

Главную страницу удобнее всего сделать в виде раскрывающегося списка, в котором будут присутствовать две группы: журналы и календарно-тематические планы, а так же два вида отчетов: отчет по часам и отчет по успеваемости (рисунок 1).

Рисунок 1. Главная страница электронного журнала

Для того чтобы структурировать предметы и календарно-тематические планы по группам нужно:

  1. выделить все предметы;

  2. перейти на вкладку Данные, выбрать инструмент Структура → Группировать → Строки.

С левого бока рядом со словом Журналы появиться значок , при нажатии на который раскроется список предметов. Аналогичную операцию нужно проделать с Календарно-тематическими планами.

Для перехода между страницами внутри журнала необходима навигация. Навигацию осуществляем с помощью макросов.

Создадим страницы журнала, календарно-тематического плана, отчетов и назовем их соответственно: математика, информатика, КТП математика и т.д.

Рисунок 2. Создание страниц электронного журнала

Для перехода между страницами будем использовать кнопки, но перед тем как их использовать, нам необходимо активировать инструменты Элементы управления, зайдя в пункт Надстройки и выбрав данный инструмент из списка. Создаем напротив каждого предмета кнопки с названием Перейти и назначаем макрос объекту. В окне Visual Basic вводим следующий код:

Sub Перейти_в_математика()

Worksheets("Математика").Visible = True

Worksheets("Информатика").Visible = False

Worksheets("Русский язык").Visible = False

Worksheets("Физика").Visible = False

Worksheets("Химия").Visible = False

Worksheets("История").Visible = False

Worksheets("КТП Математика").Visible = False

Worksheets("КТП Информатика").Visible = False

Worksheets("КТП Русский язык").Visible = False

Worksheets("КТП Физика").Visible = False

Worksheets("КТП Химия").Visible = False

Worksheets("КТП История").Visible = False

Worksheets("Отчет по часам").Visible = False

Worksheets("Содержание").Visible = False

End Sub

Команда Worksheets("Лист").Visible = False, скрывает лист, команда Worksheets("Лист").Visible = True показывает лист. Присвоив кнопке данный макрос, мы осуществим переход на лист Математика и скроем все остальные листы. Таким образом, присвоив подобный код каждой кнопке, мы осуществим навигацию по данному журналу.

2 Создание страниц электронного журнала

На странице электронного журнала должны присутствовать фамилии учеников, строка для ввода числа занятий, изучаемая тема занятия, а так же поля для ввода оценок. Microsoft Office Excel позволяет нам автоматически считать пропуски занятий студентов и находить средний балл по предмету, поэтому на странице журнала используем дополнительные столбцы пропуски и средний бал. На странице электронного журнала необходимо так же разместить управляющие кнопки для перемещения внутри страниц журнала. Приблизительный вид страницы электронного журнала показан на рисунке 3.

Рисунок 3. Примерное оформление страниц электронного журнала

Для подсчета пропусков необходимо ввести в ячейку следующую формулу =СЧЁТЕСЛИ(E3:BD3;"н"). Данная формула считает все ячейки с диапазона E3 по BD3, которые удовлетворяют условию «в ячейке содержится запись н».

Для подсчета среднего бала может использоваться формула =СРЗНАЧ(E3:BD3). Но так как при наличии пропусков по предмету более чем 30% ученик не аттестуется, считать средний бал не имеет смысла, поэтому имеет место следующая формула:

=ЕСЛИ((C3/52)<0,3;СРЗНАЧ(E3:BD3);"н").

Она анализирует количество пропусков и если их будет меньше 30%, то формула считает среднее значение. В противном случае в ячейку записывается н, что означает, не аттестован.

Для записи тем в ячейках с числами будут использоваться примечания. На данном этапе не стоит создавать и записывать их. Они будут созданы и записаны автоматически при выполнении макроса.

Для навигации по электронному журналу предусмотрены две кнопки: Изменить темы и Содержание. Первая кнопка будет отправлять нас на страницу с календарно-тематическим планом по данному предмету, вторая на главную страницу электронного журнала. Кнопки создаются способом, описанным в пункте 2.

3 Оформление календарно-тематического плана

Определим задачи календарно-тематического плана. Главной задачей календарно-тематического плана будет не только запись изучаемых тем, но и автоматическое заполнение страниц электронного журнала.

Календарно-тематический план будет состоять из таблицы, в которой по порядку будут записаны темы по предмету и трех управляющих кнопок. Первая кнопка называется записать изменения. Функциональное значение данной кнопки – запись тем на страницу журнала. Кнопки перейти в журнал и содержание служат для навигации между страницами журнала.

Приблизительный вид страницы календарно-тематического плана показан на рисунке 4.

Рисунок 4. Оформление календарно-тематического плана

Рассмотрим процесс создания кнопки записать изменения. Данная кнопка содержит в себе следующий макрос.

Sub Записать_в_Математика() {Название процедуры}

Dim B, L As Integer {Переменным B и L назначаем вещественный тип. Переменная B используется для подсчета количества тем, L – используется для обращения к определенным ячейкам}

Worksheets("Математика").Visible = True {Показывает лист Математика}

B = Range(Cells(2, 2), Cells(53, 2)).Count {Переменной B присваивается значение равное количеству тем}

For L = 2 To B + 1 {Цикл, записывающий значения тем из КТП Математика на страницу журнала Математика. Выполняется столько раз, сколько существует тем в календарно-тематическом плане}

Range(Cells(L, 2), Cells(L, 2)).Select {Выделение ячеек с темами КТП Математика}

A = ActiveCell.FormulaR1C1 {Переменной A присваиваются значения ячеек КТП Математика}

Sheets("Математика").Select {Переход на страницу Математика}

Range(Cells(1, L + 3), Cells(1, L + 3)).Select {Выделение ячеек строки для ввода числа занятия}

Range(Cells(1, L + 3), Cells(1, L + 3)).ClearComments {Удаление примечания}

Range(Cells(1, L + 3), Cells(1, L + 3)).AddComment {Добавление примечания}

Range(Cells(1, L + 3), Cells(1, L + 3)).Comment.Visible = False {Примечание будет видимым только при наведении мыши}

Range(Cells(1, L + 3), Cells(1, L + 3)).Comment.Text Text:=A {В примечание записывается содержимое переменной A}

Sheets("КТП Математика").Select {Переход на страницу КТП Математика}

Next L {Конец цикла}

Worksheets("Математика").Visible = False {Делает лист Математика скрытым}

End Sub

Кнопки служащие для перехода по страницам журнала создаются способом, описанным в пункте 2)

4 Создание отчета по проведенным часам

Отчет по проведенным часам будет состоять из таблицы, столбцы которой будут называться По плану, Провел, Осталось. В данных столбцах будут отображаться количество часов, соответствующее государственному стандарту, количество проведенных и оставшихся часов по каждому из предметов. Строки будут включать в себя названия предметов. Последняя строка будет итоговой по всем предметам.

Примерный вид данной таблицы показан на рисунке 5.

Формула в ячейках столбца Провел будет иметь следующий вид:

=СЧЁТ(Лист!E1:BD1),

где вместо слова Лист будет имя листа с соответствующим предметом. Функция счет считает количество непустых ячеек из диапазона строки с числами занятий.

Формула в ячейках столбца Осталось имеет вид =B5-C5. Из ячейки По плану вычитаем значение ячейки Провел.

В последнюю строку вставляем формулу =СУММ(B5:B10), которая считает сумму значений ячеек по всем предметам.

Рисунок 5. Отчет по проведенным часам

Кнопка Содержание осуществляет переход на главную страницу. Оформляется способом, описанным в пункте 2.

5 Создание отчета успеваемости

Основная функция данного отчета показать сведения об успеваемости и посещаемости конкретного ученика. Отчет включает в себя таблицу в строках которой записаны названия предметов. Второй столбец будет содержать оценки по каждому предмету. Последняя строка подсчитывает количество пропусков по всем предметам. На листе так же присутствует элемент управления раскрывающееся меню со списком учащихся и кнопки Сформировать отчет и Содержание.

Примерный вид данного отчета показан на рисунке 6.

Рассмотрим этап создания раскрывающегося меню:

  1. Выбираем инструмент элементы управления → раскрывающееся меню и вставляем данный элемент на страницу.

  2. Добавим в меню список учащихся. Щелчком правой кнопки выбираем пункт формат объекта. В открывшимся окне в поле формировать список по диапазону вводим Математика!$B$3:$B$25, то есть формируем список из списка учеников. В поле Связь с ячейкой вводим $J$1. Данная связь понадобиться нам в написании макроса. Но чтобы пользователь не видел дополнительную надпись, нужно ее замаскировать, изменив цвет текста на белый.

Рисунок 6. Отчет по успеваемости

Создадим кнопку Сформировать отчет и назначим ей следующий макрос.

Sub Отчет_по_успеваемости()

S = Range(Cells(1, 11), Cells(1, 11)).Text {Переменной S присваиваем значение замаскированной ячейки}

Worksheets("Математика").Visible = True {Показывает лист Математика}

Sheets("Математика").Select {Переход на лист Математика}

DDD = "" {Переменная DDD будет хранить оценки по предмету}

A = 0 {A считает количество пропусков}

B = Range(Cells(3, 2), Cells(53, 2)).Count {Переменной B присваивается значение равное количеству учащихся}

For i = 3 To B + 2 {Данный цикл перебирает фамилии учащихся и когда находит нужную фамилию перебирает его оценки и пропуски. Оценки заносятся в переменную DDD, пропуски в A. Данных циклов в программе будет несколько и равно количеству предметов}

If Range(Cells(i, 2), Cells(i, 2)).Text = S Then

For j = 5 To 60

If Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "н" Then

A = A + 1

ElseIf Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "" Then

Else

DDD = DDD + Range(Cells(i, j), Cells(i, j)).FormulaR1C1 + ", "

End If

Next j

Sheets("Отчет по успеваемости").Select

Range(Cells(4, 2), Cells(4, 2)).FormulaR1C1 = DDD {Запись оценок по первому предмету в отчет}

End If

Next i

Worksheets("Информатика").Visible = True

Worksheets("Математика").Visible = False

Sheets("Информатика").Select

DDD = "" {Очищаем переменную DDD для записи в нею оценок по второму предмету}

For i = 3 To B + 2

If Range(Cells(i, 2), Cells(i, 2)).Text = S Then

For j = 5 To 60

If Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "н" Then

A = A + 1

ElseIf Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "" Then

Else

DDD = DDD + Range(Cells(i, j), Cells(i, j)).FormulaR1C1 + ", "

End If

Next j

Sheets("Отчет по успеваемости").Select

Range(Cells(5, 2), Cells(5, 2)).FormulaR1C1 = DDD

End If

Next i

Worksheets("Русский язык").Visible = True

Worksheets("Информатика").Visible = False

Sheets("Русский язык ").Select

DDD = ""

For i = 3 To B + 2

If Range(Cells(i, 2), Cells(i, 2)).Text = S Then

For j = 5 To 60

If Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "н" Then

A = A + 1

ElseIf Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "" Then

Else

DDD = DDD + Range(Cells(i, j), Cells(i, j)).FormulaR1C1 + ", "

End If

Next j

Sheets("Отчет по успеваемости").Select

Range(Cells(6, 2), Cells(6, 2)).FormulaR1C1 = DDD

End If

Next i

Worksheets("Физика").Visible = True

Worksheets("Русский язык").Visible = False

Sheets("Физика").Select

DDD = ""

For i = 3 To B + 2

If Range(Cells(i, 2), Cells(i, 2)).Text = S Then

For j = 5 To 60

If Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "н" Then

A = A + 1

ElseIf Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "" Then

Else

DDD = DDD + Range(Cells(i, j), Cells(i, j)).FormulaR1C1 + ", "

End If

Next j

Sheets("Отчет по успеваемости").Select

Range(Cells(7, 2), Cells(7, 2)).FormulaR1C1 = DDD

End If

Next i

Worksheets("Химия").Visible = True

Worksheets("Физика").Visible = False

Sheets("Химия").Select

DDD = ""

For i = 3 To B + 2

If Range(Cells(i, 2), Cells(i, 2)).Text = S Then

For j = 5 To 60

If Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "н" Then

A = A + 1

ElseIf Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "" Then

Else

DDD = DDD + Range(Cells(i, j), Cells(i, j)).FormulaR1C1 + ", "

End If

Next j

Sheets("Отчет по успеваемости").Select

Range(Cells(8, 2), Cells(8, 2)).FormulaR1C1 = DDD

End If

Next i

Worksheets("История").Visible = True

Worksheets("Химия").Visible = False

Sheets("История").Select

DDD = ""

For i = 3 To B + 2

If Range(Cells(i, 2), Cells(i, 2)).Text = S Then

For j = 5 To 60

If Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "н" Then

A = A + 1

ElseIf Range(Cells(i, j), Cells(i, j)).FormulaR1C1 = "" Then

Else

DDD = DDD + Range(Cells(i, j), Cells(i, j)).FormulaR1C1 + ", "

End If

Next j

Sheets("Отчет по успеваемости").Select

Range(Cells(10, 2), Cells(10, 2)).FormulaR1C1 = A {Запись пропусков в отчет}

Range(Cells(9, 2), Cells(9, 2)).FormulaR1C1 = DDD

End If

Next i

Worksheets("История").Visible = False

End Sub

Кнопка Содержание осуществляет переход на главную страницу. Оформляется способом, описанным в пункте 2.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

  1. Microsoft Office Excel 2003. Учебный курс / В. Кузьмин, СПб.: Питер; Киев: Издательская группа BHV, 2004 493 с

  2. Гарнаев А. Ю., Использование MS Excel и VBA в экономике и финансах. СПб.: БХВ - Санкт-Петербург, 2000 336 с

  3. Информатика. Базовый курс. 2-е издание / Под. Ред. С.В. Симоновича. СПб.: Питер, 2005 – 640 с.: ил.

  4. Информатика: Общий курс: учебник / под. ред. академика РАН В.И. Колесникова. М.: Наука Пресс, 2007 400 с.

  5. Использование макросов в Excel. 2-е изд. / С. Роман. СПб.: Питер, 2004 507 с

  6. Камминг С., VВА для "чайников", 3-е издание. : Пер. с англ. М. : Издательский дом "Вильямc", 2001 448 с

  7. Куприянова А.В., Корнеев В.Н., Excel 2007. Просто о сложном / Наука и техника, СПб. – 2008

  8. Струченков В.И. Методы оптимизации в прикладных задачах / Солон-Пресс, Москва – 2009

  9. Хелдман К., Хелдман У., Excel 2007. Руководство менеджера проекта / Ким Хелдман, Уильям Хелдман. М.: Эксмо, 2008 448 с.

  10. Хорев В. Д., Самоучитель программирования на VBA в Microsoft Office / К.: Юниор/2001 320 с.



Нравится материал? Поддержи автора!

Ещё документы из категории информатика:

X Код для использования на сайте:
Ширина блока px

Скопируйте этот код и вставьте себе на сайт

X

Чтобы скачать документ, порекомендуйте, пожалуйста, его своим друзьям в любой соц. сети.

После чего кнопка «СКАЧАТЬ» станет доступной!

Кнопочки находятся чуть ниже. Спасибо!

Кнопки:

Скачать документ