我正在尝试使用python更新Excel中图表的外部数据链接。图表位于
workbook1.xlsm
它引用的更新自身的数据位于
external_workbook.xlsx
. 分离的原因是数据必须在
WorkBoo1.xLSM
定期使用python,如果图表在
WorkBoo1.xLSM
.
我看过各种各样的解决方案,但到目前为止还没有一个适合我。到目前为止,我尝试的两种解决方案包括:(1)以编程方式刷新工作簿;(2)在工作簿中运行宏以编程方式刷新工作簿。
(1)代码:
import win32com.client as w3c
xlapp = w3c.gencache.EnsureDispatch('Excel.Application')
xlapp.Visible = 0
xlwb = xlapp.Workbooks.Open(r'{}\{}'.format(path, fname), False, True, None)
xlwb.RefreshAll() # Runs with no errors, but doesn't refresh
time.sleep(5)
xlwb.Save()
xlapp.Quit()
(2)代码:
# ***************** #
# Excel macro - I've verified the macro works when I have the worksheet open.
Sub Update_Links()
ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources
En