Запустить внешний макрос Версия 4 (.Net)
Группа действий: Excel
...
Действие запускает в Excel-файле макрос, VBA-код которого указан в отдельном текстовом файле.
Иконка действия
Image Modified
Параметры действия
Входные данные
- Поле “Контекст” - Экземпляр Word-документа, в котором будет запущен внешний макрос.
- Поле “Файл” – Путь к текстовому файлу макроса, который содержит VBA-код
- Поле “Имя процедуры” - Имя вызываемой функции или подпрограммы, которая указана в VBA-коде макроса.
- Поле “Параметры” - Значения входных параметров вызываемой функции или подпрограммы в коде макроса. Значения параметров необходимо указывать в том же порядке, в каком эти параметры указаны в вызываемой функции.
Настройки
СвойствоАнгл. наименованиеОписаниеТип | Пример заполнения | Обязательность заполнения поля | Параметры |
Контекст | Context | Экземпляр Excel-документа, с которым работает действиеFilling example | Mandatory field |
---|
Parameters |
---|
Context | Action context for working with an Excel document. | Robin.Excel |
EXCEL_INSTANCE | Да | Файл | File | Путь к текстовому файлу макроса, который содержит VBA-кодExcel context | Yes |
PathToFile | Path to the macro text file containing the VBA code. | Robin.FilePath |
C:\Users\User\Desktop\111.txt | Да | Имя процедуры | Procedure name | Имя вызываемой функции или подпрограммы, которая указана в VBA-коде макроса
| Yes |
Procedure name | Name of the called function or subroutine that is specified in the VBA code of the macro. | Robin.String |
makros | Да | ПараметрыParametersЗначения входных параметров вызываемой функции или подпрограммы в коде макроса
| Yes |
Parameters | Values of the input parameters of the called function or subroutine in the macro code. If it is necessary to specify several parameters, the user must specify in this field a collection containing these parameters. Parameter values must be specified in the same order in which these parameters are specified in the called function. | Robin.Object |
НетРезультатРезультаты |
Значение, возвращаемое запущенным макросом. Если указанный макрос ничего не возвращает, результат работы действия будет пустымValue returned by the running macro. If the specified macro returns nothing, the result of the action will be empty. | Robin.Object |
|
|
Особые условия использования
Чтобы запуск внешних макросов был возможен, следует выполнить следующие действия:
...
Русский язык не поддерживается в названии макроса (функции).
Пример использования
Задача
Есть Excel - документ.
Необходимо проверить актуальность дат в столбце дата по текущему месяцу. В случае если дата не актуально пометить красным цветом. Также необходимо вывести в диалоговое окно количество неактуальных дат.
Решение
Для реализации действия нужны следующие действия - "Открыть", "Запустить внешний макрос", “Сообщение”, “Сохранить”, “Закрыть”.
Реализация
- Собрать схему робота, состоящего из действий:
...
4. Подробнее по созданию макроса можно узнать здесь: Создание макросов.
Пример макроса
Блок кода |
---|
language | vb |
---|
linenumbers | true |
---|
|
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 |
...