Blue Prism — запуск нескольких макросов в процессе

Я сталкиваюсь с ошибкой экземпляра при попытке запустить 2 макроса VBO Excel в процессе.

Мой процесс выглядит следующим образом (обратите внимание, что я запускаю 2 макроса подряд): Создать экземпляр - Открыть рабочую книгу - Активировать рабочий лист - Запустить макрос - Создать экземпляр - Открыть рабочую книгу - Активировать рабочий лист - Запустить макрос

Ошибка, полученная для второго прохода: Рабочая книга не найдена: Рабочая книга с именем: Выберите Clients.xls, не найденный в экземпляре: 0

есть идеи?


person leebird    schedule 24.03.2018    source источник


Ответы (1)


Причина, по которой вы видите эту ошибку, связана с тем, как «экземпляры» Excel логически расположены при запуске Blue Prism. TL;DR: не используйте действие Create Instance более одного раза, вместо этого открывайте все книги в одном экземпляре.


При создании экземпляра Excel Blue Prism присваивает этому экземпляру числовую переменную handle. Используя этот дескриптор, вы сможете получить доступ только к книгам, созданным в этом экземпляре. Логически каждый экземпляр будет иметь свои отдельные книги, рабочие листы и т.д.:

Отдельные экземпляры Excel

Поскольку Create Instance создает совершенно отдельный экземпляр Excel, вы не сможете получить доступ к книгам, созданным в первом экземпляре. Вместо того, чтобы рассылать спам Create Instance, используйте Open Workbook и передайте тот же handle, который вы изначально назначили. Оттуда вы сможете получить доступ ко всему, что открывали ранее.

Один экземпляр Excel (лучший метод)

person esqew    schedule 25.03.2018