xlwings RunPython с аргументами функции - PullRequest
0 голосов
/ 01 марта 2019

Я пытаюсь запустить функцию RunPython с помощью кнопки в Excel.Я хотел бы, чтобы функция принимала параметр из коробки в Excel, что-то вроде этого:

Sub ImportData()
    Dim choice As String
    choice = Range("B2").Value
    RunPython ("import Excel_module; Excel_module.importing_data(choice)")
End Sub

Это возможно?И если да, то как мне написать код?Я бы предпочел не использовать UDF.

1 Ответ

0 голосов
/ 01 марта 2019

Вы можете сделать это двумя способами:

1) Используя RunPython, как вы:

Вам нужно будет использовать конкатенацию строк:

RunPython ("import Excel_module; Excel_module.importing_data(" & choice & ")")

2) Или, если вы работаете только в Windows, вы также можете использовать декоратор xw.sub и использовать импортированную функцию из VBA, как если бы она была встроенной функцией VBA, см. docs .В настоящее время он не показан в документах, но они принимают аргументы.

...