我正在尝试自动构建使用Bloomberg插件降低实时价格的Excel 2007电子表格.问题是,当我通过win32com打开Excel时,Bloomberg插件无法加载(因此所有公式都以“#NAME?”错误结束).
手动卸载并重新安装插件有效,但从录制的宏复制VBA代码会导致“运行时错误’13’:类型不匹配”错误.我可以单击“结束”按钮,一切运行正常,但我想让它完全自动化.
我的代码是:
import win32com.client
xl = win32com.client.gencache.EnsureDispatch("Excel.Application")
xl.Visible = True
MainWorkBook = xl.Workbooks.Add(1)
xl.AddIns("Bloomberg Excel Tools").Installed = False
xl.AddIns("Bloomberg Excel Tools").Installed = True
设置DisplayAlerts = False不会捕获运行时错误.
最佳答案
你必须用以下内容打开bloomberg.xla文件:
原文链接:/python/439037.htmlfrom win32com.client import DispatchEx
xl = DispatchEx('Excel.Application')
xl.Workbooks.Open('C:/blp/API/Office Tools/BloombergUI.xla')
看到这里获取更多信息:
http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.addin.aspx