Конвертировать Excel в Markdown: таблицы, о которых LLM может рассуждать
Задайте языковой модели вопрос о таблице, которую вы вставили как есть, — и часто получите ответ, уверенно ошибающийся в том, какая колонка какая. Это не глупость модели. Электронная таблица — это координатная сетка: в ячейке B7 лежит число, и ничто в файле не говорит, что это число относится к колонке «Выручка Q3». Человек выводит это из положения. Вставьте значения кучей — и модели придётся выводить то же самое, только из куда худших улик.
Преобразование Excel в Markdown чинит это, порождая настоящую таблицу с вертикальными чертами: строка заголовков, разделитель, затем выровненные строки данных. Этот формат однозначен в вопросе принадлежности к колонкам, и модели отлично с ним справляются — Markdown-таблицы встречаются в их обучающих данных повсюду. Если вам нужно перевести файл Excel в Markdown-таблицу онлайн, перетащите .xlsx или .xls в поле выше. Бесплатно, без аккаунта, потолок 50 МБ, ничего не сохраняется.
Как выглядит вывод
Книга — это набор листов, и каждый лист становится в выводе собственным разделом, помеченным именем вкладки. Эта маркировка значит больше, чем кажется: «Допущения», «Факт 2024» и «Не редактировать» несут реальный смысл о том, как относиться к числам под ними, и модель, которая видит имя вкладки, им воспользуется.
Внутри каждого листа первая заполненная строка считается заголовком, за ней идёт строка-разделитель выравнивания, а затем каждая строка данных, отрисованная с разделителями-чертами. По структуре результат читается так: имена колонок сверху, значения выстроены под ними, одна запись на строку. Когда данные в такой форме, можно задавать вопросы по колонкам — «какие регионы выросли больше чем на 10 процентов», «найди строки, где статус blocked, а владелец пуст» — и у модели достаточно материала, чтобы реально проверить, а не угадать.
Формулы, значения и что вы получаете на самом деле
Вот что удивляет людей. Для ячейки с формулой .xlsx хранит две вещи: саму формулу
(=SUMIF(D:D,"North",F:F)) и последний вычисленный результат, закешированный с момента,
когда Excel в последний раз пересчитывал книгу. Конвертация читает закешированное значение. Вы получаете
184 500, а не SUMIF.
Это правильное умолчание — рассуждать вы хотите именно о числе, — но у него два следствия, которые стоит держать в голове. Во-первых, модель видит, каков ответ, но не как он получен, поэтому не может проверить вашу логику или заметить съехавший диапазон. Во-вторых, если файл сгенерирован скриптом или экспортёром, который записал формулы, ни разу не открыв Excel, закешированных значений может не быть или они устарели — и такие ячейки приходят пустыми или неверными. Откройте файл, дайте ему пересчитаться, сохраните, потом конвертируйте. Десять секунд — и целый класс недоразумений исключён.
Что ломает таблицы
Таблицы Markdown жёсткие: в каждой строке должно быть одинаковое число колонок. Электронные таблицы не жёсткие совсем. Из этого несоответствия и растут почти все грязные конвертации.
- Объединённые ячейки. Объединённая ячейка хранит содержимое в левой верхней ячейке диапазона, остальные по-настоящему пусты. Заголовок, объединённый по A1:F1, становится одним значением и пятью пустотами, и если это ваша первая строка — она прочитается как шапка. Объединённые метки категорий вдоль края отчёта дают значение в первой строке группы и ничего в остальных.
- Многострочные шапки. Классическая раскладка, где «2024» растянут над тремя колонками «Q1 / Q2 / Q3», в Markdown-таблице непредставима. Одна из этих строк станет шапкой, а другая — строкой данных, полной названий кварталов.
- Пустые строки-прокладки и колонки. Визуальный «воздух» в Excel превращается в пустые строки и безымянные колонки в выводе, которые тихо жгут токены и разбавляют таблицу.
- Данные не с A1. Логотип в углу, примечание во второй строке, а сама таблица начинается с шестой — конвертеру неоткуда знать, что строки с первой по пятую были украшением.
- Несколько таблиц на одном листе. Три отдельных блока рядом становятся одной очень широкой, по большей части пустой сеткой.
Лекарство от всего этого одно и скучное: перед конвертацией сделайте копию листа с одной строкой шапки сверху, одной таблицей на лист, без объединений и строк-прокладок. Две минуты уборки стоят больше любого хитрого промпта потом.
Даты, числа и почему в ячейке написано 45231
Excel не хранит даты как даты. Он хранит порядковый номер — счётчик дней от начальной точки, а то, что вы
видите — 15/03/2024, мар-24 или «пятница», — это формат отображения поверх. Конвертация читает лежащее
под ним значение, поэтому колонки с датами могут пройти голыми целыми числами, если форматирование не
переносится. Если даты важны для анализа, перед конвертацией приведите их к недвусмысленному тексту:
добавьте колонку с =TEXT(A2,"yyyy-mm-dd") и используйте её. Формат ISO заодно убирает
путаницу день/месяц между европейской и американской записью, которая тихо гробит рассуждения о
датах.
С числовым форматированием то же самое. Ячейка с видом 1 250,00 ₽ или 12,5% хранит 1250 и 0.125. Проценты, приходящие десятичными дробями, — та самая ловушка: модель, которой велели найти значения больше 10, ничего не найдёт в колонке из 0.125. Там, где единица измерения неочевидна, впишите её в заголовок колонки, а не полагайтесь на формат ячейки: «Рост (%)» или «Выручка (руб.)».
Ширина, токены и умение вовремя остановиться
Markdown-таблицы стоят больше токенов, чем те же данные в плоском виде, потому что каждая строка платит за свои разделители. Грубо говоря, каждая колонка добавляет черту и отступы каждой строке без исключения — так что лист в 40 колонок и 5000 строк тратит заметный кусок бюджета на пунктуацию ещё до того, как прочитано хоть одно значение. Широкие листы — то место, где конвертация xlsx в Markdown превращается из полезной в неподъёмную.
Держать это под контролем помогают две привычки. Удаляйте ненужные колонки до конвертации — большинство выгрузок тащит двадцать полей там, где ваш вопрос касается четырёх. И следите за счётчиком токенов под выводом: он сразу говорит, влезает ли результат в контекстное окно вашей модели или сначала стоит отфильтровать. Если лист огромен, а вопрос не требует выравнивания по колонкам, Excel в обычный текст — более дешёвый маршрут, и переключатель вверху этой страницы перенесёт туда ваш файл.
.xlsx, .xls и CSV
Современные файлы .xlsx — это ZIP-архивы с XML: хорошо структурированные и надёжные в разборе. Старый .xls — бинарный формат эпохи до 2007 года; здесь он тоже обрабатывается, но стоит знать, что его потолок — 65 536 строк и 256 колонок, и что файлы из старых бухгалтерских и ERP-систем порой опираются на причуды, которые переживают конвертацию неидеально. Если есть выбор — сначала пересохраните в .xlsx.
А если ваши данные начинали жизнь как CSV — минуйте Excel вовсе и идите в CSV в Markdown. Одним форматным прыжком меньше — и никакого риска, что Excel «услужливо» превратит ваши коды товаров в даты или срежет ведущие нули с индексов при импорте.
Частые вопросы
Как превратить таблицу Excel в Markdown-таблицу?
Загрузите .xlsx или .xls выше — каждый лист вернётся таблицей с вертикальными чертами, которую можно вставить в README, вики, pull request или промпт модели. Бесплатно, 50 МБ на файл, без аккаунта. Строка заголовков остаётся строкой заголовков, так что выравнивание переживает дорогу.
Сохраняются ли шапка и привязка к колонкам?
Да, и это вся причина выбирать здесь Markdown вместо плоского текста. Таблица с чертами сохраняет, какое значение стоит под каким заголовком, поэтому читающий её ассистент правильно ответит, «какой была мартовская цифра по региону EMEA». Расплющите тот же лист в текст — и этот вопрос станет безответным.
Что происходит с объединёнными ячейками и многострочными шапками?
Они расплющиваются неуклюже. У Markdown-таблиц ровно одна строка заголовков и никакого понятия о ячейке, растянутой на две колонки, поэтому отчёт с объединённым баннером «Q1 2026» над тремя подколонками этот баннер теряет. Листы, собранные как чистые прямоугольные данные, конвертируются идеально; листы, собранные, чтобы красиво выглядеть на печати, обычно требуют ручной правки.
Останется ли читабельной очень широкая таблица?
Читабельной для машины — да, неприятной для человека. Лист в сорок колонок становится таблицей с сорока колонками и строками по несколько тысяч символов. Модели разбирают это нормально. Если читать придётся человеку, сначала транспонируйте лист в Excel или обрежьте его до значимых колонок перед конвертацией.
Конвертируются ли диаграммы и сводные таблицы?
Нет. Диаграммы — графические объекты без текстового тела, а вывод сводной таблицы конвертируется как ячейки, которые она сейчас показывает, а не как живая сводная. Вы получаете подлежащую сетку значений — обычно именно её вы и хотели отдать модели.
Остальной инструментарий
Таблицы обычно приходят прицепом к чему-то ещё. File2Txt обрабатывает все поддерживаемые форматы на одной странице, а соседи, о которых стоит знать, — PDF в Markdown для финансовых отчётов, PowerPoint в Markdown для презентации, в которую попали эти цифры, и JSON в Markdown, когда те же данные пришли из API.
Со стороны кода есть конвертер репозитория GitHub в текст и конвертер локальной папки, плюс Web2Txt для веб-страниц. Руководство по подготовке файлов для LLM смотрит шире таблиц, если нужен общий обзор.
Repo2Txt разрабатывает и поддерживает v12hero — независимый разработчик, создающий нативные и веб-приложения с приоритетом приватности.