EXCEL · ЭКСПЕРИМЕНТЫ И ТВОРЧЕСТВО

Excel вышел из-под контроля: игры, музыка, картины и американские горки

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

Что в статье

Если долго смотреть на пустой лист Excel, в нём можно увидеть почти что угодно. Для аналитика это будущий отчёт, для музыканта — сетка, по которой удобно расставлять ноты, а для разработчика игры — поле, на котором будут падать фигурки тетриса. Дальше многое зависит от того, сколько свободного времени человек готов потратить на проверку своей идеи.

Необычные возможности Excel складываются из знакомых элементов: фигур, формул, диаграмм и программного кода VBA. В одних проектах лист служит холстом, в других — интерфейсом, а в третьих помогает рассчитывать движение и изображение. Собрали шесть примеров, в которых табличный редактор оказался на неожиданном месте.

Рисовать пейзажи, которые хочется повесить на стену

На картинах японского художника Тацуо Хориути — цветущие деревья, водопады и горы. По виду трудно догадаться, что для работы он выбрал Excel: гораздо привычнее представить рядом графический планшет и специальную программу для иллюстраций.

Хориути использует автофигуры. Он меняет их форму, задаёт цвет и складывает из множества объектов сложное изображение. В таком рисовании в Excel лист становится большим холстом, поверх которого расположены графические элементы.

Это важная подробность для тех, кто уже мысленно раскрашивает несколько миллионов ячеек. Пейзажи Хориути собраны другим способом: контуры объектов можно подгонять под нужные очертания, а затем выстраивать из них композицию. В 2006 году художник выиграл конкурс Excel Autoshape Art Contest.

Что попробовать: начать с небольшой композиции — горы, солнца и нескольких деревьев. Для такого упражнения достаточно фигур и заливок; сложность будет зависеть прежде всего от количества деталей и терпения автора.

Как устроена работа Тацуо Хориути: картину составляют из множества фигур, которым задают форму и цвет.
Подборка работ Тацуо Хориути, созданных средствами рисования Excel.

Писать музыку, расставляя ноты по сетке

У музыкального секвенсора и таблицы есть внешнее сходство: сетка, в которой события расположены по времени. Дилан Таллчиф довёл эту идею до работающего проекта — сначала сделал драм-машину, а затем представил xlStudio, музыкальную среду внутри Excel.

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

В xlStudio появились редактор нот, управление воспроизведением, зацикливание и экспорт в Ableton Live. Привычная сетка Excel превратилась в место, где можно собирать музыкальную композицию, а затем продолжать работу с ней в специализированной программе.

Что попробовать: если хочется именно услышать результат, изучить готовый проект и его требования. Создание музыкальной среды с нуля потребует программирования; обычная таблица с отметками сама по себе звуки воспроизводить не начнёт.

Ранняя драм-машина Дилана Таллчифа: ритмический рисунок задаётся отметками в ячейках. Это предшественник xlStudio.

Играть в тетрис внутри рабочей книги

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

Один из таких проектов — VBA-Tetris пользователя yipinghuang1991 на GitHub. Автор реализовал тетрис на языке VBA и выложил книгу с макросами. В этом случае Excel предоставляет среду и игровое поле, а поведение игры задаёт код.

Для человека, изучающего программирование, у такой задачи есть понятное преимущество: результат действия сразу виден. Фигура сместилась, повернулась или дошла до нижней границы — можно сравнить происходящее с тем, что должен был сделать алгоритм. Для своей реализации автор указывает Windows 10 и 64-разрядный Excel начиная с версии 2016; другие платформы в описании не заявлены как проверенные.

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

VBA-Tetris пользователя yipinghuang1991: демонстрация игры внутри рабочей книги Excel.

Прокатиться на американских горках

В проекте Джорджа Лунгу из Excel Unusual можно увидеть движение по трассе американских горок. В одной из опубликованных версий автор добавил настройку скорости, длины состава и цветового оформления. В Excel появилась собственная поездка на аттракционе — с возможностью менять параметры.

Для табличного редактора такая модель означает сразу несколько задач: хранить данные, рассчитывать положение объектов и обновлять изображение. На странице проекта автор также обсуждает скорость отрисовки и способы её улучшить. Даже у американских горок в Excel возникает вполне знакомая аналитикам проблема: всё работает, но хочется, чтобы пересчитывалось быстрее.

