Промпты для формул Excel и Google Таблиц: от условия до тестовых строк

Иллюстрация создания формулы из текстового условия и проверки ячеек таблицы

Чтобы нейросеть написала полезную формулу, ей нужно передать не только «что посчитать», но и правила для исключений: пустой ячейки, повторяющегося ID, неправильной даты. Затем формулу нужно исполнить в своей таблице и сравнить с заранее известными ответами. В этом практикуме показываем, как составить такой запрос, что проверить и как попросить исправление.

Мы подготовили три учебные задачи и 24 граничные строки: часы по проектам, поиск оборудования и просрочка возврата. Практическая часть выполнена в Google Таблицах. В Excel формулы не запускали; совместимость с конкретной версией Excel здесь не подтверждена. Из шести запланированных первых ответов удалось получить и исполнить пять. Полный запрос о просрочке завершился ошибкой загрузки ответа, в том числе после одного технического повтора. Этот пробел оставляем в результатах.

Что включить в промпт для формулы

Хорошее условие отвечает на восемь вопросов. В какой программе и версии будет работать формула? На каком языке записываются функции? Чем разделяются аргументы? Где находятся исходные данные? В какую ячейку вставить результат и куда его копировать? Какие типы данных используются? Что делать с пустыми значениями и исключениями? Какие ответы должны получиться на нескольких контрольных строках?

Адреса нужны не для формальности. При копировании вниз ссылка A2 должна стать A3, а справочник Catalog!$A$2:$B$8 — остаться на месте. Если не сказать, что формулу будут протягивать, можно получить вариант, правильный только для первой строки.

Пусто тоже требует определения. Пустая строка, числовой ноль, отсутствие совпадения и найденная запись без названия — разные состояния. Их не стоит объединять в один результат только потому, что так короче формула.

Локаль, язык функций и версия — разные настройки

В Google Таблицах локаль влияет на стандартные форматы чисел и дат, а язык функций выбирается отдельно. Поэтому русская локаль не означает, что формула обязательно должна начинаться с ЕСЛИ. В нашем листе выбраны Россия и английские имена функций; в полных запросах указан разделитель аргументов «;». Проверить настройки можно в «Файл → Настройки».

Настройки локали и языка функций в Google Таблицах

В Excel важна ещё и версия. Например, Microsoft отдельно предупреждает: XLOOKUP отсутствует в Excel 2016 и Excel 2019. Запрос «напиши формулу для Excel» не сообщает нейросети об этом ограничении. Назовите реальную версию и попросите вариант без неподдерживаемых функций, затем проверьте его в ней.

Официальная справка Microsoft о XLOOKUP

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

Как устроена проверка

Запуск проведён 18 октября 2026 года в ChatGPT Plus; в интерфейсе были указаны GPT-6 и Medium. Это фиксация видимых настроек, а не вывод о внутреннем устройстве модели. Формулы исполнялись в Google Sheets с локалью Россия и английскими функциями. Данные синтетические; эталоны и 24 строки зафиксированы до запуска. Проверка исходных значений дала 19 из 19 контрольных TRUE.

На каждую задачу предусмотрены два независимых запроса: короткий и полный. Затем короткую формулу один раз исправляли по обнаруженным расхождениям и снова проверяли на всех восьми строках. Первый вариант не заменяли исправленным в журнале. Для сроков использована фиксированная дата 18.10.2026, поэтому результат не должен меняться завтра.

Для оценки брали первый блок формулы из каждого первого ответа. Дополнительные варианты сохраняли, но не подставляли вместо него: например, ответ о часах также содержал альтернативу с обработкой пустого запроса. Поэтому 7/8 характеризует выбранный первый блок, а не все предложенные моделью варианты.

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

Задача Короткий Полный После одной правки короткого
Часы проекта 7/8 8/8 8/8
Поиск оборудования 6/8 8/8 8/8
Текущая просрочка 6/8 Нет полученного ответа 8/8

Короткие запросы дали 19 совпадений из 24. Два полученных полных ответа дали 16 из 16; третья задача в эту оценку не входит. Исправленные короткие варианты дали 24 из 24. Все три исправленные формулы дополнительно сверены через FORMULATEXT; результаты и снимки трёх листов проверены. Технически недоступный полный ответ о просрочке не оцениваем как ноль баллов.

Задача 1. Сложить принятые часы проекта

На листе Hours столбец A содержит проект, B — статус, C — часы. Данные занимают строки 2–13. На листе HoursTest в A2:A9 находятся проекты для проверки. Нужно суммировать только статус «Принято»; пустые часы считать нулём. Совпадающие записи учитываются обе: это не задача удаления дублей. Пустой запрос должен давать пустую строку, неизвестный проект — числовой ноль. Пробел в конце названия значим.

