Я пишу скрипт Python для автоматизации процесса, который использует макросы Excel для форматирования файлов для ввода в другую программу позже. Я немного новичок в Python и совершенно новый для VBA, но я думаю, что у меня есть шаги.Python: скрыть Open File Dialog при запуске макроса Excel
До сих пор у меня есть это, чтобы запустить сам макрос (с помощью других SO сообщений):
xl = win32com.client.DispatchEx('Excel.Application')
xlpath = os.path.expanduser(xlfile)
wb = xl.Workbooks.Open(Filename=xlpath, ReadOnly=1)
xl.Run("my_macro")
На данный момент пробеги макро и вызывает Application.GetOpenFilename()
, чтобы открыть диалоговое окно для пользователя, чтобы выбрать файл для форматирования, который будет отличаться для каждого макроса.
В принципе, мой пользователь будет иметь разные исходные данные для форматирования при каждом запуске моего сценария. Сначала я хочу, чтобы они выбирали файлы, которые им нужно отформатировать, а затем я сохраню эти пути к файлам. Затем Я хочу подключить эти пути к файлу из макроса из Python вместо открытия диалога в Excel.
Есть ли способ сделать это, изменив макрос? Если нет, мне нужно будет переписать макрос в Python с одним из модулей для управления Excel?