XLSX
Скилл XLSX предназначен для случаев, когда главным входом или результатом является электронная таблица: XLSX, XLSM, XLTX, CSV или TSV. Он покрывает создание нового файла, чтение существующей книги, правки данных, очистку таблицы, расчёты, форматирование и диаграммы. Для операций, где важны стили и структура книги, источник рекомендует openpyxl. Для массового обмена табличными данными указаны pandas и его read_excel/to_excel, а для быстрого просмотра листа — markitdown, который показывает содержимое по заголовкам листов, но не предназначен для планирования изменений по координатам ячеек. Выбор инструмента зависит от результата: работа с книгой и форматированием отличается от простого преобразования строк CSV. Для каждой создаваемой или редактируемой таблицы скилл требует соблюдать заданную спецификацию буквально: имена листов, заголовки столбцов и формулы не следует менять ради удобства реализации. Шрифт в готовой книге должен быть профессиональным, например Arial или Times New Roman, если пользователь не установил другое правило. Формулы нужно записывать как формулы, а не подменять заранее вычисленными числами: пример с SUM показывает, что итог должен пересчитываться после изменения исходных ячеек. Все допущения и вручную заданные числа должны быть видимы читателю — в комментарии ячейки или в соседней поясняющей ячейке. Если число пришло из внешнего источника, рядом нужно сохранить ссылку; если оно задано пользователем, это также следует обозначить. Для новой заготовки, которую другой человек будет заполнять, нужен небольшой legend с указанием редактируемых ячеек и один реалистичный пример строки. В уже существующем файле эти правила не должны приводить к перестройке оформления: сначала нужно найти принятые в книге входные ячейки и сохранить исходные формулы. Наличие формул требует отдельной проверки пересчёта. openpyxl записывает формулы без кэшированных результатов, поэтому после сохранения значения могут выглядеть пустыми для pandas, previewer или чтения с data_only=True. Официальный workflow использует scripts/recalc.py, который передаёт книгу LibreOffice, пересчитывает её на месте и сообщает status, общее число формул, число ошибок и краткую сводку ячеек. Статус errors_found нельзя считать успешной поставкой: нужно исправить названные ошибки и запустить проверку повторно. Даже успешный пересчёт подтверждает только вычислимость формул, но не правильность диапазона или бизнес-логики, поэтому до построения большой сетки полезно проверить две-три формулы на ожидаемых значениях. Если пересчёт невозможен и инструмент возвращает объект с ключом error, результат нельзя выдавать за проверенную книгу. При выборе формул следует учитывать совместимость LibreOffice. Надёжной основой являются функции эпохи Excel 2007, включая SUMIFS, INDEX, MATCH, IFERROR и SUMPRODUCT. Несколько более новых функций допустимы только с префиксом _xlfn., а XLOOKUP, XMATCH, SORT, FILTER, UNIQUE и SEQUENCE источник запрещает для этого runtime: их поведение со spill-массивами и метаданными openpyxl может дать усечённый или незаметно неверный результат. Для поиска лучше использовать INDEX и MATCH, а сортировку, фильтрацию и удаление дублей выполнять в Python до записи. Если LibreOffice не распознал функцию, это проявляется как #NAME? или как изменённая запись формулы, поэтому такие признаки нужно проверять вместе с итогом recalc.py. Чтение книги требует не смешивать формулы и кэшированные значения. Обычный проход сохраняет формульные строки, а data_only=True показывает сохранённые результаты; одного режима недостаточно для проверки и формулы, и результата. data_only=True нельзя использовать для сохранения отредактированной книги: при записи формулы будут заменены литеральными значениями. Книги XLSM нужно открывать с сохранением VBA. В объединённых ячейках изменяется только верхняя левая ячейка. Имена листов с пробелами в межлистовых формулах берутся в одинарные кавычки. В финансовых моделях отдельно проверяются единицы, проценты как доли, формат нулей и отрицательных значений, цветовая семантика вводов и формул, а также явное размещение каждого допущения в собственной ячейке. Скилл не заменяет проверку результата: перед публикацией нужно подтвердить формулы, диапазоны, стили и сохранность исходной структуры книги.
Для чего подходит
- Создание Excel-файлов
- Очистка табличных данных
- Формулы, форматирование и диаграммы
Установка
Сначала прочитайте SKILL.md и scripts в исходном репозитории. Затем выполните команду в каталоге проекта:
npx skills add https://github.com/anthropics/skills/tree/main/skills/xlsx