Проект Статус Часы
Альфа Принято 2
Альфа Принято 3
Альфа Черновик 9
Бета Принято 0
Гамма Принято
Дельта Принято 1,5
Дельта Принято 2,25
Эпсилон Принято 4
Эпсилон Принято 4
Принято 7
Альфа 6
Бета Черновик 8

Короткий запрос:

Напиши формулу для Google Таблиц: посчитай сумму часов по проекту только со статусом «Принято». Данные на Hours: A2:A13 — проект, B2:B13 — статус, C2:C13 — часы. Название нужного проекта в HoursTest!A2. Формулу вставлю в HoursTest!D2 и протяну вниз.

Первый ответ дал такую формулу. Русское имя функции сохраняем именно как в полученном ответе: она была исполнена на тестовом листе. Это наблюдение о конкретном запуске, а не совет смешивать языки функций.

=СУММЕСЛИМН(Hours!$C$2:$C$13;Hours!$A$2:$A$13;A2;Hours!$B$2:$B$13;"Принято")

На пустом запросе получилось 0 вместо предусмотренной пустой строки. Остальные семь проверок совпали. В коротком условии поведение для пустого проекта не было оговорено.

Полный запрос:

Нужна одна формула для Google Sheets (веб), локаль Россия, имена функций English, разделитель аргументов ;, десятичная запятая. Исходные диапазоны: Hours!A2:A13 — проект, B2:B13 — статус, C2:C13 — числовые часы или пусто. Запрос проекта в HoursTest!A2, результат в E2; буду копировать до E9. Зафиксируй исходные диапазоны, ссылку на строку запроса оставь относительной. Сложи часы только при совпадении проекта и статусе «Принято». Пустой запрос должен вернуть пустую строку. Нет совпадений — числовой 0; пустые часы — 0. Все строки, даже одинаковые, учитываются; текстовые пробелы в проекте значимы, TRIM не применять. Примеры: Альфа → 5; Бета → 0; Эпсилон → 8; пустой запрос → пусто; Альфа с пробелом на конце → 0. Дай формулу и коротко объясни ссылки. Не используй скрипты и не анализируй файл вместо формулы.

Полученная и исполненная формула:

=IF(A2="";"";SUMIFS(Hours!$C$2:$C$13;Hours!$A$2:$A$13;A2;Hours!$B$2:$B$13;"Принято"))
Проект запроса Эталон Короткий Полный
Альфа 5 5 5
Бета 0 0 0
Гамма 0 0 0
Дельта 3,75 3,75 3,75
Эпсилон 8 8 8
Омега 0 0 0
Пусто Пустая строка 0 Пустая строка
Альфа[пробел] 0 0 0

Пометка [пробел] в таблице обозначает один пробел в конце; вводить саму пометку не нужно. Полный вариант добавил проверку пустого запроса до SUMIFS и совпал с восемью эталонами. Дробные часы проверяют числовые данные, а две одинаковые записи Эпсилон — договорённость складывать все подходящие строки.

После единственного исправления короткого запроса формула совпала с полным вариантом: добавилась проверка пустого запроса. Проверка HoursTest!F2:F9 дала 8/8. Точный исправленный вариант:

=IF(A2="";"";SUMIFS(Hours!$C$2:$C$13;Hours!$A$2:$A$13;A2;Hours!$B$2:$B$13;"Принято"))
Часы проекта: первый короткий ответ, полный ответ и результат после одного исправления. Пустой запрос находится в строке 8.
Часы проекта: первый короткий ответ, полный ответ и результат после одного исправления. Пустой запрос находится в строке 8.

Задача 2. Найти оборудование и не скрыть повтор ID

В Catalog!A2:B8 записан справочник. В LookupTest!A2:A9 — искомые ID. Здесь повтор ключа имеет другой смысл, чем повтор строки с часами: формула должна остановиться с сообщением «Дубликат ID», а не выбрать первую запись. Это правило нужно передать явно.

ID Название
EQ-01 Монитор
EQ-02 Клавиатура
EQ-03 Камера
EQ-03 Штатив
EQ-04
EQ-05 Микрофон
EQ-06 Док-станция

Короткий запрос:

Напиши формулу Google Таблиц, которая по ID оборудования найдёт название. Справочник Catalog!A2:A8 — ID, B2:B8 — название. Искомый ID в LookupTest!A2, результат вставлю в D2 и протяну вниз.

Первый ответ:

=IF(A2="";"";IFNA(VLOOKUP(A2;Catalog!$A$2:$B$8;2;FALSE);"Не найдено"))

Он корректно обработал известные и неизвестный ключи, но для EQ-03 вернул «Камера» — первое найденное название. По эталону нужен сигнал о дубликате. Для EQ-04 результат выглядел пустым, а проверка TYPE вернула 1. Дополнительные проверки дали ISNUMBER=FALSE, ISTEXT=FALSE и ISBLANK=TRUE. Поэтому по одному TYPE=1 нельзя объявлять этот результат числовым нулём, а визуальную пустоту — текстовой пустой строкой. Требуемого сообщения «Нет названия» не было, и эта строка не зачтена.

