python winapi 检查工作表是否存在 [英] python winapi check if sheet exists

查看:33
本文介绍了python winapi 检查工作表是否存在的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用这个:

from win32com.client import Dispatch
excel_file = Dispatch("Excel.Application")
excel_file.Workbooks.Open(excel_result_path)
excel_file.Visible = 1
mySheet = excel_file.Worksheets.Add()
mySheet.Name = "name"

效果很好.唯一的问题是,如果工作表已经存在,我会收到一个错误消息,告诉我工作表已经存在

which works fine. the only problem is, if the sheet allready exists, i get an error telling me, that the sheet already exists

文件..\dynamic.py",第 554 行,setattrpywintypes.com_error: (-2147352567, 'Ausnahmefehler aufgetreten.', (0, 'Microsoft Excel', 'Kann einem Blatt nicht den gleichen Namen geben wie einem anderen Blatt, einer Objektbibliothek oder einer Arbeitsmappe, auf die Visual Basic Bezug nimmt.', 'xlmain11.chm', 0, -2146827284), 无)

File "..\dynamic.py", line 554, in setattr pywintypes.com_error: (-2147352567, 'Ausnahmefehler aufgetreten.', (0, 'Microsof t Excel', 'Kann einem Blatt nicht den gleichen Namen geben wie einem anderen Bla tt, einer Objektbibliothek oder einer Arbeitsmappe, auf die Visual Basic Bezug n immt.', 'xlmain11.chm', 0, -2146827284), None)

所以我的问题是,如何检查excel-sheet-name 是否已经存在?

so my question is, how can i check if an excel-sheet-name allready exists ?

推荐答案

'name' in [excel_file.Sheets(i).Name for i in range(1,excel_file.Sheets.Count+1)]

这篇关于python winapi 检查工作表是否存在的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