python + excel:如何以编程方式将图片插入评论

时间:2018-03-27 20:53:47

标签: python excel openpyxl xlsxwriter

我需要在excel单元格注释框中插入图片。我的意思是here

有没有办法用现有的python库做到这一点?

我查看过openpyxlxlsxwriter个文档 - 它们似乎只允许创建文本注释。

Xlsx编辑器允许您更改注释框的背景颜色,但似乎没有插入图片的解决方案。

2 个答案:

答案 0 :(得分:1)

你可以使用xlsxwriter在电子表格中插入图片。查看this,它可以帮助您解决问题。

答案 1 :(得分:1)

我想要相同的功能,但在任何python库中都找不到。

我最终使用Excels的“宏”功能,可以在“开发人员”标签下找到它 您需要在“文件”->“选项”->“自定义功能区”中启用该功能;可以在“主要”标签的右侧找到。

选择“宏”后,为其命名并点击“创建”,它应为 您可以在其中编写此Visual Basic代码:

Sub addPic()
'
' Macro3 Macro
'
    Dim pic_file As String
    Dim pic_resolution As Long
    Dim pict As Object
    
    If ActiveCell.Comment Is Nothing Then ActiveCell.AddComment
    pic_file = Application.GetOpenFilename("GIF (*.GIF), *.GIF", Title:="Select chord picture: ")
    Set pict = CreateObject("WIA.ImageFile")
    pict.loadfile pic_file
    pic_resolution = pict.VerticalResolution
    
  With ActiveCell.Comment.Shape
     .Fill.Visible = msoTrue
     .Fill.UserPicture (pic_file)
     .Height = pict.Height / pic_resolution * 96
     .Width = pict.Width / pic_resolution * 96
   End With
 
  Set pict = Nothing
   
  ActiveCell.Comment.Visible = False
End Sub

您可以根据需要更改.GIF扩展名和分辨率。 最后,您应该选择一个键盘快捷方式,您可以选择  在宏->(选择宏)->选项下