win32com uruchamiany via task scheduler

0

Poniższy Kod uruchamiany w Jupyterze oraz Anaconda prompt działa prawidłowo , gdy przerabiam go na .bat ,chcę uruchomić go ręcznie, lub z Harmonogramu zadań wówczas nie działa.

import win32com.client
xl = win32com.client.Dispatch("Excel.Application")  

wb = xl.Workbooks.Open(r'C:\Users\user\Downloads\Hpagebrake.xlsm')
xl.Application.Run('Hpagebrake.xlsm!Module1.test')
wb.Save()
xl.Application.Quit()

Tak wygląda .bat utworzony w notatniku.
"C:\Users\user\AppData\Local\Microsoft\WindowsApps\python.exe" "C:\Users\user\test.py"

0

Zapisz bez " " i najlepiej dodaj pythona do PATH, wtedy wystarczy: python C:\path\to\file\script.py %*

1

rozumiem, że chcesz wywołać 2 pliki jednocześnie.
Normalnie pliki woła się CALL i plik wsadowy .bat mógłby wyglądać tak

CallFile.bat

@echo off
CALL C:\Users\user\AppData\Local\Microsoft\WindowsApps\python.exe
CALL C:\Users\user\test.py

problem jest w tym, że tyczy to czasów DOS i OS/2 najpierw wywoła 1 plik jak zakończy działanie wywoła 2 plik
ale możesz napisać sobie coś takiego i powinno zadziałać

multiple.bat

@echo off
cd "C:\sciezka\"
start python.exe
cd "C:\sciezka\"
start test.py
exit

1 użytkowników online, w tym zalogowanych: 0, gości: 1