用python保存已经打开的Excel窗口

我一直有问题find这个答案。 我目前正在使用win32com,但它是非常强大的,我不知道如何挖掘已打开的Excel文件。

没有替代 ; 一个外部脚本打开Excel并写入数据,它不在硬盘上

您可以通过循环Excel.Application.Workbooks访问所有打开的工作簿:

import win32com.client as win32 excel = win32.gencache.EnsureDispatch('Excel.Application') print("Active WB:", excel.ActiveWorkbook.Name) for wb in excel.Workbooks: print("WB:",wb.Name) wb.Save() 

我没有足够的声望来赞扬Maxime Biette的回答,但这是正确的。

如果您只想要保存一个特定工作表:

 import win32com.client as win32 excel = win32.gencache.EnsureDispatch('Excel.Application') print("Active WB:", excel.ActiveWorkbook.Name) for wb in excel.Workbooks: if wb.Name == 'thenameofyourfile.xlsx' : print("WB:",wb.Name) wb.Save()