Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Действие запускает в Excel-файле макрос, VBA-код которого указан в отдельном текстовом файле

  

Параметры

...

и их настройки

...

Входные данные

Контекст                      Экземпляр Word-документа, в котором будет запущен внешний макрос

Файл                            Путь к текстовому файлу макроса, который содержит VBA-код

Имя процедуры          Имя вызываемой функции или подпрограммы, которая указана в VBA-коде макроса

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

Выходные параметры

Результат Значение, возвращаемое запущенным макросом

Настройки

Свойство

Описание

Тип

Пример заполнения

Обязательность заполнения поля

Параметры
КонтекстЭкземпляр Excel-документа, с которым работает действиеRobin.ExcelEXCEL_INSTANCEДа
Файл

Путь к текстовому файлу макроса, который содержит VBA-код

Robin.FilePath

C:\Users\User\Desktop\111.txtДа
Имя процедурыИмя вызываемой функции или подпрограммы, которая указана в VBA-коде макросаRobin.StringmakrosДа

Параметры
Значения входных параметров вызываемой функции или подпрограммы в коде макросаRobin.Object
Нет
Результаты
РезультатЗначение, возвращаемое запущенным макросом. Если указанный макрос ничего не возвращает, результат работы действия будет пустымRobin.Object

...

  1. Собрать схему робота, состоящего из действий:.
  2. Укажем параметры в действии “Открыть 1”.
  3. Укажем параметры в действии “Запустить внешний макрос”.

    Подробнее по созданию макроса можно узнать здесь: Создание макросов.
    Блок кода
    languagevb
    titleПример макроса
    Function TestMonth() As Long
        Dim ws As Worksheet
        Dim lastRow As Long
        Dim currentMonthYear As String
        Dim cell As Range
        Dim counter As Long
        Set ws = ActiveSheet
        lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
        currentMonthYear = Format(Now, "MM.YY")
        counter = 0
        For Each cell In ws.Range("A1:A" & lastRow)
            Dim cellMonthYear As String
            cellMonthYear = Format(cell.Value, "MM.YY")
            If cellMonthYear <> currentMonthYear Then
                counter = counter + 1
                cell.Interior.Color = RGB(255, 0, 0)
            End If
        Next cell
        TestMonth = counter
    End Function
  4. Настроить параметры действия “Сообщение”.
  5. Укажем параметры в действии “Сохранить”.
  6. Укажем параметры в действии “Закрыть”.
  7. Нажмем на кнопку “Старт” и посмотрим результат

Результаты

Макрос успешно отработал: