Excel工作簿未关闭Python Excel COM

bxpogfeg  于 2023-03-24  发布在  Python
关注(0)|答案(1)|浏览(168)

下面的代码Excel应用程序正在打开,但由于某种原因没有关闭。请帮助我解决这个问题。

import win32com.client as win32
Filepath = r"C:\New_Technicals\Excel_devp_Test\Model_Variable_Pah_v1.xlsx"
excel = win32.gencache.EnsureDispatch('Excel.Application')
excel.Visible= True
excelApl= excel.Application.Workbooks.Open(Filepath)

ECU_OutSgls_ls =['xxx','yyy','zzz']
Path_ECU_OutSgls =[]

i=0
while i < len(ECU_OutSgls_ls):
c = excelApl.Worksheets("aaa").Range("A1:A100").Find(ECU_OutSgls_ls[i])
Path_ECU_OutSgls.append( excelApl.Worksheets("aaa").Range(c.Address).Offset(1,2))
i= i+1

excel.Application.ActiveWorkbook.Close
blmhpbnm

blmhpbnm1#

在下面的代码行中:

excelApl= excel.Application.Workbooks.Open(Filepath)

Application属性不是必需的。您已经有一个从EnsureDispatch函数返回的Application示例。
Open方法打开一个工作簿,并返回一个表示打开的工作簿的Workbook对象。因此,您应该看起来像这样:

workbook = excel.Workbooks.Open(Filepath)

当你需要关闭工作簿时,你可以简单地调用Close方法:

workbook.Close

相关问题