AI для финансиста
ChatGPT пишет VBA-макросы за финансиста: 7 автоматизаций Excel которые экономят рабочую неделю
Три часа на сверку выписки с ОСВ вручную. Сорок пять минут на форматирование ежемесячного P&L. Двадцать писем должникам по одному. Ещё год назад это была нормальная рабочая неделя финансиста. Сейчас это потеря целого рабочего дня, который можно вернуть за один вечер с ChatGPT и VBA.
Я Натали Васильева, эксперт по нейросетям и продюсер онлайн-школы «Финансовый директор | Мастер CFO» (45 000 подписчиков в @findir_pro, 800+ выпускников курса AI-навыков). С февраля 2023 года я наблюдаю, как финансисты осваивают нейросети, и VBA-автоматизация через ChatGPT за последний год стала одним из самых частых wow-результатов у тех, кто начинает с нуля.
В этой статье семь конкретных автоматизаций с готовыми промптами, три кейса с цифрами, пошаговая инструкция по запуску первого макроса, разбор типичных ошибок и сравнение VBA с Power Query и Python. Всё актуально на 26 июня 2026 года.
Почему VBA до сих пор актуален для финансиста в 2026 году
Прямой ответ: потому что Excel стоит на каждом финансовом компьютере в России, и VBA встроен в него бесплатно. Никакой отдельной установки, никаких согласований с IT-отделом, никаких облачных подписок.
Power Platform, Python, RPA-роботы требуют внедрения, бюджета, зачастую отдельного сервера и участия IT. VBA запускается прямо в вашем файле на вашем ноутбуке. Финансист в командировке, главбух на удалёнке, финдир стартапа без IT-команды — у всех одинаковый доступ к инструменту.
Вот что умеет VBA из того, чего не умеют ни формулы, ни Power Query:
- Автоматически форматировать отчёт по условию: строка становится красной, если факт превысил план, без участия человека
- Отправлять письма через Outlook прямо из Excel: список должников в таблице, кнопка нажата, письма ушли за секунды
- Копировать данные между книгами, создавать новые файлы по шаблону и сохранять их с нужным именем
- Запускать цепочку из десяти действий одной кнопкой: обновить сводную, отформатировать, сохранить архивную копию, отправить отчёт руководителю
По наблюдениям за финансовыми отделами среднего бизнеса, от 30 до 50 процентов рутинной работы в Excel поддаётся автоматизации через VBA. До 2023 года барьер был один: нужен программист или несколько лет обучения. Сейчас этот барьер снят.
Важен и экономический аргумент. Сторонний разработчик за несложный макрос берёт от 3 000 до 15 000 рублей и неделю ожидания. Простой макрос через ChatGPT — 2-3 минуты и ноль рублей на разработку. Даже учитывая стоимость платной подписки ChatGPT Plus, первая автоматизация окупается после первого же запуска.
Ещё один аргумент в пользу VBA для российского контекста: данные не покидают ваш компьютер. Макрос работает локально. Для задач с персональными данными сотрудников или коммерческой тайной это критически важно. Никаких облачных рисков, никаких согласований с DPO.
Три признака задачи, которую стоит автоматизировать через VBA: она повторяется чаще двух раз в месяц, занимает больше 15 минут, и все шаги одинаковы каждый раз. Если задача меняется каждый раз — макрос будет требовать постоянных правок и не сэкономит время.
Что изменилось: ChatGPT пишет VBA за 2 минуты
Раньше написать макрос означало: курс по VBA от 20 часов, документация Microsoft на английском, три часа на StackOverflow, несколько попыток и один полурабочий результат. Теперь это диалог на русском за две-три минуты.
Я протестировала четыре модели на одинаковом наборе задач: форматирование P&L, сверка выписки с ОСВ, рассылка через Outlook, отчёт план-факт. Результат на июнь 2026 года:
GPT-5.5 на chatgpt.com: рабочий код с первого запроса в 8 из 10 случаев при точном описании файла. Сам уточняет, если данных не хватает. Объясняет каждый блок кода на русском.
Claude Sonnet 4.6: сильная вторая позиция. Особенно хорош в сложных макросах с вложенными условиями и циклами. Чаще задаёт уточняющие вопросы перед написанием, что в итоге даёт более точный результат.
Gemini 2.5: справляется с простыми задачами форматирования и сортировки. Сложные сценарии с несколькими листами и внешними взаимодействиями требуют больше итераций.
DeepSeek V3.2: хороший вариант для простых макросов, доступен без специального доступа к сайту. Для продвинутых задач с Outlook-интеграцией уступает GPT-5.5.
Ключевое изменение, которое я наблюдаю у учениц: ChatGPT не просто пишет код, а объясняет каждую строку. Через две-три недели работы финансисты начинают читать VBA-код и понимать, что он делает. Это не программирование в классическом смысле, но это уже не чёрный ящик. Страх перед кодом исчезает.
Как правильно описать Excel-файл ChatGPT чтобы получить рабочий код

