Запустить внешний макрос Версия 4 (Net)

Группа действий: Excel 


Описание

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

  

Параметры и их настройки

Свойство

Описание

Тип

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

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

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

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

Robin.FilePath

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

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

Особые условия использования

Чтобы запуск внешних макросов был возможен, следует выполнить следующие действия:

  1. Открыть параметры Excel.
  2. Выбрать "Центр управления безопасностью".
  3. Нажать на кнопку "Параметры центра управления безопасностью".
  4. В открывшемся окне выбрать "Параметры макросов".
  5. Поставить галочку напротив пункта "Доверять доступ к объектной модели проектов VBA" (если не установлена).

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

Русский язык не поддерживается в названии  макроса (функции).

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

Задача

Есть Excel - документ с данными.

Необходимо проверить актуальность дат в столбце дата по текущему месяцу. В случае если дата не актуально пометить красным цветом. Также необходимо вывести в диалоговое окно количество неактуальных дат.

Решение

Для реализации действия нужны следующие действия - "Открыть", "Запустить внешний макрос", “Сообщение”, “Сохранить”, “Закрыть”.

Реализация

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

    Подробнее по созданию макроса можно узнать здесь: Создание макросов.
    Пример макроса
    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. Нажмем на кнопку “Старт” и посмотрим результат.

Результаты

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

  • Нет меток