可能的错误? xlwings 不能 运行 一个 Excel 宏?

Possible bug? xlwings cannot run an Excel macro?

我在从 Python 获取 xlwings 到 运行 宏时遇到问题。尽管遵循 xlwings 文档中的代码,但我无法让 xlwings 执行 Excel 宏。例如,在名为 "Book.xlsm":

的 Excel 工作簿中
' in Excel workbook Book.xlsm
Sub Test()
   Set ws = Worksheets("ABC")
   ws.Range("A1").Value = 10
End Sub

此宏 运行 在 Excel 内正常。但是当我尝试从 Python 调用这个模块时,它失败了:

# in Python
import xlwings

wb = xlwings.Book('C:\Book.xlsm')
wb.macro('Test')
print('done.')

没有错误信息。 Python 代码只是 运行 结束,打印消息 "done." 但是当我检查工作表 ABC 时,什么也没有写。请注意,我可以连接到此工作簿并使用 xlwings 更改单元格值。我只是无法将其添加到 运行 测试宏。

另请注意,我之前使用过更旧的 xlwings(我认为是 0.7.0 之前的版本),它 运行 是我的宏,没有任何问题。我现在用的是0.10.0版本

尝试以下操作:

在VBA中:

Sub Test(number)
   Set ws = Worksheets("Hoja1")
   ws.Range("A1").Value = number
End Sub

在python中:

import xlwings as xw
wb1 = xw.Book('Libro1.xlsm')    
macro=wb1.macro('Test')
macro(10)
print('done.')