Excel начал разрешать несколько значений в одной ячейке

Microsoft отказалась от одного из старейших правил электронных таблиц: «одна ячейка, одно значение». Как рассказал в посте в LinkedIn и в блоге старший продакт-менеджер Excel Джейк Армстронг, теперь в Excel появляются три новые функции, Lists (списки), Arrays in Cells (массивы в ячейках) и Nested Arrays (вложенные массивы), позволяющие держать в одной ячейке сразу несколько значений. Пока это только опциональная предварительная версия (preview), доступная в бета-каналах Excel для Windows и Mac; функцию нужно включать вручную.
В качестве примера пользы Армстронг привёл ситуацию, когда у одного проекта в таблице может быть несколько владельцев: раньше для этого приходилось заводить отдельные столбцы, вспомогательные таблицы либо просто вписывать имена через запятую строкой вроде «Carlos, Henrietta, Jacob» в одну ячейку. Списки позволяют хранить такие значения вместе в одной ячейке, но при этом продолжать работать с каждым элементом отдельно, значения остаются связанными с проектом и одновременно доступны для фильтрации, вычислений и анализа. Массивы в ячейках и вложенные массивы, по словам Армстронга, расширяют виды информации, которые вообще можно представить в таблице Excel.
Сам Армстронг оговаривается: это предварительная функция, и её не стоит использовать в важных рабочих книгах до выхода в общий доступ. В комментариях под его постом в LinkedIn несколько человек отметили, что изменение потенциально может ломать существующие таблицы и снижать прозрачность бизнес-логики, поскольку данные перестают быть видны построчно.
Есть и техническая сторона: внешние библиотеки, которые ожидают, что значение ячейки (cell.value), это всегда строка, число, булево значение или дата, могут не справиться с новым типом данных; при этом Microsoft пока не опубликовала, как списки, массивы в ячейках и вложенные массивы будут записываться в XML-формате .xlsx. Это касается, в частности, библиотек openpyxl, pandas и calamine. То же самое относится к приложениям, импортирующим данные Excel и пока не знающим о существовании многозначных ячеек, экспорту в CSV, Google Sheets, LibreOffice и более старым сборкам самого Excel. Кроме того, пользователям Excel может понадобиться «разворачивать» (flatten) списки и массивы в плоский вид, чтобы такие ячейки корректно работали с уже существующими функциями вроде сводных таблиц (PivotTables), по крайней мере до тех пор, пока эти функции не адаптируют под новую структуру ячеек.
Ключевые факты
- Microsoft вводит в Excel функции Lists, Arrays in Cells и Nested Arrays, позволяющие хранить несколько значений в одной ячейке, впервые за 40 лет существования правила «одна ячейка, одно значение»
- Функции доступны только как опциональная предварительная версия в бета-каналах Excel для Windows и Mac
- Продакт-менеджер Excel Джейк Армстронг предупреждает: пока не стоит использовать эту функцию в важных рабочих книгах до выхода в общий доступ
- Комментаторы в LinkedIn указали на риск поломки таблиц и снижения прозрачности бизнес-логики
- Внешние библиотеки (openpyxl, pandas, calamine) и приложения вроде CSV-экспорта, Google Sheets, LibreOffice могут пока не поддерживать новый тип данных; формат хранения в XML .xlsx Microsoft ещё не раскрыла
Почему это важно
Правило «одна ячейка, одно значение» было одной из фундаментальных основ электронных таблиц на протяжении 40 лет. Отказ от него в Excel, архитектурное изменение, которое меняет саму модель данных, лежащую в основе миллионов таблиц и построенных вокруг них процессов.
Кому это важно
В первую очередь пользователям Excel, которые ведут таблицы с многозначными полями (например, списки владельцев проекта), а также разработчикам сторонних библиотек и инструментов (openpyxl, pandas, calamine) и сервисов, импортирующих файлы Excel, им может понадобиться доработка под новый тип данных.
Как это применить
Функции пока доступны только как опциональная предварительная версия в бета-каналах Excel для Windows и Mac и требуют ручного включения. Сам продакт-менеджер Excel предупреждает: использовать их в важных рабочих книгах до выхода в общую доступность не стоит.
Можно ли доверять
Новость основана на официальном анонсе продакт-менеджера Excel Джейка Армстронга в LinkedIn и в блоге компании, то есть источник первичный и надёжный. Материал The Register в этом случае подан как обычная новость, без признаков сатиры.
Риски и подводные камни
Комментаторы под постом Армстронга указали, что многозначные ячейки могут ломать существующие таблицы и делать бизнес-логику менее прозрачной. Кроме того, Microsoft пока не раскрыла формат хранения новых типов данных в XML .xlsx, из-за чего сторонние библиотеки и приложения (экспорт в CSV, Google Sheets, LibreOffice, старые версии Excel, сводные таблицы) могут пока не работать с такими ячейками корректно, данные может понадобиться «разворачивать» в плоский вид.
«Одно из старейших правил электронных таблиц: одна ячейка, одно значение. Больше не так!»
— Джейк Армстронг, старший продакт-менеджер Excel