Python - Excel-Makro ausführen

Ich möchte Python verwenden, um ein in MacroBook.xlsm enthaltenes Makro in einem Arbeitsblatt in Data.csv auszuführen.

Normalerweise habe ich in Excel beide Dateien geöffnet und verschiebe den Fokus auf die Datei Data.csv und führe das Makro von MacroBook aus. Das Python-Skript lädt die Datei Data.csv täglich herunter, sodass ich das Makro nicht in diese Datei einfügen kann.

Hier ist mein Code:

import win32com.client
import os
import xl

excel = win32com.client.Dispatch("Excel.Application")

macrowb = xl.Workbook('C:\MacroBook.xlsm')
wb1 = xl.Workbook('C:\Database.csv')
excel.Run("FilterLoans")

Ich erhalte einen Fehler

pywintypes.com_error: (-2147352567, 'Ausnahme aufgetreten.', (0, u'Microsoft Excel ', u "Makro' FilterLoans 'kann nicht ausgeführt werden. Das Makro ist in dieser Arbeitsmappe möglicherweise nicht verfügbar, oder alle Makros sind möglicherweise deaktiviert." , u'xlmain11.chm ', 0, -2146827284), None)

Der Fehler besagt, dass FilterLoans nicht in der Datei Database.csv verfügbar ist ... wie kann ich es importieren?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage