无法使用openpyxl或win32com将图像导入excel标题

我需要以自动方式将图像文件导入到Excel头文件中; 我不相信这是可能的,但我认为这可能是可行的win32com,虽然我无法得到它的工作。 有没有人知道一个办法做到这一点? 我发现了一个Excel中成功执行的excelmacros:

Sub InsertPicture With ActiveSheet.PageSetup.LeftHeaderPicture .FileName = "C:/Users/bharris/Desktop/my_image_file.png" .Height = 45 .Width = 30 .CropTop = -30 End With ActiveSheet.PageSetup.LeftHeader = "&;G" 

所以我尝试从Python使用win32com实现:

 excel = DispatchEx('Excel.Application') excel.Visible = True wb=excel.Workbooks.Open(my_excel_file.xlsx') ws = wb.Sheets(1) ws.PageSetup.LeftHeaderPicture.FileName ="my_image_file.png" ws.PageSetup.LeftHeader = "&;G" wb.SaveAs('my_excel_file.xlsx') wb.Close(True, 'my_excel_file.xlsx') excel.Application.Quit() 

但它给了我:

 raise AttributeError("Property '%s.%s' can not be set." % (self._username_, attr)) AttributeError: Property '<unknown>.FileName' can not be set. 

所以它看起来像FileName是不是在Win32com内的属性,就像它在Excel中的VBA。 我尝试了一些不同的东西组合,似乎没有任何工作。 如果有人知道如何做到这一点,使用任何types的openpyxl或win32com代码,或任何其他代码(尽pipe它必须能够编辑现有的电子表格,而不是像xlsxwriter写一个新的),你的帮助非常感谢!

PS我已经find了如何将图像插入单元格的几个解决scheme,但是这个问题是专门插入头部的。

非常感谢,罗伯特