这个问题是针对从 Excel 调用 Python 的。在 VBA 中,你会做你的RunPython("import mymodule; mymodule.my_function()")
在 Python 中,你会有类似的东西,
from xlwings import Workbook, Sheet, Range
def my_function():
wb = Workbook.caller() # Create reference to calling Excel file
Range('A1:C3').clear_contents() # Clear some cells
我的问题是这将适用于您的第一个 Excel 实例。但是,如果您打开了两个实例,并且您尝试在第二个实例中运行代码,您将收到一个引发的异常,说:“无法建立连接!确保调用工作簿是活动工作簿并且是在 Excel 的第一个实例中打开。”
所以看起来这似乎只适用于第一个实例。有没有解决的办法?你能确定你在 Python 脚本中的哪个实例吗?用户希望运行跨多个实例调用 Excel 的 VBA 宏。