Оглавление:

Побег из листа (головоломка Excel): 5 шагов (с изображениями)
Побег из листа (головоломка Excel): 5 шагов (с изображениями)

Видео: Побег из листа (головоломка Excel): 5 шагов (с изображениями)

Видео: Побег из листа (головоломка Excel): 5 шагов (с изображениями)
Видео: Побил рекорд Гиннеса 2020. 2024, Июль
Anonim
Побег с листа (головоломка Excel)
Побег с листа (головоломка Excel)

Escape the Sheet - это небольшая игра в формате Excel, которую я собрал несколько лет назад, чтобы научить группу коллег более продвинутым навыкам работы с Excel, одновременно немного развлекаясь с викторинами и логическими головоломками, двумя вещами, которые я люблю!

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

Шаг 1: концепция игры

Концепция игры
Концепция игры
Концепция игры
Концепция игры

Для написания игры вам действительно не нужен большой опыт программирования или дорогостоящее программное обеспечение, вот то, что вы можете сделать в excel.

Игра представляет собой небольшую 2-партерную игру, первый уровень представляет собой викторину.

В системе есть банк из 50 вопросов, хотя, если вы захотите, их может быть больше.

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

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

Как только на 5 вопросов будут даны ответы, система сообщит игроку, что они не увенчались успехом, и попытается повторить попытку или откроет комнату 2.

Комната 2 - это логическая головоломка, в которой последовательность цветов также генерируется случайным образом, и игрок может восстановить ее в любое время. Каждый из цветов связан с числом 1-10, игрок должен использовать метод проб и ошибок / памяти, чтобы найти числа, которые соответствуют, и воспроизвести последовательность.

Шаг 2: установка

Установка
Установка

Первоначально я установил рабочую тетрадь с 4 пустыми листами.

Начиная с листа 3, я создал таблицу с заголовком «Вопрос» и «Ответ».

В столбце A с использованием автозаполнения вводятся номера 1-50, важно, чтобы вопросы были пронумерованы для процесса отбора.

Затем я просматриваю в Интернете 50 вопросов с числовыми ответами.

Теперь нам нужен способ импортировать эти вопросы на экран Комнаты 1 на листе 1.

Это делается с помощью функции ВПР, это позволяет нам использовать число в начале строки вопроса. Однако, если бы мы просто использовали 1–5 из листа «Комната 1», мы бы получили только первые 5 вопросов и в том же порядке. Здесь появляется лист 2, здесь 2 строки формул, первая использует функцию RANDBETWEEN, это позволяет пользователю ввести диапазон, между которым будет сгенерирована случайная запись. Проблема в том, что с таким маленьким диапазоном, как этот, высока вероятность того, что будут дубликаты, и это не сделает очень сложной викторину. Чтобы преодолеть это, есть второй столбец, который продвигает этот шаг дальше и удаляет дубликаты с помощью функций RANK. EQ и COUNTIF, они ранжируют значение по сравнению с остальной частью списка и подсчитывают, есть ли повтор значения в Полный список, эти значения складываются вместе, и это дает случайное и уникальное значение. Мы можем подтвердить это, скопировав список, затем вставив значения и отсортируя от наименьшего к наибольшему, это покажет все уникальные значения от 1 до 50.

Вернувшись в комнату 1, мы можем затем использовать ВПР, чтобы взять 1-е, 2-е, 3-е и т. Д. Значение из списка и найти его в листе вопросов как для вопроса, так и для ответа. Каждый раз, когда случайные числа регенерируются, на экране «Комната 1» появляется новый набор вопросов.

Excel настроен на автоматический расчет, это вызывает проблему с функцией СЛУЧАЙНА, потому что каждый раз, когда загружается страница, выполняется расчет и меняет порядок вопросов. Это можно настроить на покупку вручную, перейдя к формулам на ленте, затем к параметрам расчета и настройке вручную, мы позаботимся о расчетах позже.

Прежде чем мы закончим с этой страницей, мы скрываем столбец C (фактические ответы).

Шаг 3. Проверка ответов

Проверка ответов
Проверка ответов

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

Сценарий VBA запрограммирован в виде кнопки для запуска вычислений и проверки ответов.

Чтобы добавить кнопку, перейдите к разработчику на ленте, добавьте кнопку с помощью Insert -> Button

Как только вы нарисуете кнопку, появится возможность добавить новый макрос. В данном случае я назвал это проверкой ответов

Все, что это делает, это запускает расчет (только для этого листа) и проверяет, совпадает ли сумма ожидаемых ответов с суммой ответов игроков. Если числа не совпадают, появляется окно сообщения, в котором предлагается повторить попытку, если они успешны, мы отображаем лист для комнаты 2.

Также есть условный формат, помещенный в ячейку B28 со стрелкой, предлагающей пользователю переместить вкладки.

Шаг 4. Получите разные вопросы

Получение разных вопросов
Получение разных вопросов

Чтобы получить новые вопросы для игрока, нам просто нужно повторно запустить вычисления как на листе 2 (лист случайных чисел), так и на листе комнаты 1, это заставляет VLOOKUP ссылаться на новый набор чисел, а также извлекать новые связанные вопросы. Этот фрагмент кода также очищает раздел ответов игроков.

Шаг 5: Комната 2

Комната 2
Комната 2

Комната 2 - это головоломка с логикой и памятью, пользователю представлена последовательность из 6 случайно сгенерированных цветов, здесь снова используется функция RANDBETWEEN с диапазоном от 1 до 10.

Существуют правила условного форматирования, которые в зависимости от числа в ячейке, цвет заливки и шрифта меняются в зависимости от значения.

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

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

Также есть новая кнопка последовательности, позволяющая игроку получать новые цвета, она запускает вычисление, но только для ячеек в строке 10, и очищает ответы игрока в строке 12.

Я попытался загрузить игру, но, поскольку это файл.xlsm, это запрещено, поэтому не стесняйтесь загружать копию отсюда, если у вас есть какие-либо вопросы, напишите мне сообщение.

Рекомендуемые: