Перейти к основному содержимому

Если попросить ИИ «привести таблицу в порядок», обычно получаешь уверенный ответ о первых нескольких десятках строк, неправильно понятый столбец и итог, который никто не может проверить. Дело не в таблице. ИИ никто не объяснил, что она означает, и ему пришлось читать тысячи строк «на глаз».

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

Скачать папку с примером, чтобы работать вместе с уроком: выгрузка Bergwerk в input/, готовый README из шага 2 и промпты с этой страницы в prompts.md. Распакуйте её (правый щелчок, Извлечь все) и укажите на неё своему ИИ-инструменту.

Что понадобится

  • Папка из урока Подготовить папку для работы с ИИ с файлом поставщика в input/.
  • ИИ-инструмент, который предоставляет ваша компания. Промпты ниже работают в чате с загрузкой файлов или с агентом в папке. С помощником внутри Excel вставьте текст README в панель чата и держите таблицу открытой.
  • Описание того, как должен выглядеть результат: документация магазина по импорту, пример правильного файла импорта или просто то, что вы знаете.

1. Сделать таблицу читаемой

ИИ читает таблицу так, как это делает программа, а не так, как вы видите её на экране. Прежде всего проверьте источник на то, что сбивает его с толку:

На экране Что видит ИИ Что делать
Две таблицы рядом на одном листе Одну широкую таблицу с пустыми столбцами Указать в README, какой диапазон что означает, или попросить по листу на таблицу
Объединённые ячейки и многострочные заголовки Пустые ячейки и заголовки вида Unnamed: 3 Сказать, в какой строке настоящие заголовки
Цвет что-то означает («красный = снят с продажи») Ничего; цвет обычно теряется Добавить столбец в описание или написать «красные строки сняты с продажи», чтобы скрипт прочитал заливку
Строка итогов внизу Товар под названием «Итого» Написать «последняя строка — итог, пропустить»
4.01235E+12 в столбце штрихкода Округлённое число: цифры потеряны Упомянуть; скрипт должен отметить такое значение, а не «исправить»

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

2. Описать таблицу в README

Этот шаг чаще всего пропускают, а он самый важный. ИИ знает Excel, но не знает вашего бизнеса. Добавьте в README.md раздел Столбцы: по строке на столбец — что он означает и что в нём необычного.

## Источники (input/)
- `bergwerk-products.xlsx`, лист `Export`, заголовки в строке 1, одна строка на товар.
  `Artikelnr` — уникальный артикул поставщика. Поставщик немецкий, поэтому столбцы и значения
  на немецком.

### Столбцы
| Столбец | Значение | Примечания |
|---|---|---|
| Artikelnr | Артикул поставщика | Уникален; становится нашим `sku` |
| EAN | Штрихкод (GTIN-13) | Excel иногда показывает его как 4.01235E+12 |
| Bezeichnung | Название товара, по-немецки | Может быть длиннее 80 символов |
| Farbe | Цвет, по-немецки, свободный текст | «schwarz», «Schwarz», «sw» — всё это чёрный |
| Gewicht | Вес | Вперемешку: «1,2 kg», «850g», «1200» (без единицы) |
| Maße cm (BxHxT) | Ширина x высота x глубина в см | Одно текстовое значение, например «30 x 45 x 15» |
| Hersteller | Бренд | Иногда пусто |
| Kategorie | Категория товара, по-немецки | Не импортируется |

Затем так же опишите целевой формат. Это определение «готово», поэтому будьте точны:

## Целевой формат (output/<дата>/shop-import.xlsx, лист `products`)
| Столбец | Формат | Обязательно |
|---|---|---|
| sku | Текст, из Artikelnr | да |
| gtin | 13 цифр, верная контрольная цифра, хранится как текст | да |
| title | Текст, не длиннее 80 символов | да |
| color | Одно из: Black, Red, Blue, White | нет |
| weight_kg | Число в кг, десятичная точка | да |
| width_cm, height_cm, depth_cm | Числа | нет |
| brand | Текст, из Hersteller | да |

Писать это в одиночку не обязательно. Попросите ИИ: «Посмотри input/bergwerk-products.xlsx и составь черновик таблицы столбцов для README.md. Отметь вопросительным знаком всё, в чём есть сомнения.» Затем исправьте черновик. Поправить черновик гораздо быстрее, чем начинать с нуля, а вопросительные знаки показывают, где именно ИИ стал бы угадывать.

3. Сначала посмотреть, потом менять

Первый настоящий промпт просит ИИ составить профиль таблицы, а не менять её:

Прочитай README.md. Напиши скрипт на Python tools/profile.py, который читает каждую строку input/bergwerk-products.xlsx и для каждого столбца сообщает: сколько ячеек заполнено, сколько разных значений, десять самых частых значений и всё, что не совпадает с описанием в README.md. Запусти его и покажи отчёт. Ничего не меняй.