Что попробовать: начать с демонстрации автора, чтобы оценить устройство модели. Если хочется сделать похожий эксперимент самостоятельно, разумнее сперва научиться перемещать один объект по простой траектории; полноценная трёхмерная поездка потребует заметно больше расчётов и кода.

Кадр демонстрации американских горок Джорджа Лунгу. Справа видны параметры модели.

Управлять самолётом с помощью мыши

У Джорджа Лунгу есть и трёхмерный авиасимулятор. В описанной им версии мышь работает как виртуальный джойстик: движения вперёд и назад меняют тангаж, а в стороны — крен. Пользователь также может регулировать скорость и чувствительность управления.

Для этого проекта особенно важна версия программы. Автор создавал модель для Excel 2003 и более ранних выпусков, а в Excel 2007 и 2010 отмечал медленную отрисовку диаграммы. Поэтому воспринимать её как готовую игру, которая одинаково запустится на любом современном компьютере, было бы преждевременно.

Зато как пример необычного использования Excel симулятор показателен: расчёты, графическое представление и управление соединены в одной рабочей книге. Знакомые инструменты складываются в модель, которую обычно ожидаешь увидеть в отдельной программе.

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

Авиасимулятор Джорджа Лунгу: трёхмерное пространство и виртуальный джойстик на листе Excel.

Разобраться с трёхмерной графикой через трассировку лучей

Разработчик s0lly создал Raytracer-In-Excel — проект для изучения основ трассировки лучей внутри рабочей книги. Этот метод построения изображения связан с расчётом лучей и их взаимодействия с объектами сцены.

Автор предлагает использовать модель, чтобы получить наглядное представление о ray tracing. В инструкции есть управление камерой с клавиатуры и кнопка анимации, которая перемещает её по заранее заданной траектории. Управление запускается макросом.

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

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

Трёхмерная сцена в Raytracer-In-Excel, проекте разработчика s0lly.

С чего начать, если захотелось сделать что-нибудь странное

Самый доступный эксперимент из подборки — небольшая иллюстрация из фигур. Она позволяет попробовать необычные возможности Excel без разработки отдельной программы. Если больше привлекают игры, можно выбрать задачу с простыми правилами и постепенно добавлять управление и оформление.

Музыкальная среда, авиасимулятор и трёхмерная графика потребуют более серьёзного погружения. Здесь полезно заранее разделить две цели: изучить готовую работу автора или создать собственную реализацию. Во втором случае большая часть времени уйдёт на расчёты, код и отладку.

У таких проектов есть хорошая причина существовать: любопытство. Когда привычный инструмент используют в неожиданной задаче, приходится разбираться, из каких частей он состоит и как их можно соединить. Иногда результатом становится новый навык, а иногда — музыкальная композиция в файле, от которого все ожидали только квартальный отчёт.

Короткие ответы о необычных возможностях Excel

Что можно сделать в Excel, кроме расчётов и отчётов?

В Excel создают рисунки из фигур, музыкальные секвенсоры, игры и интерактивные модели. У разных проектов разная основа: графические объекты, формулы, VBA или сочетание нескольких инструментов.

Нужны ли макросы для рисования и игр в Excel?

Для рисунка из фигур макросы не обязательны. В рассмотренном тетрисе логика написана на VBA, а в проекте трассировки лучей макрос отвечает за управление камерой. Требования нужно смотреть у конкретной реализации.

Можно ли повторить всё это без программирования?

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

Проекты и источники изображений

  1. Тацуо Хориути — картины, изображения и описание техники: Amusing Planet.
  2. Дилан Таллчиф и xlStudio — описание и демонстрация: Sound & Video Contractor.
  3. Ранняя драм-машина Дилана Таллчифа — описание и скриншот: Mixdown Magazine.
  4. VBA-Tetris пользователя yipinghuang1991 — проект, GIF-демонстрация и требования: GitHub.
  5. Джордж Лунгу — модель американских горок: Excel Unusual.
  6. Американские горки — видеодемонстрация Джорджа Лунгу, кадр которой использован в статье: YouTube.
  7. Джордж Лунгу — авиасимулятор, скриншот и пояснения: Excel Unusual.
  8. s0lly — Raytracer-In-Excel: проект и инструкция на GitHub.
  9. Изображение Raytracer-In-Excel, использованное в статье: Future CDN.

Больше полезного в нашем блоге

Читайте о работе с данными, визуализации и применении нейросетей в бизнес-задачах.

Перейти в блог