环境
操作系统:Win7
Excel 2016 64位
简体中文
xlwings 0.30.5
问题
当我使用下面的代码将PDF文件添加到Excel中时,IconFileName和IconLabel参数完全没有效果,嵌入的PDF变成了一个非常小的点,如果放大点,我可以看到一个没有任何标签文本的白色矩形。
此外,它将在保存Excel到新路径的行中获得错误。
obj = sheet1.api.OLEObjects()
obj.Add(ClassType=None, Filename=os.path.abspath(path), Link=False, DisplayAsIcon=True, IconFileName='test.ico', IconLabel='test')
sheet1.save(os.path.abspath(new_path))
如果使用DisplayAsIcon= False,则PDF将很好地嵌入,但不会显示为图标。它起作用了,可以保存为没有任何错误。
obj.Add(ClassType=None, Filename=os.path.abspath(path), Link=False, DisplayAsIcon=False)
有没有人对DisplayAsIcon有同样的问题?非常感谢。
回溯
File "C:\Users\account\AppData\Roaming\Python\Python37\site-packages\xlwings\main.py", line 1163, in save
self.impl.save(path, password=password)
File "C:\Users\account\AppData\Roaming\Python\Python37\site-packages\xlwings_xlwindows.py", line 895, in save
os.path.realpath(path), FileFormat=file_format, Password=password
File "C:\Users\account\AppData\Roaming\Python\Python37\site-packages\xlwings_xlwindows.py", line 122, in call
v = self.__method(*args, **kwargs)
File "C:\Users\account\AppData\Local\Temp\gen_py\3.7\00020813-0000-0000-C000-000000000046x0x1x9.py", line 46616, in SaveAs
, Local, WorkIdentity)
pywintypes.com_error: (-2147352567, '发生意外。', (0, 'Microsoft Excel', '文档未保存。', 'xlmain11.chm', 0, -2146827284), None)
我试着在另一台装有Office 2021和Win10的电脑上做同样的事情。这不会是一个错误,可以保存。无论我选择DisplayAsIcon=True还是False,嵌入的PDF都将显示为具有默认PDF图标和文件名的图标。而且IconFileName和IconLabel参数也完全不起作用。
我需要在指定的计算机中添加在win7 Excel2016中显示为图标的PDF,并为此问题卡住了几个星期。
有什么办法解决吗?
如果有什么想法的话会有很大的帮助。
1条答案
按热度按时间qlvxas9a1#
如果启用
DisplayAsIcon
然后你需要包含
IconIndex
,例如下面的代码示例对我来说工作得很好。
Filename
,因此ClassType
可以省略或设置为None。*