Как автоматизировать открытие, сохранение и закрытие файла Excel в Windows?

Как автоматизировать открытие, сохранение и закрытие файла Excel в Windows?

У меня есть клиент, который автоматически получает отчеты в формате Excel. Файлы имеют .xlsxрасширение. Они используют FileMaker для преобразования данных в предпочитаемый ими формат.

FileMaker поддерживает импорт .xlsxфайлов, но задыхается от этих файлов, если они не открыты, не сохранены и не закрыты в Excel. Все, что нужно сделать, это открыть файл, сохранить его и закрыть. В содержимое не вносятся никакие изменения. Это работает, когда они делают это в Windows или я делаю это в macOS.

Если бы они использовали macOS, я бы использовал AppleScript для автоматизации этого процесса. Есть ли собственный метод Windows для этого?

решение1

@HelpingHand указал мне верное направление. В итоге я достаточно изучил VB Script и написал небольшой скрипт с двойным щелчком, который преобразует файлы по указанному пути из Excel в 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

Связанный контент