Запустить внешний макрос Версия 4 (Net)
Группа действий: Excel
Описание
Действие запускает в Excel-файле макрос, VBA-код которого указан в отдельном текстовом файле
Параметры и их настройки
Свойство | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|
Параметры | ||||
Контекст | Экземпляр Excel-документа, с которым работает действие | Robin.Excel | EXCEL_INSTANCE | Да |
Файл | Путь к текстовому файлу макроса, который содержит VBA-код | Robin.FilePath | C:\Users\User\Desktop\111.txt | Да |
Имя процедуры | Имя вызываемой функции или подпрограммы, которая указана в VBA-коде макроса | Robin.String | makros | Да |
Параметры | Значения входных параметров вызываемой функции или подпрограммы в коде макроса | Robin.Object | Нет | |
Результаты | ||||
Результат | Значение, возвращаемое запущенным макросом. Если указанный макрос ничего не возвращает, результат работы действия будет пустым | Robin.Object |
Особые условия использования
Чтобы запуск внешних макросов был возможен, следует выполнить следующие действия:
- Открыть параметры Excel.
- Выбрать "Центр управления безопасностью".
- Нажать на кнопку "Параметры центра управления безопасностью".
- В открывшемся окне выбрать "Параметры макросов".
- Поставить галочку напротив пункта "Доверять доступ к объектной модели проектов VBA" (если не установлена).
Если необходимо указать несколько параметров, пользователь должен указать в поле "Параметры" коллекцию, содержащую эти параметры. Значения параметров необходимо указывать в том же порядке, в каком эти параметры указаны в вызываемой функции.
Русский язык не поддерживается в названии макроса (функции).
Пример использования
Задача
Есть Excel - документ с данными.
Необходимо проверить актуальность дат в столбце дата по текущему месяцу. В случае если дата не актуально пометить красным цветом. Также необходимо вывести в диалоговое окно количество неактуальных дат.
Решение
Для реализации действия нужны следующие действия - "Открыть", "Запустить внешний макрос", “Сообщение”, “Сохранить”, “Закрыть”.
Реализация
- Собрать схему робота, состоящего из действий.
- Укажем параметры в действии “Открыть 1”.
- Укажем параметры в действии “Запустить внешний макрос”.
Подробнее по созданию макроса можно узнать здесь: Создание макросов.Пример макроса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
- Настроить параметры действия “Сообщение”.
- Укажем параметры в действии “Сохранить”.
- Укажем параметры в действии “Закрыть”.
- Нажмем на кнопку “Старт” и посмотрим результат.
Результаты
Макрос успешно отработал.