Создание интерактивных тестов в MS Excel

Программа MS Excel помимо своего основного назначения для работы с большим количеством данных также может быть использована для создания интерактивных тестов для контроля знаний – благо, что Excel содержит большое количество различных функций, в том числе и логических.

А благодаря простоте создания (записи) макросов можно придать тестам интерактивность, даже абсолютно не зная Visual Basic – языка, на котором они пишутся.

Поэтому хочу предложить один из вариантов теста с использованием макросов. Как обычно процедуру создания теста опишем по шагам.

Итак, начнем.

ШАГ 1.

В начале, естественно, надо придумать тест и написать его например на бумаге (или в Worde, Excel , блокноте …), причем количество ответов можно задавать произвольно для каждого вопроса, но лучше не менее 4, иначе вероятность «сдать» тест минимум на 3 становится чуть ли не 100% - ной.

ШАГ 2.

Откроем Excel и переименуем листы книги:

Лист1 – «Начало»

Лист2 – «Тест»

Лист3 – «Результат»

На листе «Начало» выделим все ячейки и зададим им какой – то цвет фона (ФОРМАТ ЯЧЕЙКИ – ВИД), либо сделаем подложку для листа с рисунком ( ФОРМАТ – ЛИСТ – ПОДЛОЖКА)

Аналогично раскрасим и листы «Тест» и «Результат»

ШАГ 3.

Нарисуем на листе «Начало» кнопку - НАЧАТЬ. Точнее говоря это будет на кнопка, а всего лишь рисунок, сделанный, например, с помощью автофигур с панели Рисование. (В дальнейшем этот рисунок станет действующей кнопкой, но после того, как мы назначим ему макрос)

ШАГ 4.

НЕ нашли? Не то? Что вы ищете?

Перейдем на лист «Тест» и создадим там вопросы с вариантами ответов

Рассмотрим для одного вопроса (Вопрос 1):

В ячейке С3 пишем номер вопроса

В ячейке D3 пишем сам вопрос

В ячейке Е3 необходимо задать список вариантов ответа

Для этого встаем в Е3 и заходим в меню ДАННЫЕ – ПРОВЕРКА, где выбираем СПИСОК и в поле ИСТОЧНИК впечатываем через двоеточие варианты ответов.

Нажимаем ОК и список ответов готов – при нажатии на ячейку Е3 будет появляться кнопка, которая раскрывает список ответов и дает возможность выбрать один из них:

Дальше переходим в ячейку F3 и запишем там логическую формулу :

F3 = ЕСЛИ(Е3=”program”;”верно”;”неправильно”) – это означает, что если в ячейке Е3 выбран правильный ответ, то в ячейке F4 выведем слово «верно», иначе выведем «неправильно»

Переходим в ячейку G3, где запишем формулу: =ЕСЛИ(F3="верно";1;0)

Понятно, что в этой ячейке будет значение 1, если ответ верный и 0 – если неправильный. (Это понадобится на следующем листе для подсчета количества верных ответов)

Точно так же мы создадим все 10 вопросов.

Наконец на этом листе нарисуем 2 кнопки : очистить и результат

ШАГ 5.

Перейдем на лист «РЕЗУЛЬТАТ»