Главная причина, по которой макрос не работает с первого раза — расплывчатое описание файла. ChatGPT не видит ваш Excel. Он видит только текст, который вы написали. Чем точнее текст, тем точнее код.
Блок 1. Структура книги. Количество листов, их точные названия с учётом регистра и пробелов. На каком листе данные, на каком результат.
Блок 2. Структура таблицы. Заголовки столбцов и их буквы (A, B, C…). С какой строки начинаются данные (обычно 2, если строка 1 — заголовок). Примерное количество строк.
Блок 3. Задача макроса. Что именно должен делать макрос, конкретно и по шагам. Какой результат ожидаете на выходе.
Блок 4. Ограничения. Что трогать нельзя. Нужно ли подтверждение перед запуском. Особые условия.
Вот универсальный шаблон промпта:
Напиши VBA-макрос для Excel.
Структура файла:
- Книга содержит два листа: "Выписка" и "ОСВ"
- Лист "Выписка": A — дата, B — контрагент, C — сумма,
D — назначение платежа. Данные с строки 2, заголовки в строке 1. Около 200 строк.
- Лист "ОСВ": A — контрагент, B — сальдо начальное,
C — обороты дебет, D — обороты кредит, E — сальдо конечное.
Данные с строки 2. Около 80 строк.
Задача (по шагам):
1. Сравнить данные листа "Выписка" и "ОСВ" по названию контрагента.
2. Если контрагент из выписки не найден в ОСВ — залить строку жёлтым.
3. Если сумма по контрагенту из выписки не совпадает с оборотом кредит
в ОСВ с погрешностью плюс-минус 1 рубль — залить строку красным.
В начале работы показать диалог: "Запустить сверку?"
Лист ОСВ только читать, не изменять.
Посмотрите на уровень детализации: точные названия листов, буквы столбцов, номера строк, конкретное условие сравнения, допустимая погрешность, диалог подтверждения. Именно такой уровень даёт рабочий код с первого запроса.
Самая частая ошибка: написать “в столбце с датами” вместо “в столбце A — дата”. ChatGPT угадывает, и угадывает не всегда. Называйте буквы столбцов явно.
Автоматизация 1. Форматирование ежемесячного отчёта за 2 минуты
Сколько времени экономит: 40-60 минут ежемесячно. За год 8-12 часов.
Форматирование отчёта вручную — выравнивание ширины столбцов, цвет шапки, жирные итоги, скрытие нулевых строк, нужный шрифт и рамки. У каждого финансиста своя система, но занимает она каждый раз одинаково долго. Макрос делает всё за один клик и всегда одинаково.
Напиши VBA-макрос для форматирования P&L-отчёта на листе "P&L".
Структура листа:
- Строка 1: заголовок отчёта (объединённые ячейки A1:F1)
- Строка 2: заголовки столбцов (A2 — "Статья", B2:G2 — месяцы Jan..Jun)
- Столбец A (строки 3-30): названия статей P&L
- B3:G30: числовые данные
- Строки 5, 12, 20, 28: итоговые (содержат слово "Итого" в столбце A)
Что должен делать макрос:
1. Шрифт Calibri 11pt для всего листа
2. Шапку (строка 2): синий фон (#1F4E79), белый жирный шрифт
3. Итоговые строки (5, 12, 20, 28): серый фон (#F2F2F2), жирный шрифт
4. Числовые ячейки B3:G30: формат "# ##0" (с разделителем тысяч, без копеек)
5. Строки, где все числа в B:G равны нулю: скрыть
6. Выровнять ширину столбцов по содержимому
7. Внешняя рамка вокруг диапазона A1:G30
Данные не удалять, только форматирование.
В начале показать диалог подтверждения.
Лайфхак: после того как макрос заработал, попросите ChatGPT добавить кнопку запуска прямо на лист. Напишите в чате: “Добавь в этот макрос код, который создаст кнопку на листе P&L с надписью ‘Форматировать’ и привяжет к ней этот макрос.” Никакого Alt+F11 больше, просто кнопка прямо в таблице.
Типичная ошибка при первом запуске этого макроса: строки не скрываются, хотя в них нули. Причина — данные выгружены из 1С и хранятся как текст “0”, а не число 0. ChatGPT это исправит, если написать: “Макрос не скрывает строки с нулями. Возможно, нули хранятся как текст. Добавь конвертацию в начало.” Он добавит блок Val() или CDbl() для преобразования.
Автоматизация 2. Сверка банковской выписки с ОСВ за 20 минут
Сколько времени экономит: 2-2.5 часа ежемесячно. Плюс снятый риск пропустить задвоенный платёж.
Три часа ручной сверки превращаются в 25 минут: 4-5 минут на автоматическую разметку и 20 минут на разбор выделенных расхождений. Главная ценность: расхождения видны сразу, не нужно их искать.
Напиши VBA-макрос для сверки банковской выписки с данными ОСВ.
Лист "Выписка": A — дата, B — контрагент, C — сумма (поступления +, списания —),
D — вид операции. Данные с строки 2.
Лист "ОСВ": A — контрагент, E — сальдо конечное. Данные с строки 3.
Логика сверки:
1. По каждому уникальному контрагенту из "Выписки" суммировать все поступления (C > 0).
2. Найти этого контрагента в "ОСВ" (поиск по вхождению через InStr, не точное совпадение).
3. Сравнить суммарные поступления с сальдо конечным.
4. Контрагент не найден в ОСВ — строки в выписке залить жёлтым (#FFFF00).
5. Сумма расходится более чем на 100 рублей — строки залить красным (#FF0000).
6. Расхождений нет — строки залить зелёным (#00FF00).
После завершения показать сообщение:
"Сверка завершена. Расхождений: [N]. Не найдено в ОСВ: [M]."
Показать диалог подтверждения в начале.
Лист "ОСВ" не изменять.
Важное уточнение по строчке “поиск по вхождению через InStr”: она решает проблему расхождения “ООО Ромашка” в выписке и “Ромашка ООО” в ОСВ. Без этого указания ChatGPT напишет поиск по точному совпадению, и половина реальных совпадений потеряется.
Ещё одна частая проблема: у вас несколько выписок за разные счета (расчётный, валютный, депозитный). Попросите ChatGPT добавить параметр — пользователь выбирает лист с выпиской из выпадающего списка, и макрос применяется к нужному. Это пять строк кода, но сильно упрощает работу при множественных счетах.
Автоматизация 3. Рассылка уведомлений должникам через Outlook

Сколько времени экономит: 33-53 минуты каждый цикл рассылки. Плюс единообразный тон всех писем.
Это самая популярная автоматизация у выпускников нашей школы. Сорок писем за 30 секунд против 40-60 минут ручной работы. Что нужно: таблица должников в Excel и Outlook, установленный и настроенный на том же компьютере.
Напиши VBA-макрос, который рассылает уведомления должникам через Outlook.
Лист "Должники":
A — название контрагента, B — ИНН, C — сумма долга в рублях,
D — дата возникновения долга, E — email для письма,
F — статус (пустая если не отправлено, "Отправлено" если уже получил).
Данные с строки 2 до последней непустой строки в столбце A.
Логика:
1. Перебрать строки данных. Пропустить строки, где F = "Отправлено".
2. Для каждой необработанной строки создать письмо в Outlook:
Кому: значение из столбца E
Тема: "Уведомление о задолженности - [значение из столбца A]"
Тело письма:
---
Уважаемые коллеги,
Обращаем внимание на наличие задолженности перед нашей компанией
в размере [столбец C, формат # ##0 руб.] по состоянию на [сегодняшняя дата].
Дата возникновения обязательства: [столбец D].
Просим произвести оплату или связаться с нами для урегулирования вопроса.
С уважением, Финансовый отдел
---
3. Письмо НЕ отправлять автоматически, сохранить как черновик в Drafts.
4. После обработки строки поставить в F значение "Отправлено", в G — дату.
В начале показать выбор: "Сохранить как черновики" или "Отправить сразу".
Если email в строке E пустой — строку пропустить.
Режим “черновик” критически важен при первом запуске. Проверьте 2-3 письма вручную: правильный ли текст, верный ли формат суммы, корректные ли email-адреса. Только после проверки переходите на режим автоотправки.
Дополнительная возможность: попросите ChatGPT добавить в тело письма вложение. Например, “Прикрепи к каждому письму акт сверки, имя файла: Акт_[контрагент].xlsx из той же папки”. Это требует чуть более сложного кода с FileSystemObject, но ChatGPT напишет с первого раза если точно описать путь к файлам и формат имён.
Нюанс для корпоративных почтовых систем: если у вас не Microsoft Outlook, а другой почтовый клиент (например, Яндекс 360 в корпоративном варианте), VBA-интеграция не сработает напрямую. В этом случае ChatGPT может написать альтернативный вариант через CDO (Collaboration Data Objects) с SMTP-сервером вашей компании.
Автоматизация 4. Отчёт план-факт с расчётом отклонений
Сколько времени экономит: 55-80 минут ежемесячно при ручном построении таблицы план-факт.
Классика финансового директора: сравнить план и факт, посчитать абсолютное и процентное отклонение, выделить статьи с превышением. С макросом это 5-7 минут вместо полутора часов.
Напиши VBA-макрос для создания отчёта план-факт.
Входные данные на листе "Данные":
- Столбец A: название статьи бюджета
- Столбец B: план (числа)
- Столбец C: факт (числа)
- Строка 1: заголовки ("Статья", "План", "Факт"). Данные с строки 2.
- Строк от 10 до 50 (определять динамически).
Задача:
1. Создать новый лист "Отчёт_ММГГ" (ММ — текущий месяц цифрами, ГГ — год).
2. Скопировать данные с листа "Данные".
3. Добавить столбец D "Отклонение руб." = Факт минус План.
4. Добавить столбец E "Отклонение %" = (Факт — План) / Абс(План) * 100.
Формат: 0.0 с символом процента.
5. Добавить столбец F "Исполнение" = Факт / План. Формат: 0%.
6. Строки где "Отклонение %" < -10%: залить красным фоном (#FFCCCC).
7. Строки где "Отклонение %" > +10%: залить жёлтым фоном (#FFFFCC).
8. В пределах +-10%: без заливки.
9. Итоговая строка после последней статьи: суммы по B, C, D.
10. Шапка: тёмно-синий фон (#1F4E79), белый шрифт, жирный.
11. Числовой формат: # ##0 для рублей.
Если лист уже существует — удалить и создать заново.
В начале спросить подтверждение.
Начинайте тестировать на копии файла с 5-10 строками. Убедитесь, что формулы считают верно и форматы отображаются корректно, затем подключайте к основному файлу.
Полезное расширение: попросите ChatGPT добавить в макрос экспорт готового отчёта в PDF. Добавьте в конец промпта: “После форматирования сохранить лист ‘Отчёт_ММГГ’ как PDF в ту же папку, что и книга, с именем ‘ПланФакт_ММГГ.pdf’.” GPT-5.5 добавит ExportAsFixedFormat — это пять строк, и отчёт сразу готов к отправке руководителю без ручного экспорта.
Автоматизация 5. Расчёт зарплаты с НДФЛ и страховыми взносами
Предупреждение: макрос рассчитывает по ставкам НДФЛ 2026 года. Ставки нужно проверять при каждом изменении налогового законодательства и актуализировать в коде. Нейросеть не обновляет их автоматически.
Макрос полезен для небольших компаний до 40-50 человек, где расчёт ведётся в Excel, а не в специализированной системе.
Напиши VBA-макрос для предварительного расчёта зарплаты.
Лист "Сотрудники":
A — ФИО (для теста: "Сотрудник 1", "Сотрудник 2")
B — оклад в рублях
C — фактически отработанные дни в месяце
D — количество рабочих дней в расчётном месяце
E — доход нарастающим итогом с начала года (до текущего месяца)
Данные с строки 2.
Рассчитать для каждого сотрудника:
1. Начисленную зарплату = B * (C / D). Округлить до рублей.
2. Ставку НДФЛ (актуальна на 2026 год, проверяйте перед использованием):
- До 2 400 000 руб. нарастающим итогом — 13%
- От 2 400 000 до 5 000 000 — 15%
- Свыше 5 000 000 — 22%
3. НДФЛ = Начисленная зарплата * Ставка. Округлить до рублей.
4. К выплате = Начисленная зарплата — НДФЛ.
5. Страховые взносы работодателя = Начисленная зарплата * 0.30
(до предельной базы, уточните актуальный размер базы).
Записать результаты в столбцы G:K:
G — Начислено, H — НДФЛ, I — К выплате, J — Взносы, K — Ставка НДФЛ.
Итоговая строка: суммы по G:J.
В начале показать предупреждение:
"Проверьте актуальность ставок НДФЛ перед использованием. Расчёт носит справочный характер."
Данные в A:E не изменять.
Это расчётный инструмент, а не учётная система. Финальные цифры всегда проверяет бухгалтер по нормам НК РФ на дату начисления.
Практический совет: если в компании есть сотрудники с правом на налоговые вычеты (стандартные вычеты на детей), попросите ChatGPT добавить дополнительный столбец “Вычет” и скорректировать расчёт НДФЛ. Это добавит 15-20 строк кода, но модель справится. Для более сложных случаев (имущественные вычеты, инвестиционные) лучше оставить дополнительный ручной расчёт и использовать макрос только для базового начисления.
Автоматизация 6. Реестр договоров с автообновлением статусов

Сколько времени экономит: не столько часы, сколько контроль. Реестр договоров без автообновления — мёртвый документ. С макросом — живой инструмент.
Запускаете каждое утро одной кнопкой и сразу видите: что просрочено, что истекает в ближайшие 30 дней, что закрыто.
Напиши VBA-макрос для автообновления статусов в реестре договоров.
Лист "Реестр":
A — номер договора, B — контрагент, C — дата начала, D — дата окончания,
E — сумма договора, F — оплачено накопительно, G — статус.
Данные с строки 2.
Логика присвоения статусов (обновить в столбце G):
- "Завершён" — дата окончания (D) < сегодня И доля оплаты (F/E) >= 0.95
- "Просрочен" — дата окончания (D) < сегодня И доля оплаты (F/E) < 0.95
- "Истекает через 30 дней" — дата окончания >= сегодня И <= сегодня + 30 дней
- "Активен" — во всех остальных случаях
Форматирование ячейки в столбце G:
- "Завершён" — зелёный фон (#C6EFCE)
- "Просрочен" — красный фон (#FFC7CE), жирный шрифт
- "Истекает через 30 дней" — оранжевый фон (#FFEB9C)
- "Активен" — без заливки
После обновления показать итог:
"Обновлено: [N] договоров. Просрочено: [N]. Истекает в 30 дней: [N]."
После того как макрос заработает, добавьте кнопку “Обновить статусы” прямо на лист реестра. Одно нажатие утром — актуальная картина по всей договорной базе.
Расширение для финансового контроля: попросите ChatGPT добавить второй макрос, который отправляет письмо ответственному менеджеру по просроченным договорам. Логика простая: перебрать строки со статусом “Просрочен”, взять email ответственного из соседнего столбца (добавьте его в реестр), отправить уведомление. Это объединяет автоматизацию 3 (рассылка) и автоматизацию 6 (реестр) в одну цепочку.
Автоматизация 7. Чек-лист закрытия месяца с автостатусами
Сколько времени экономит: контроль над 15-25 задачами вместо звонков каждому ответственному.
Закрытие месяца — сверки, начисления, проводки, согласования. Обычно это записки в телефоне или разрозненные напоминания. Макрос превращает это в управляемый дашборд.
Напиши VBA-макрос для управления чек-листом закрытия периода.
Лист "Чек-лист":
A — порядковый номер задачи
B — название задачи
C — ответственный
D — срок (дата)
E — статус (вводится вручную: "Выполнено" или пусто)
F — фактическая дата выполнения (заполняется автоматически)
Данные с строки 2.
Макрос "Обновить статусы":
1. Для строк где E = "Выполнено" и F пустое: записать в F текущую дату.
2. Строки со статусом "Выполнено": залить зелёным (#C6EFCE).
3. Строки где срок (D) < сегодня и E пустое: залить красным (#FFC7CE). Это просрочено.
4. Строки где срок в следующие 3 дня и E пустое: залить жёлтым (#FFEB9C).
5. В ячейку I1 вывести: "Выполнено: X из Y задач (Z%)"
Отдельный макрос "Новый период":
- Очистить столбцы E и F
- Прибавить ровно 1 месяц к каждой дате в столбце D
- Показать: "Чек-лист сброшен. Новые сроки установлены."
- Перед выполнением спросить подтверждение: это действие нельзя отменить.
Итог: финдир видит актуальный статус закрытия в одном файле без звонков каждому ответственному.
Расширенная версия: попросите ChatGPT добавить автоматическую отправку ежедневного дайджеста ответственным. Каждое утро макрос проверяет просроченные задачи и отправляет каждому ответственному (из столбца C) письмо со списком его задач, которые уже просрочены или истекают завтра. Это потребует объединения макроса с логикой из автоматизации 3 (Outlook), но ChatGPT напишет обе части в одном коде если описать задачу целиком.
Три кейса: сколько часов и рублей экономят наши выпускники
Кейс 1. Финансовый директор производственной компании, Екатеринбург.
Ежемесячное закрытие занимало три дня: P&L, ОДС, план-факт, сводка для собственника, презентация для совета директоров. После внедрения четырёх макросов из этой статьи (форматирование, план-факт, сверка, чек-лист закрытия) цикл сократился до полутора дней.
Конкретная экономия: 48 часов в год на механических операциях. Дополнительный эффект: отчёты стали визуально единообразными, количество уточняющих вопросов от собственника сократилось вдвое.
Кейс 2. Главный бухгалтер торговой компании, Москва. 120 контрагентов ежемесячно.
Сверка банковской выписки с ОСВ занимала 2.5-3 часа каждый месяц. После внедрения макроса: 4 минуты автоматической разметки и 20 минут на разбор реальных расхождений. С 2.5 часов до 24 минут.
Экономия: 26 часов в год. При стоимости рабочего времени главбуха 2 500 рублей в час — 65 000 рублей в год высвобождённого времени, которое теперь уходит на аналитику и разговор с руководителем.
Кейс 3. Финансовый менеджер IT-компании, Санкт-Петербург. Дебиторская задолженность.
80 контрагентов в реестре дебиторки, уведомления раз в две недели. До макроса: 45-60 минут на ручные письма. После: 7 минут (запуск, просмотр черновиков, отправка). Экономия: около 17 часов в год.
Дополнительный эффект: письма стали единообразными по тону и структуре, уменьшилось количество недопонимания с контрагентами о формулировках требований.
Отдельный момент про отладку в кейсе 2: ошибка с форматом дат — очень распространённая ситуация при работе с банковскими выгрузками. Разные банки отдают даты по-разному: одни как “31.03.2026”, другие как “2026-03-31”, третьи как “31 марта 2026” текстом. Если ваша банковская выписка выгружается в нестандартном формате, добавьте это в промпт: “Дата в столбце A хранится как текст в формате ‘31 марта 2026’. Конвертируй в дату перед сравнением.” GPT-5.5 напишет правильный парсер с первого раза.
Подпишись на Telegram-канал @findir_pro: каждую неделю промпты, кейсы и разборы автоматизаций для финансистов. Без воды и без рекламы.
Как исправить ошибку в макросе через ChatGPT

Красное диалоговое окно с текстом ошибки пугает с первого раза. После второго-третьего уже не пугает. Алгоритм простой.
Шаг 1: прочитайте текст ошибки (например, “Run-time error ‘1004’: Application-defined or object-defined error”). Шаг 2: в редакторе VBA жёлтым выделена строка, где остановился макрос. Запишите или скопируйте её. Шаг 3: вернитесь в ChatGPT с таким промптом:
Макрос выдаёт ошибку. Вот оригинальный код:
[вставьте весь код]
Текст ошибки: Run-time error '1004': Application-defined or object-defined error
Ошибка возникает на строке:
Sheets("Выписка").Range("A1").Select
Уточнение по файлу: лист называется "Выписка " (с пробелом в конце).
Исправь код и объясни, в чём была ошибка.
Обратите внимание на деталь: лишний пробел в имени листа — одна из самых частых причин ошибки 1004. ChatGPT исправляет такие вещи мгновенно, но вам нужно заметить расхождение между кодом и реальным файлом.
Пять самых частых ошибок и их причины:
| Ошибка | Что означает | Как описать ChatGPT |
|---|---|---|
| Error 1004 | Неверное имя листа или диапазона | Сообщите точное имя листа с учётом регистра |
| Error 9: Subscript out of range | Лист или книга с таким именем не найдены | Проверьте и уточните имена листов |
| Error 91: Object variable not set | Пустая ячейка там, где ожидались данные | Укажите, что делать при пустых ячейках |
| Error 13: Type mismatch | В числовом столбце оказался текст или пустая ячейка | Попросите добавить проверку типа данных |
| Error 400 | Проблема с диалоговым окном или формой | Опишите, какое сообщение появляется |
Все пять решаются за одно сообщение в ChatGPT при правильном описании.
VBA vs Power Query vs Python: что выбрать финансисту
Это не соревнование. Три разных инструмента для трёх разных типов задач.
| Параметр | VBA | Power Query | Python |
|---|---|---|---|
| Установка | встроен в Excel | встроен в Excel 2016+ | отдельно, требует настройки |
| Порог входа с ChatGPT | низкий | средний | высокий |
| Автоматизация действий | отлично | не умеет | через скрипт |
| Трансформация данных | хорошо | отлично | отлично |
| Отправка писем через Outlook | да | нет | через библиотеки |
| Создание и сохранение файлов | да | нет | да |
| Взаимодействие с UI Excel | полное | ограниченное | ограниченное |
| Большие данные (1M+ строк) | медленно | хорошо | очень быстро |
| Автообновление при изменении источника | требует запуска | автоматически | зависит от скрипта |
| IT-отдел нужен? | нет | нет | обычно да |
Мой вывод: если задача — автоматизировать действия (форматирование, рассылки, создание файлов, кнопки на листах), берите VBA. Если нужно загрузить и преобразовать данные из нескольких источников, берите Power Query. Если данных миллионы строк или нужна интеграция с внешними сервисами — это уже IT-проект.
Для финансиста среднего бизнеса, который работает один или в небольшой команде, VBA закрывает 80% задач автоматизации без участия IT.
Что ChatGPT не умеет в VBA и когда нужен программист
Честный ответ на вопрос, который задают всегда.
ChatGPT пишет надёжно:
- Макросы для одного или нескольких листов в рамках одной книги
- Форматирование, сортировку, фильтрацию
- Рассылки через Outlook
- Создание новых листов и файлов по шаблону
- Простые отчёты, сводки, сравнения
ChatGPT пишет с частыми ошибками:
- Сложная интеграция через COM с 1С, SAP, нестандартными ERP
- Макросы для Office 2010 и более старых версий
- Многопользовательские книги с разделёнными правами
- Обработка файлов с 50 000+ строк (код работает, но медленно)
Когда нужен программист:
- Задача требует интеграции с несколькими корпоративными системами одновременно
- Нужна архитектура: несколько модулей, версионирование, командная разработка
- Макрос должен работать в промышленной среде с ограниченными правами пользователя
- Ежедневная обработка сотен тысяч строк данных
Для задач, которые решаются одним макросом и работают на вашем компьютере, ChatGPT справляется надёжно. Это 90% того, что нужно финансисту в ежедневной работе.
Безопасность: что описывать в промпте и что не загружать
Два вопроса, которые задают всегда.
Первый: безопасно ли описывать структуру файла в ChatGPT?
Да, если вы описываете структуру словами (“в столбце A — контрагент, в B — сумма”), а не вставляете реальные данные. Реальные ИНН, суммы, имена клиентов и другие данные, составляющие налоговую или коммерческую тайну, в публичную нейросеть не отправляем. Подробно об обезличивании данных — в отдельной статье блога.
Второй: безопасен ли VBA-код из ChatGPT?
Код, который пишет ChatGPT, работает только в вашем файле на вашем компьютере. Он не отправляет данные никуда (если только вы не просили макрос делать HTTP-запросы к внешним сервисам). Но VBA имеет права локального пользователя: может удалять данные без предупреждения. Три правила безопасности:
- Всегда делайте резервную копию перед запуском нового кода
- Просматривайте код перед запуском: команды Delete, ClearContents, EntireRow.Delete без условий требуют особого внимания
- При первом запуске тестируйте на копии файла
Настройка безопасности макросов: Файл, Параметры, Центр управления безопасностью, Параметры макросов, выберите “Отключить все макросы с уведомлением”. В этом режиме Excel спрашивает разрешения перед каждым запуском.
Пошаговый чек-лист: первые три автоматизации за неделю
-
День 1. Выберите одну задачу для старта. Лучший выбор — форматирование ежемесячного отчёта. Риск минимальный (данные не изменяются), результат виден сразу.
-
День 1. Откройте ChatGPT на chatgpt.com и опишите файл по формуле из раздела выше: названия листов, буквы столбцов, номера строк, задача, ограничения.
-
Перед запуском: сохраните файл-оригинал в резервную копию. Всегда, без исключений.
-
Вставьте код в редактор VBA (Alt+F11, Insert, Module, Ctrl+V). Сохраните файл как .xlsm.
-
Запустите на тестовой копии файла, не на оригинале. Убедитесь, что результат правильный.
-
Исправьте ошибки при наличии: скопируйте текст, вернитесь в ChatGPT, попросите исправить.
-
Добавьте кнопку на лист для запуска без Alt+F11.
-
Сохраните рабочий код в личную библиотеку (заметка или папка с файлами).
-
День 3-4. Добавьте вторую автоматизацию. Рекомендую сверку или план-факт в зависимости от того, что занимает больше времени в вашей практике.
-
День 6-7. Добавьте третью. Через неделю у вас три работающих макроса и первый реальный результат по экономии времени.
Больше про AI в работе финансиста: ChatGPT для финансиста и бухгалтера, промпты для бухгалтера, Claude для финансиста, n8n для автоматизации финотдела.
Три канала онлайн-школы для финансистов
@findir_pro (45 000 подписчиков) — основной Telegram-канал онлайн-школы «Финансовый директор | Мастер CFO». Промпты для финансиста, разборы инструментов, новости AI применительно к финансовой профессии. Выходит ежедневно.
АИ с Софьей и Натали (13 000 подписчиков) — канал, где основатель школы Софья Бурцева и я разбираем свежие модели, делимся личными экспериментами, публикуем то, что не вписывается в формат основного канала. Если интересны нюансы и технические детали, это туда.
MAX (5 000+ участников) — закрытое сообщество для практиков. Разборы в реальном времени, нетворкинг с коллегами-финансистами, ранний доступ к новым материалам школы.
Курс «AI-навыки финансиста»: 10 модулей, 800+ выпускников, обучение на реальных финансовых задачах с обратной связью. Диплом государственного образца с лицензией, налоговый вычет 13% доступен. Подробности на fin-academy.pro/ai.