Excel 通过VBA从剪贴板粘贴到Word标题的图像既不是作为InlineShape也不是作为Shape列出的

Excel 通过VBA从剪贴板粘贴到Word标题的图像既不是作为InlineShape也不是作为Shape列出的,excel,vba,ms-word,shapes,Excel,Vba,Ms Word,Shapes,我正在尝试复制一个已经是Excel中的图像的图像,而不是一个表,该表随后将从Excel工作表转换为图像到Word标题。之后,我想对其进行操作,例如缩放、对齐等。。粘贴效果很好,但我无法在之后选择它,因为它既不是作为InlineShape列出的,我可以将其转换为形状,也不是作为形状列出的-那么它是什么,我如何选择它?从我在这里和其他各种平台上读到的内容来看,这应该是可行的,但事实并非如此。我是不是忘了处理一些关于头球的事情了 到目前为止,我尝试了各种编码方法,但都不管用。示例: 一, 二, 三,

我正在尝试复制一个已经是Excel中的图像的图像,而不是一个表,该表随后将从Excel工作表转换为图像到Word标题。之后,我想对其进行操作,例如缩放、对齐等。。粘贴效果很好,但我无法在之后选择它,因为它既不是作为InlineShape列出的,我可以将其转换为形状,也不是作为形状列出的-那么它是什么,我如何选择它?从我在这里和其他各种平台上读到的内容来看,这应该是可行的,但事实并非如此。我是不是忘了处理一些关于头球的事情了

到目前为止,我尝试了各种编码方法,但都不管用。示例:

一,

二,

三,


我希望你能帮我解决这个问题,它快把我逼疯了。干杯

代码的基本问题是,您将其粘贴到标题中,然后尝试引用它,而不考虑其位置。尝试以下几点:

ThisWorkbook.Worksheets("Backup - Do not change").Shapes("companyLogo").Copy
With wdDoc.Sections(1).Headers(2).Range
  .Paste
  With .InlineShapes(1)
    .LockAspectRatio = True
    .Width = wdApp.InchesToPoints(2)
  End With
End With

非常好用,非常感谢!我也想过这个,我试过一些类似的东西,我忘了在这里列出,但显然我做错了什么。
ThisWorkbook.Worksheets("Backup - Do not change").Shapes("companyLogo").Copy
wdDoc.Sections(1).Headers(2).Range.PasteSpecial DataType:=8 '=wdPasteShape
Debug.Print wdDoc.InlineShapes.Count '= 0
Debug.Print wdDoc.Shapes.Count '= 0
Dim wdRng As Object
Set wdRng = wdDoc.Sections(1).Headers(2).Range
wdRng.Paste
Debug.Print wdDoc.InlineShapes.Count '= 0
Debug.Print wdDoc.Shapes.Count '= 0
ThisWorkbook.Worksheets("Backup - Do not change").Shapes("companyLogo").Copy
With wdDoc.Sections(1).Headers(2).Range
  .Paste
  With .InlineShapes(1)
    .LockAspectRatio = True
    .Width = wdApp.InchesToPoints(2)
  End With
End With