Скопируем с листа ТЕСТ столбцы с номерами вопросов и самими вопросами (у меня они соответственно в столбиках С и D.

В столбце Е запишем правильные ответы.

В столбце F будем выводить те ответы, которые выбраны тестируемым, поэтому, например, в ячейке F3 будет формула F3 = тест! Е3 (т. е. здесь отображаются ответы, выбранные на листе ТЕСТ – это для сравнения с правильным ответом)

В ячейке G3 сделаем ссылку на лист ТЕСТ : =тест!F3 (т. е. здесь будет сообщение о том, правильно или неправильно выбран ответ)

Аналогично заполним все остальные ячейки

Нарисуем две кнопки: СНОВА (для повторения теста) и ВЫХОД (для выхода из теста)

В столбце I сделаем две надписи для контроля выполнения теста: ВСЕГО и ВЕРНО

Рядом в столбике J напортив ВСЕГО запишем: 10 (это количество вопросов теста), а напротив ВЕРНО – формулу =СУММ(тест! G3:G21) – т. е здесь будут суммироваться единицы правильных ответов с листа ТЕСТ

ШАГ 6.

Осталось создать макросы и назначить их кнопкам.

Начнем с кнопки НАЧАТЬ на листе НАЧАЛО.

При нажатии на эту кнопку должен открыться лист с вопросами теста (ТЕСТ), содержимое столбца Е с правильными ответами очиститься и выделиться ячейка Е3, чтобы была видна кнопка для выбора первого ответа.

Заходим в меню СЕРВИС – МАКРОС – НАЧАТЬ ЗАПИСЬ. Даем макросу имя и ОК.

И пошла запись макроса, т. е. все, что мы сейчас делаем, будет записано в коде VBA

После этого открываем лист ТЕСТ, выделяем там ячейки Е3 – Е21, нажимаем Delete для очистки содержимого и щелкаем по ячейке Е3 для ее выделения.

Макрос записан. Останавливаем запись.

Кому интересно, можно посмотреть код. Он будет таким:

Sub нач()

'

' нач Макрос

' Макрос записан 05.02.2007 (User)

'

'

Sheets("тест").Select

Range("E3:E21").Select

Selection. ClearContents

Range("E3").Select

End Sub

Назначим этот макрос кнопке НАЧАТЬ. Для этого щелкаем по ней правой и выбираем НАЗНАЧИТЬ МАКРОС:

В появившемся окне выбираем наш макрос и ОК – макрос назначен.

Кнопка (а это уже кнопка, а не автофигура) стала действовать. Если кнопка не действует, то, скорее всего уровень безопасности Excel стоит высокий. Тогда заходим СЕРВИС – МАКРОС – БЕЗОПАСНОСТЬ и ставим низкий уровень безопасности.

Переходим на лист ТЕСТ и там надо создать 2 макроса для кнопок ОЧИСТИТЬ И РЕЗУЛЬТАТ.

Создаем макрос ОЧИСТИТЬ. Запускаем запись макроса, выделяем столбец с выбранными вариантами ответов и нажимаем Delete. Останавливаем запись макроса, затем назначаем его кнопке очистить.

В коде это выглядит так:

Sub очистить()

'

' очистить Макрос

' Макрос записан 04.02.2007 (User)

'

'

Range("E3:E21").Select

Selection. ClearContents

Range("E3").Select

End Sub

Создаем макрос РЕЗУЛЬТАТ. Включаем запись, затем переходим на лист РЕЗУЛЬТАТ. Останавливаем запись и назначаем этот макрос кнопке РЕЗУЛЬТАТ.

И вот его код:

Sub результат()

'

' результат Макрос

' Макрос записан 04.02.2007 (User)

'

'

Sheets("Результат").Select

End Sub

Переходим на лист РЕЗУЛЬТАТ надо создать тоже 2 макроса для возврата к началу теста (кнопка СНОВА) и для выхода из теста (кнопка ВЫХОД)

Для кнопки СНОВА в макросе содержит только действие перехода на лист НАЧАЛО.

Для кнопки ВЫХОД макрос должен перейти на лист НАЧАЛО, а затем сделать завершение работы приложения.

Sub выходной()

'

' выходной Макрос

' Макрос записан 05.02.2007 (User)

'

'

Sheets("начало").Select

Application. Quit

End Sub

Запишем только переход на лист НАЧАЛО, затем откроем макрос и вручную добавим код Application. Quit – завершение работы. Назначим этот макрос кнопке ВЫХОД

В результате при последующем запуске теста он будет открываться с листа НАЧАЛО, что нам и надо, а варианты выбора ответа от предыдущего запуска теста будут очищены, независимо от того ответили мы ДА или НЕТ на вопрос о сохранении изменений при выходе.

ШАГ 7.

И последнее.

Закрепим области, чтобы лист не прокручивался мышкой (ОКНО – ЗАКРЕПИТЬ ОБЛАСТИ)

Уберем ярлычки листов, чтобы нельзя было сразу перейти и посмотреть ответы, уберем сетку, названия столбцов и строк, полосы прокрутки. Все это убираем, заходя в меню СЕРВИС – ПАРАМЕТРЫ:

ВСЕ. Тест готов. Запускаем и пробуем.

В качестве примера в папке приложен тест (лист Excel), который называется ПРИМЕР. Он полностью работоспособен и поможет Вам разобраться.

ЗАКЛЮЧЕНИЕ:

Возможности Excel и простота создания макросов дают возможность разрабатывать самые различные по форме и логике выполнения тесты.

В папке «Другие тесты» есть несколько других вариантов создания тестов в Excel (по материалам Интернет)