
Olá Luciano!
Algumas possíveis causas e soluções:
- Problemas de permissão no Excel:
- O Excel geralmente requer permissões interativas (usuário logado) para executar macros VBA. Quando você seleciona "executar com o usuário conectado ou não", ele perde essa interação com o ambiente gráfico do Windows. Isso pode impedir a execução da automação.
- Configurações de nível de integridade (UAC):
- Mesmo com privilégios elevados, o Excel pode não estar respondendo corretamente às elevações de permissão exigidas pelo UAC.
Solução: Verifique as configurações do UAC no sistema. Se for um servidor Windows, talvez precise ajustar as políticas de segurança para permitir que o Excel rode como administrador sem pedir permissão interativa.
- Configuração do Excel no Agendador de Tarefas:
- Algumas vezes, o Excel em segundo plano (sem a interface gráfica) pode ter problemas para abrir arquivos, especialmente se houver avisos ou prompts (como de segurança). Solução: No seu script VBS, adicione a linha
ExcelApp.DisplayAlerts = False
antes de abrir o arquivo Excel, assim ele ignora qualquer aviso.
- Erros de tempo de execução no Excel:
- Quando o Excel é executado sem a interface gráfica, erros que normalmente seriam exibidos como mensagens de alerta na interface podem fazer com que o processo falhe silenciosamente.
Solução: Adicione um bloco de tratamento de erro no seu VBA para capturar e logar erros que possam ocorrer durante a execução. Algo assim no seu VBA:
vba
On Error Resume Next
' Sua macro aqui
If Err.Number <> 0 Then
**' Salvar erro no log**
End If
- Tente verificar os logs de eventos no Agendador de Tarefas para identificar se algum erro específico está sendo lançado quando você usa essas opções.
- Se o problema persistir, como alternativa, pode considerar transformar o VBA em um script mais independente (como PowerShell) que manipula o Excel sem depender de tantos requisitos interativos.