如何使用终端或 Python 关闭 Excel 文件

如何使用终端或 Python 关闭 Excel 文件

我在用编写器使用 Python 脚本创建 Excel 文件。

当我重新运行脚本以使用新信息更新文件时(我需要经常这样做),我必须手动关闭 Excel 文件并重新打开它才能查看新版本的电子表格。

有没有办法自动执行这个过程:使用终端命令关闭 excel 文件(而不是应用程序),然后重新打开它。

我知道如何打开它,但不知道如何关闭文件。

答案1

看着Stack Overflow 上的一篇文章,答案是 Workbook COM 中包含一个 Close() 方法。来自上述帖子的代码片段:

xl = Dispatch('Excel.Application')
wb = xl.Workbooks.Open('New Workbook.xlsx')
# do some stuff
wb.Close(True) # save the workbook

以下是必要的语法规则来自微软网站

expression .Close(SaveChanges, Filename, RouteWorkbook)
expression A variable that represents a Workbook object.

对于 OSX,显然你需要使用应用脚本

经过一番观察,我对 appscript 并不太熟悉,你应该能够通过执行以下操作来完成你正在寻找的操作:

tell application "Microsoft Excel"
   close workbook 1 saving no
end tell

最后,这里是 Python 的 appscript 包的文档:

https://pypi.python.org/pypi/appscript

答案2

在 Python (3.6) 中这对我来说有效

import os

os.system(f'''/usr/bin/osascript -e 'tell app "Microsoft Excel" to close (every window whose name is "title-of-window")' ''')

相关内容