Eu tenho o seguinte Skript que foi executado anteriormente manualmente:
set DIR="X:\SYSTEM\MAKROS"
X:
cd %DIR%
start /wait EXCEL.EXE /e-GENERATE_REPORTS BSYSTEM.XLA
Quando iniciado manualmente, isso funciona bem. O BSYSTEM.XLA
faz parte de um sistema de gerenciamento de projetos baseado em Excel, portanto, não posso exportar o arquivo para um formato de arquivo diferente.
Agora preciso executar esse script diariamente. Ao criar uma tarefa agendada para executar este .bat
-file, isso simplesmente não funciona. A tarefa termina dentro de alguns segundos (normalmente o script leva cerca de 10 minutos para ser concluído) com o código de resultado da última execução 0x1
e o histórico da tarefa não mostra nada de útil:
Eujátenteicriarumatarefaqueexecutadiretamenteo"C:\Program Files (x86)\Microsoft Office\Office16\EXCEL.EXE" /e-GENERATE_REPORTS BSYSTEM.XLA
, mas isso só faz com que isso seja mostrado no histórico:
Task Scheduler failed to launch action "C:\Program Files
(x86)\Microsoft Office\Office16\EXCEL.EXE" in instance
"{1fbeadd0-605b-4fe0-8d96-621281c53519}" of task "\Allgemein\TMG
Bericht". Additional Data: Error Value: 2147942667.
Eu também tentei um script vbs como este:
set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
set xlBook = xlApp.Workbooks.Open("X:\SYSTEM\MAKROS\BSYSTEM.XLA")
xlApp.Run "GENERATE_REPORTS"
xlBook.Close
xlApp.Quit
Mas desta forma eu recebo o erro The macro can not be executed. The 'GENERATE_REPORTS' macro may not be available in this workgroup, or all macros have been disabled
, o que não é verdade, pois funciona bem com o script obove sendo chamado manualmente. A unidade de rede a partir da qual o arquivo é criado é definida como "local confiável".
Curiosamente, quando eu abro BSYSTEM.XLA
eu não vejo nenhuma folha, apenas um arquivo excel com todos elemnts acinzentado exceto o botão makro e ao tentar dar uma olhada nas macros eu não vejo nenhum. É por isso que estou lutando para entender o que o start /wait EXCEL.EXE /e-GENERATE_REPORTS BSYSTEM.XLA
faz mesmo ..
Eu realmente não consegui encontrar nada de útil sobre as opções de linha de comando do Excel, exceto estes dois documentos:
O que posso fazer para fornecer uma alternativa em script ao script btach acima para que eu possa executar esse comando como uma tarefa agendada ou o que posso fazer para corrigir o vbs?