在 excel 文件中使用图表随数据更新而更新

好吧, 我其实也不知道怎么及时更新, 所以就……具体的实现逻辑是首先有个模板 excel(xlsm),在这个里面写好你生成图表需要调用的宏,然后在你的这个流程中去拷贝这个模板文件,把你所有更新的数据放进去,再执行文件中的宏,生成 xlsx 文件,然后把原先拷贝的 xlsm 删除(模板文件勿动)就好了
代码如下:

import win32com.client # 导包


xl = win32com.client.Dispatch("Excel.Application")  

xl.Workbooks.Open(dst_path)  #dst_path为拷贝模板文件后写入数据了的文件

xl.Application.Run("a")  # a与wa都是用到的宏

xl.Application.Run("wa")

wb = xl.ActiveWorkbook

xl.DisplayAlerts = False

wb.DoNotPromptForConvert = True

wb.CheckCompatibility = False

wb.SaveAs(final_path, FileFormat=51, ConflictResolution=2)   #final_path为最终生成的xlsx文件

xl.Application.Quit()

del xl

xl = None

最终生成如下 xlsx 文件 (数据被图表遮住了)
在 excel 文件中使用图表随数据更新而更新
如果需要把数据显示出来, 可以加个拖动组件
在 excel 文件中使用图表随数据更新而更新