Как часть созданного мной планировщика на основе Excel, я использую функцию Application.Ontime следующим образом для выполнения макросов в указанное время
Sub Load
//snipped for brevity
Dim startName As String
startName = "'StartSub""" & filePath & """, """ & fileName & """, """ & macroName & """'"
Application.OnTime y, startName
End Sub
Sub StartSub(filePath As String, fileName As String, macroName As String)
Dim wb As String
wb = "'" & filePath & "'!" & macroName
Application.Run wb
Application.Workbooks(fileName).Close Savechanges:=True
End Sub
Тестирование и простой POC, похоже, сработали очень хорошо. Проблема, с которой я сталкиваюсь, заключается в том, что одна из таблиц защищена паролем. Проблема в том, что диалог ввода пароля препятствует выполнению макроса, что, я думаю, ожидается. Нет необходимости в доступе на запись к защищенной паролем книге, поскольку выходные данные и результаты экспортируются в несколько отчетов.
Мой вопрос: как преодолеть это и запустить макросы из защищенной паролем рабочей книги с помощью Application.Run?