Почему скрипт, а не «посмотри на таблицу»: ИИ может прочитать за раз ограниченный объём текста. В большой таблице он молча смотрит на первые строки и предполагает, что остальные такие же. Профиль охватывает каждую строку, какой бы большой ни была таблица, и возвращается одним коротким отчётом. Для столбца веса из примера:

Gewicht   filled 24 / 24   distinct 23
  top: "1,2 kg" (2)  "850g" (1)  "0.4 kg" (1)  "450" (1)  "ca. 2kg" (1)
  note: decimal commas and points; units with and without a space; 2 values without a unit

Для таблицы в сорок тысяч строк отчёт будет той же длины. Сверьте его со своей таблицей столбцов. Каждая неожиданность — это либо ошибка в вашем описании (исправьте README), либо решение, которое нужно принять (запишите его в «Решения»):

## Решения
- 2026-10-29: вес без единицы — это граммы; любой вес с единицей меньше 2 кг.
- 2026-10-29: значения с «ca.» — оценки; оставить для поставщика, не пересчитывать.

4. Согласовать план

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

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

5. Пусть работу сделает скрипт

Напиши tools/transform.py по плану. Он читает input/bergwerk-products.xlsx и записывает output/2026-10-29/shop-import.xlsx с тремя листами: products (импорт), issues (каждое значение, которое не удалось преобразовать, с номером строки источника и причиной) и changes (каждая изменённая ячейка, до и после). Сохраняй каждую ячейку как текст, чтобы штрихкоды не теряли ведущие нули. Никогда не угадывай: значение, которое не подходит под правила, остаётся без изменений и попадает в issues. Запусти и назови мне количества.

Три детали в этом промпте делают большую часть работы:

  • «Никогда не угадывай». Без этой фразы ИИ заполняет пробелы правдоподобными значениями. С ней пробелы попадают в список, который можно разобрать.
  • Лист issues с номерами строк источника. Проблему, которую можно найти в исходном файле, можно и обсудить с поставщиком.
  • Лист changes. Каждое изменение видно: можно отфильтровать один столбец и сразу понять, сработало ли сопоставление цветов так, как задумано.

Если ваш инструмент вместо этого запускает Python в Excel, попросите то же самое в виде ячеек =PY() на новом листе: формулы остаются в книге и пересчитываются, когда меняются данные.

6. Проверить результат числами

«Выглядит хорошо» — это не проверка. Попросите у ИИ числа, которые можно проверить, и несколько проверьте сами:

Проверка Спросить или сделать Что она ловит
Число строк «Сколько строк товаров в источнике, в products, в issues?» Потерянные или задвоенные строки
Суммы «Сумма веса в кг до и после» (три строки источника пересчитать вручную) Неверный коэффициент пересчёта
Список значений Отфильтровать color в результате: только разрешённые значения и пустые? Несопоставленные написания
Выборочная проверка Взять пять случайных строк источника и найти их в результате Сдвинутые или перепутанные столбцы
Issues Прочитать лист issues: каждую ли запись действительно нельзя исправить? Слишком строгие правила
Допущения «Какие допущения были сделаны, но не записаны в README.md?» Молчаливые догадки

Всё, что выявит последний вопрос, попадает в «Решения» или становится правилом.

Анализ вместо преобразования

Та же папка отвечает и на вопросы о таблице. Схема та же: описать, посчитать скриптом, проверить. Меняется промпт. Скажите, какие столбцы, как считать и в каком виде нужен ответ:

Расплывчато Точно
«Проанализируй продажи.» «Сумма Выручка по Регион и месяцу, с листа 2026, сводной таблицей на новом листе.»
«Есть проблемы в данных?» «Перечисли строки, где Вес пуст или GTIN не проходит проверку контрольной цифры, с номерами строк.»
«Какие поставщики лучшие?» «Упорядочь поставщиков по доле поставок в срок (Поставлено не позже Обещано), не меньше 20 заказов у каждого.»
«Сделай диаграмму.» «Линейная диаграмма месячной выручки по регионам, по линии на регион, сохранённая листом в результате.»

И просите ответ в книге Excel — формулами, сводной таблицей или скриптом, а не только фразой в чате. Число в чате проверить нельзя, формулу — можно.

В следующем месяце

Когда придёт новая выгрузка, положите её в input/ (файл прошлого месяца сохраните под именем с датой или перенесите в папку его результата), затем:

Новая выгрузка в input/. Запусти tools/profile.py и скажи, что изменилось по сравнению с прошлым разом. Если ничего нового, запусти tools/transform.py в output/2026-11-28/.

Новый столбец или новое написание цвета видно в профиле, ИИ меняет одну строку скрипта, а вы добавляете одну строку в «Решения». Следующий месяц — уже одно сообщение.

Когда проще вручную

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

← Back to Рабочие процессы

Думаете, этот паттерн можно сделать лучше? Расскажите как.

Оставить отзыв