PyN*_*bie 0 python excel attributes win32com
我一直在努力为对象分配一个属性(或者它是一个实例)
xl=win32com.client.Dispatch('Excel.Application')
xl.Visible=0
srce=xl.Workbooks.Open('myexcelfile')
srce.CheckCompatibility='False'
Run Code Online (Sandbox Code Playgroud)
如果我在srce对象中查询其CheckCompatibility属性,我会收到'False'的响应
>>> srce.CheckCompatibility
False
Run Code Online (Sandbox Code Playgroud)
所以我天真地想,无论如何我都可以保存
srce.SaveAs(R'C:\newtttxt14.xls',的FileFormat = 1)
但是当我这样做时,兼容性检查器对话框出现了.我点击继续,文件保存,然后我再次检查兼容性.
>>> srce.CheckCompatibility
True
So I again try to set it and this time I am successful
srce.CheckCompatibility='False'
Run Code Online (Sandbox Code Playgroud)
我再次查询它:
>>> srce.CheckCompatibility
False
Run Code Online (Sandbox Code Playgroud)
现在,当我尝试保存文件时,不会出现兼容性检查器对话框,文件保存完全是我想要的.
在尝试以另一种格式保存文件之前,我需要确定能否设置srce的属性 - 这可能以其他方式发生吗?
谢谢
我不确定,但我怀疑发生了什么是以XLS格式保存文件正在重置值,CheckCompatibility因为Excel 97-2003二进制工作簿的该属性的默认值为True.
在任何情况下,Excel在保存文件时可能会显示对话框的原因有多种,而不仅仅是兼容性检查程序.我怀疑你真正想要的是禁止对话框,以便在脚本保存文件时不需要用户交互.您可以通过添加:
>>> xl.DisplayAlerts = False
Run Code Online (Sandbox Code Playgroud)
在你打电话之前srce.SaveAs(...).
| 归档时间: |
|
| 查看次数: |
1499 次 |
| 最近记录: |