Excel 错误:尝试将多个对象插入 Excel 文件时出现“文档未保存”。适用于 zip 和 .mpp 文件扩展名,但不适用于 .doc 和 .docx 文件类型。插入后,该对象会显示一个白色的未知文件图像,并简单地说是 EMBED("Document","")。但是,当我手动插入这些文档时,我没有问题,它们显示为 Word 文档图标。有什么建议么?
import win32com.client as win32
xl = win32.gencache.EnsureDispatch('Excel.Application')
xl.Visible = 1
wb = xl.Workbooks.Open('BlankTemplate.xlsx') #New Excel file that is blank
xl.DisplayAlerts = False
ws = wb.Worksheets('Sheet1')
dest_cell = ws.Range('C5')
obj = ws.OLEObjects()
obj.Add(ClassType=None,Filename='Approval.zip',Link=False,DisplayAsIcon=False,Left=dest_cell.Left,Top=dest_cell.Top,Width=50,Height=50)obj.Add(ClassType= None,Filename='Final.docx',Link=False,DisplayAsIcon=True,Left=dest_cell.Left, Top=dest_cell.Top,Width=50,Height=50) obj.Add(ClassType=None,Filename='Release .doc',Link=False,DisplayAsIcon=True,Left=dest_cell.Left, Top=dest_cell.Top,Width=50,Height=50) obj.Add(ClassType=None,Filename='Platform.mpp',Link= False,DisplayAsIcon=False,Left=dest_cell.Left,Top=dest_cell.Top,Width=50,Height=50)
wb.SaveAs('ProjectDetailsAttachments.xlsx')
xl.DisplayAlerts = True
xl.Application.Quit()
xl.Visible = 0
我想到了!!我录制了一个 Excel VBA 宏,以查看它用于插入 Word 文档对象的内容,并发现它们添加了一些附加参数,一旦我添加它们,它现在就可以工作了。
wordpath = 'C\\Program Files (x86)\\Microsoft Office\\Office 14\\WINWORD.EXE'
obj.Add(ClassType=None,Filename='Final.docx',Link=False,DisplayAsIcon=True, \
IconFileName=wordpath,IconIndex=0,IconLabel=Final.docx \
Left=dest_cell.Left, Top=dest_cell.Top,Width=50,Height=50)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句