
Tenho um cliente que recebe automaticamente relatórios em formato Excel. Os arquivos possuem uma .xlsx
extensão. Eles usam o FileMaker para manipular os dados em um formato de sua preferência.
O FileMaker oferece suporte à importação de .xlsx
arquivos, mas bloqueia esses arquivos, a menos que sejam abertos, salvos e fechados no Excel. Tudo o que precisa ser feito é abrir o arquivo, salvá-lo e fechá-lo. Nenhuma alteração é feita no conteúdo. Isso funciona quando eles fazem isso no Windows ou eu no macOS.
Se eles estivessem usando macOS, eu usaria AppleScript para automatizar esse processo. Existe um método nativo do Windows para fazer isso?
Responder1
@HelpingHand me indicou a direção certa. Acabei aprendendo bastante VB Script e escrevi um pequeno script clicável duas vezes que converte arquivos em um caminho específico do Excel para CSV.
set xls = CreateObject("Excel.Application")
xls.DisplayAlerts = False
set fso = CreateObject("Scripting.FileSystemObject")
set w_shell = CreateObject("WScript.Shell")
desktop = w_shell.SpecialFolders("Desktop")
folder_path = fso.GetAbsolutePathName(desktop) & "\Payroll\"
set folder = fso.GetFolder(folder_path)
set files = folder.Files
for each file in files
path = folder_path & file.Name
set workbook = xls.Workbooks.Open(path)
path = Replace(path, "xlsx", "csv")
workbook.SaveAs path, 6
workbook.Close False
next
xls.Quit