首页 > 解决方案 > 如果文件已经打开,则使用 python 关闭 excel 文件

问题描述

嗨,我是 python 脚本的新手,我为 SAP 自动化编写了一个代码,但最后打开了 excel 文件,所以我想关闭该文件。

我需要有关代码的帮助来检查特定的excel文件是否已经打开,如果打开而不是使用python关闭相同的文件。

提前感谢您的帮助。

我正在使用以下代码:

        with open('C:\\Users\\Xyz\\AppData\\Local\\Temp\\export.XLSX', 'r') as f:
        f.close()

另外,如果有人可以帮助我在 python 中转换 VBA 函数并告诉我如何调用它。

Function WKopen(wb As String) As Boolean
On Error Resume Next
WKopen= Len(Workbooks(wb).Name)
End Function

Sub BK_Close()
On Error Resume Next
If WkOpen("Export_Download.XLSX") Then
Workbooks("Export_Download.xlsx").Close savechanges:=False
Else
End If
End Sub

标签: pythonsap

解决方案


好的。您实际上已经使用了两种方法一起关闭文件。

您应该使用withwhich 在您离开块后立即关闭文件with

或者

你可以打开你的文件而不with喜欢:

f = open('C:\\Users\\Xyz\\AppData\\Local\\Temp\\export.XLSX', 'r')

然后使用f.close().


现在,由于您是新手,在 Python 上打开 Excel 文件的最佳方法是使用pandas库的read_excel函数。

因此,代码将是:

import pandas as pd
pd.read_excel('C:\\Users\\Xyz\\AppData\\Local\\Temp\\export.XLSX')

这是它的文档,如果您需要此功能的更多内容,请点击此处


推荐阅读