Статистика
Просмотры материалов : 165685Кроссворд. Формулы |
Автор: Александр Хохлов |
06.01.2011 19:10 |
Как создать интерактивный кроссворд в электронных таблицах на основе стандартных функций Excel? Очень просто. Подробная пошаговая инструкция тут. Постановка задачи.Нужно сделать кроссворд так, чтобы после правильного ответа на все вопросы, выдавалось сообщение «Молодец!», в противном случае «Думай еще!». Решим эту задачу на основе стандартных функций Excel 2010.
Действие 1. Создаем сетку кроссворда на первом листе.Одна клеточка - одна буква. Оформление - на ваше усмотрение, слова тоже. Само собой, нужно придумать вопросы к словам. Эту задачу постарайтесь решить самостоятельно. Действие 2. Вспомогательная таблица.Ниже, на том же листе набираем вот такую табличку. Эта вспомогательная таблица нужна для удобства разработчика и будет скрыта от пользователя. В ячейках диапазона F16:F25 набраны правильные ответы к кроссворду. В ячейках диапазона J16:J25 будут вписаны ответы пользователя. Диапазон O16:O25 покажет, совпадают ли правильные ответы с ответами пользователя и, наконец, ячейка O26 отобразит количество верных ответов пользователя. Действие 3. Склеиваем буквы. Функция СЦЕПИТЬ().На этом шаге требуется объединть буквы, введенные пользователем при заполнении кроссворда, в слова. Используя функцию СЦЕПИТЬ(), склеим значения ячеек диапазона F3:M3. Обратите внимание, что ячейки диапазона последовательно указываются через точку с запятой. Чтобы не запутаться, воспользуемся кнопкой Вставить функцию. При наборе слов, пользователь может использовать строчные и прописные буквы. При сравнении правильных ответов и введенных ответов могут возникнуть проблемы. Чтобы этого избежать, используем функцию СТРОЧН() для преобразования прописных букв к строчным. Оставшиеся ячейки диапазона J16:J25 заполните формулами самостоятельно. Действие 4. Считаем результат.Задача состоит в следующем: если, собранное по буквам слово, совпадает с правильным ответом, то пишем в ячейку O16 единицу, в противном случае - пишем ноль. Полученную формулу копируем в диапазоне О16:O25. В ячейке O26 подсчитаем количество правильных ответов, оно будет соответсвовать сумме единиц диапазона O16:025. Если теперь заполнить сетку кроссворда правильными ответами, то результат вспомогательной таблицы будет таким. В случае, если хотя бы одна буква в слове неверна, будет получен такой результат. Действие 5. Вывод сообщений.Теперь, если пользователь отгадал все слова, следует выдать сообщение «Молодец!», иначе - «Думай еще!». Другими словами, если в ячейке O26 записано число 10, значит все слова разгаданы, иначе - допущены ошибки. Используем логическую функцию ЕСЛИ() и в ячейку N27 введем формулу. В ячейке N28 подсчитаем количество слов, которые осталось разгадать. Действие 6. Группировка и блокировка ячеек.Для того, чтобы исключить возможность подсмотреть ответы, скроем вспомогательную таблицу от пользователя. Выделяем диапазон E15:O26 и выполняем команду Данные -> Структура -> Группировать... В появившемся окне выбираем строки, затем жмем ОК. Нажимаем на символ минуса и скрываем группу ячеек. Выполняем команду Рецензирование -> Защитить лист. Вводим пароль, снимаем галочку напротив изменение объектов, нажимаем ОК. Теперь структура листа защищена от изменений и пользователь не сможет раскрыть вспомогательную таблицу.
Действие 7. Результат.Кое-что подправим внешне и, в конечном итоге, получаем такой результат. Или, при наличии ошибок, следующее. |