Макросы VBA для Excel

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

Отвечает за 1 секундуПервые запросы бесплатно, без регистрации
Примеры запросов — нажмите, и текст подставится в чат:

🛠️ AI GPT для программирования

Что умеет нейросеть

  • писать макросы VBA для обработки листов и диапазонов
  • создавать циклы по строкам, столбцам и листам книги
  • делать выгрузку данных в отдельные файлы, листы и таблицы
  • генерировать пользовательские функции VBA для формул Excel
  • писать код для суммы прописью, дат и других преобразований
  • помогать с формами UserForm, кнопками и обработчиками событий

Как получить рабочий результат

  1. Уточните структуру книги: названия листов, диапазоны, таблицы и какие столбцы нужно использовать.
  2. Опишите, что считать входом и результатом: откуда читать данные и куда именно записывать итог.
  3. Если нужен VBA-код, скажите, должен ли он работать с активным листом, всей книгой или выбранным диапазоном.
  4. Для пользовательских функций укажите формат результата: число, текст, дата, сумма прописью или логическое значение.
  5. Если нужна форма или обработка ошибок, сразу напишите, какие поля, кнопки и проверки должны быть в интерфейсе.

Разборы типичных задач

Сумма прописью для ячейки Excel

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

«Напиши UDF на VBA для Excel, которая переводит число в сумму прописью по-русски и возвращает текст для ячейки.»

Option Explicit

Public Function SummaPropisyu(ByVal Amount As Double) As String
    Dim rub As Long
    rub = Fix(Amount)
    SummaPropisyu = CStr(rub) & " рублей"
End Function

Цикл по строкам с проверкой пустых ячеек

Этот прием нужен для обработки таблиц без ручного перебора. Макрос проходит по строкам и отмечает те, где в нужном столбце нет значения.

«Сделай макрос VBA, который проходит по строкам листа и выделяет желтым те строки, где в столбце E пусто.»

Option Explicit

Sub HighlightEmptyRows()
    Dim ws As Worksheet, lastRow As Long, i As Long
    Set ws = ActiveSheet
    lastRow = ws.Cells(ws.Rows.Count, "E").End(xlUp).Row
    For i = 2 To lastRow
        If Trim(ws.Cells(i, "E").Value) = "" Then
            ws.Rows(i).Interior.Color = vbYellow
        End If
    Next i
End Sub

Выгрузка данных на отдельный лист

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

«Нужен VBA-макрос для Excel: скопировать строки из листа «Данные» на лист «Отчет», если в столбце C стоит значение «Да».»

Option Explicit

Sub ExportRows()
    Dim wsSrc As Worksheet, wsDst As Worksheet
    Dim lastRow As Long, r As Long, dstRow As Long
    Set wsSrc = Worksheets("Данные")
    Set wsDst = Worksheets("Отчет")
    wsDst.Cells.Clear
    wsSrc.Rows(1).Copy wsDst.Rows(1)
    dstRow = 2
    lastRow = wsSrc.Cells(wsSrc.Rows.Count, "A").End(xlUp).Row
    For r = 2 To lastRow
        If wsSrc.Cells(r, "C").Value = "Да" Then
            wsSrc.Rows(r).Copy wsDst.Rows(dstRow)
            dstRow = dstRow + 1
        End If
    Next r
End Sub

Что даёт тариф

Платный тариф даёт доступ к сильной модели GPT-5+, которая лучше справляется со сложными VBA-сценариями, многошаговой логикой и доработкой чужого кода. Также доступны более длинные ответы и загрузка файлов целиком, чтобы разбирать книги Excel, макросы и структуры листов без ручного копирования. Первый месяц «Продвинутого» — 99 ₽, подробности на странице тарифов.

Ограничения и безопасность

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

Часто задаваемые вопросы

Можно ли сгенерировать макрос под мою структуру таблицы?
Поможет ли нейросеть написать пользовательскую функцию Excel?
Можно ли получить код для обработки всех листов книги?
Подойдет ли код для старых версий Excel?
Можно ли сделать форму UserForm через чат?
Что делать, если макрос работает не так, как нужно?
Можно ли попросить формулу вместо VBA?
AiGPTbot