Полный запрос:

Нужна формула Google Sheets (веб), локаль Россия, имена функций English, разделитель ;. Catalog!A2:A8 — текстовые ID, B2:B8 — названия. Запрос LookupTest!A2, формулу вставлю в E2 и скопирую до E9. Исходные диапазоны абсолютные. Пустой ID → пустая строка. Не найден → «Не найдено». ID встречается более одного раза → «Дубликат ID», не выбирать первое совпадение. Ровно одно совпадение с пустым названием → «Нет названия». Иначе вернуть название. Пробелы значимы, ID не нормализовать. EQ-01 → Монитор; EQ-03 → Дубликат ID; EQ-99 → Не найдено; EQ-04 → Нет названия; пустой запрос → пусто. Дай формулу, затем объяснение порядка проверок. Скрипты не нужны.

Полученная формула:

=IF(A2="";"";IF(COUNTIF(Catalog!$A$2:$A$8;A2)>1;"Дубликат ID";IF(COUNTIF(Catalog!$A$2:$A$8;A2)=0;"Не найдено";IF(INDEX(Catalog!$B$2:$B$8;MATCH(A2;Catalog!$A$2:$A$8;0))="";"Нет названия";INDEX(Catalog!$B$2:$B$8;MATCH(A2;Catalog!$A$2:$A$8;0))))))
ID Эталон Короткий Полный
EQ-01 Монитор Монитор Монитор
EQ-02 Клавиатура Клавиатура Клавиатура
EQ-03 Дубликат ID Камера Дубликат ID
EQ-99 Не найдено Не найдено Не найдено
Пусто Пустая строка Пустая строка Пустая строка
EQ-04 Нет названия Визуально пусто; TYPE=1 Нет названия
EQ-05 Микрофон Микрофон Микрофон
EQ-01[пробел] Не найдено Не найдено Не найдено

Полный вариант сначала проверяет пустой запрос и число совпадений, затем обращается к названию. Именно порядок проверок сохраняет различие между неизвестным ID, дубликатом и найденной записью без названия. В нашем наборе полный вариант дал 8 из 8 совпадений. Поддержку этой формулы в Excel отдельно не проверяли.

После одной правки короткой формулы добавились проверки отсутствующего и повторного ID, а также пустого названия. Этот вариант использует VLOOKUP и отличается от полного ответа с INDEX/MATCH; результат LookupTest!F2:F9 — 8/8:

=IF(A2="";"";IF(COUNTIF(Catalog!$A$2:$A$8;A2)=0;"Не найдено";IF(COUNTIF(Catalog!$A$2:$A$8;A2)>1;"Дубликат ID";IF(VLOOKUP(A2;Catalog!$A$2:$B$8;2;FALSE)="";"Нет названия";VLOOKUP(A2;Catalog!$A$2:$B$8;2;FALSE)))))
Поиск оборудования: первое совпадение для дубликата в коротком ответе и отдельные сообщения в полном и исправленном вариантах.
Поиск оборудования: первое совпадение для дубликата в коротком ответе и отдельные сообщения в полном и исправленном вариантах.

Задача 3. Посчитать текущую просрочку возврата

На DatesTest столбец A содержит срок возврата, B — фактическую дату возврата. В Control!A2 записана настоящая дата 18.10.2026. Нужна текущая просрочка: если оборудование уже вернули, результат равен нулю, даже если фактический возврат произошёл позже срока. Для исторического отчёта о задержках потребовалось бы другое правило.

Пустой срок должен вернуть пустую строку. Ошибочный текст и числовой ноль вместо даты — сообщение «Проверьте дату». Если срок корректен и возврата нет, просрочка равна разности контрольной даты и срока, но не меньше нуля. В учебном наборе даты без времени; корректность непустой даты фактического возврата отдельно не тестируется.

Короткий запрос:

Напиши формулу Google Таблиц для текущей просрочки возврата оборудования в днях: срок в DatesTest!A2, дата фактического возврата в B2, контрольная дата в Control!A2. Результат вставлю в DatesTest!E2 и протяну вниз. Если уже вернули, просрочка 0.

Первый ответ:

=IF(OR(NOT(ISNUMBER(A2));A2=0);"";IF(ISNUMBER(B2);0;MAX(0;Control!$A$2-A2)))
Срок Возврат Эталон Короткий
17.10.2026 Пусто 1 1
18.10.2026 Пусто 0 0
19.10.2026 Пусто 0 0
Пусто Пусто Пустая строка Пустая строка
15.10.2026 16.10.2026 0 0
текст Пусто Проверьте дату Пустая строка
Число 0 Пусто Проверьте дату Пустая строка
16.10.2026 Пусто 2 2

