SAP Analysis from Excel
Мне нужно сделать скрипт, который будет автоматически открывать Excel с настройкой COM - SAP Analysis from Excel. информацию искал на Github/Stackoverflow и других форумах, а также в документации SAP, но ответа не нашел. Проблема в том, что когда я запускаю Excel, с надстройкой Analysis, через данный код, то файл открывается, но БЕЗ надстройки и выдает ошибку(ошибку ниже прилагаю) Однако если открыть файл Excel без скрипта Python, то надстройка появляется автоматически всегда. Мне необходимо, чтобы Python запускал эту надстройку. Подскажите, что делать, возможно есть другие обходные решения. Код ошибки
import win32com.client as win32
from pathlib import Path
sap_aof_excel_file = Path.cwd().joinpath(r"C:\Users\alexandrovn\Desktop\mo\MO2022.xlsm")
bwclient = "CODE"
bwuser = "LOGIN"
bwpassword = "PASS"
excel_instance = win32.gencache.EnsureDispatch('Excel.Application')
excel_instance.Visible = True
excel_instance.DisplayAlerts = False
workbook_sap = excel_instance.Workbooks.Open(sap_aof_excel_file, False, False)
for addin in excel_instance.Application.COMAddIns:
if addin.progID == 'SapExcelAddIn':
if addin.Connect == False:
addin.Connect = True
elif addin.Connect == True:
addin.Connect = False
addin.Connect = True
lResult = excel_instance.Application.Run("SAPLogon", "DS_1", bwclient, bwuser, bwpassword)
lResult = excel_instance.Application.Run("SAPExecuteCommand", "RefreshData", "DS_1")
workbook_sap.Save
workbook_sap.Close()
excel_instance.DisplayAlerts = True
excel_instance.Application.Quit()
excel_instance = None
workbook_sap = None
Ошибка:
C:\Users\alexandrovn\Anaconda3\python.exe C:/Users/alexandrovn/Desktop/mo/test.py
Traceback (most recent call last):
File "C:\Users\alexandrovn\Desktop\mo\test.py", line 30, in <module>
addin.Connect = True
File "C:\Users\alexandrovn\Anaconda3\lib\site-packages\win32com\client\dynamic.py", line 549, in __setattr__
self._oleobj_.Invoke(entry.dispid, 0, invoke_type, 0, value)
pywintypes.com_error: (-2147352567, 'Error.', (0, 'Microsoft.VisualStudio.Tools.Applications.Hosting', 'Failed to install the add-on.', None, 0, -2146233088), None)
Process finished with exit code 1