Eu usei AutoIt para criar um script que abre o Excel, abre o único arquivo (que começa com "elec") em uma pasta especificada (que começa com "viat"), imprime, fecha o Excel e executa um arquivo em lotes para arquivar o arquivo que acabou de ser impresso.
Aqui está o código do arquivo de script AutoIt. Eu estava batendo com a cabeça nisso por um tempo até que descobri que precisava dos comandos Sleep para que funcionasse corretamente.
Run("C:\Program Files (x86)\Microsoft Office\Office14\Excel.exe")
WinWaitActive("Microsoft Excel")
Send("^o")
WinWaitActive("Open")
ControlClick("Open", "", 1148)
Send("c:\viat{DOWN}{ENTER}")
Sleep(1000)
Send("elec")
Sleep(1000)
Send("{DOWN}{ENTER}")
WinWaitActive("Microsoft Excel")
Send("^p")
Sleep(1000)
Send("{ENTER}")
Sleep(1000)
WinClose("Microsoft Excel")
Sleep(1000)
Run(""C:\Users\Chris\Documents\ViaTrack Archives\archiver.bat"")
E aqui está o código do archiver.bat:
move "C:\ViaTrack Reports\*.*" "C:\Users\Chris\Documents\ViaTrack Archives"
É uma codificação extremamente simplista, mas faz o trabalho. A principal desvantagem deste script é que ele fará com que o Excel lance um erro se o arquivo não existir na pasta. No entanto, ele está programado para ser executado cerca de uma hora após o envio do arquivo para mim por e-mail, para permitir atrasos inesperados.
Normalmente, o arquivo é enviado por e-mail às 5h40 todos os dias da semana. Historicamente, nunca chegou depois das 5:45. O Mail Attachment Downloader está configurado para verificar novos anexos a cada 15 minutos.
Funcionou muito bem esta manhã. A gerente do Departamento de Faturamento ficou feliz em entrar e descobrir que o relatório dela estava esperando por ela na impressora, e ela não precisou imprimi-lo sozinha.