Gibt es einen dekorateur äquivalent zu PyXll @xl_func(macro=True)
mit xlwings?Gibt es einen Decorator äquivalent zu PyXll `@xl_func (macro = True)` mit xlwings?
Dies würde ermöglichen, mit der gesamten Arbeitsmappe in Excel zu interagieren?
Ein Dummy Beispiel: =test()
in Zelle ‚E5‘ gibt einen Fehler zurück:
@xw.func
def test():
wb = xw.Book.caller()
wb.sheets[0].range('A1').formula = wb.name
return 'done'
Unexpected Python Error: TypeError: Objects for SAFEARRAYS must be sequences (of sequences), or a buffer object.
Aus Gründen der Klarstellung: Excel-Funktionen zu schreiben, ohne Arrays Formeln oder Knöpfen Ich möchte in der Lage sein, oder Makros.
Ich denke, das ist ein Makro, nicht mehr Excel-Funktion. Bedeutung Ich kann es nicht aus einer Excel-Arbeitsmappe verwenden, es sei denn, ich füge eine Schaltfläche hinzu, die ich nicht benötige. Wenn ich "= my_macro()" in Excel ausführe, gibt es den Fehler "der Name, den Sie eingegeben haben, ist nicht gültig" – Sam
Können Sie mich auf die Dokumente in Pyxll von dem, was Sie tun möchten, zeigen? –
Sicher: [link] (https://enthdough.pyxll.com/api/decorators.html#xl-func) (siehe das Argument 'macro'. Es erlaubt die Registrierung der Funktion als Makro-Blatt-Äquivalent Funktion (gegen eine UDF). Ein Beispiel wird hier zur Verfügung gestellt: [link] (https://onthought.pyxll.com/examples/automation.html) – Sam