Формула объединила пустой срок и неправильный срок в один пустой результат. Шесть строк совпали с эталоном, две диагностические проверки — нет. В коротком запросе требование выводить предупреждение отсутствовало, поэтому это прежде всего недостающая часть условия.

Полный запрос, который можно адаптировать под свою таблицу:

Нужна формула Google Sheets (веб), локаль Россия, English function names, разделитель ;. DatesTest!A2 — срок возврата (настоящая дата, пусто, ошибочный текст или 0); B2 — дата фактического возврата либо пусто. Control!A2 содержит настоящую фиксированную дату 18.10.2026. Формулу вставлю в F2, скопирую до F9. Control!$A$2 абсолютная, A2/B2 относительные. Правило именно текущей, не исторической просрочки: если A2 пусто, вернуть пустую строку; если A2 не число или <=0, вернуть «Проверьте дату»; если B2 заполнена настоящей датой, вернуть числовой 0; иначе MAX(0; контрольная дата минус срок). Даты без времени, валидность B2 вне текущего набора не проверяем. TODAY не использовать. Примеры: срок 17.10.2026 и возврат пусто → 1; 18.10 → 0; 19.10 → 0; пустой срок → пусто; текст или 0 → Проверьте дату; срок 15.10 и возврат 16.10 → 0. Дай одну формулу и короткое объяснение.

Ответ на этот запрос не удалось получить: интерфейс показал «Не удалось загрузить этот ответ». Один разрешённый дословный технический повтор в новом разговоре тоже завершился ошибкой загрузки. Готовую полную формулу и оценку 8/8 здесь не приводим. Техническая недоступность ответа не означает ни правильность, ни неправильность неувиденной формулы. Исправленный короткий вариант получил 8/8 по журналу запуска, но это отдельная ветка проверки.

Это точная формула после одного исправления короткого запроса, а не ответ на недоступный полный запрос. Она отдельно проверяет пустой срок и некорректную дату. В DatesTest!G2:G9 получено 8/8:

=IF(ISBLANK(A2);"";IF(OR(NOT(ISNUMBER(A2));A2<=0);"Проверьте дату";IF(ISNUMBER(B2);0;MAX(0;Control!$A$2-A2))))

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

Просрочка относительно 18.10.2026: короткий и исправленный варианты. Столбец полного первого ответа пуст, поскольку ответ не загрузился.
Просрочка относительно 18.10.2026: короткий и исправленный варианты. Столбец полного первого ответа пуст, поскольку ответ не загрузился.

Как попросить исправить формулу

Сообщения «не работает» недостаточно. Укажите точную формулу, адрес, входные значения и их типы, ожидаемый результат, фактическое значение или ошибку. Не меняйте одновременно условие расчёта и данные: иначе не будет понятно, что именно исправилось.

Среда: [Google Sheets или точная версия Excel], язык функций [язык], разделитель [символ].
Формула: [вставьте дословно].
Ячейка результата: [адрес].
Входные данные: [ячейки, значения и типы].
Ожидалось: [ответ по правилу].
Получено: [значение или точный текст ошибки].
Исправь формулу, сохранив правила и адреса диапазонов. Объясни причину. После правки я повторю все тестовые строки.

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

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

Универсальный шаблон промпта

Напиши одну формулу для [программа и версия].
Локаль: [страна]. Язык функций: [язык]. Разделитель аргументов: [; или ,].
Данные: [лист, диапазоны, смысл столбцов, типы].
Результат: [ячейка]. Формулу буду копировать [куда].
Правило расчёта: [условие простыми словами].
Пустые значения: [поведение].
Ноль, нет совпадений, повтор ключа, ошибочные данные: [отдельные правила].
Контрольные примеры: [вход → ожидаемый ответ].
Дай формулу и короткое объяснение. Если правило неоднозначно, сначала спроси. Не меняй данные и не используй скрипт вместо формулы.

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

Что проверить перед переносом в рабочий файл

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

После этого проверьте копирование вниз: исходные диапазоны не должны уезжать. Сверьте все ожидаемые ответы и отдельно убедитесь, что пустая строка не подменена нулём. Для своей задачи добавьте случаи, которых здесь нет: регистр ID, символы * и ?, ошибки внутри исходных ячеек, время в датах или некорректную дату фактического возврата.

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

Если нужна не отдельная формула, а анализ загруженного файла, пригодится разбор работы с CSV. Если выбираете сервис для табличных задач, смотрите отдельное сравнение ChatGPT Plus и DeepSeek. Здесь задача уже: превратить своё правило в формулу, которую можно проверить.

Разбор ChatGPT для Excel и CSV

Сравнение нейросетей для таблиц

Справочник функций Google Таблиц

Понравилась статья? Поделиться с друзьями:
GPT Insider