将图片复制到Excel应用对象



我要从名为" ws_d" "的工作表中复制一张图片对于新创建的名为"ExcelSheet"的excel应用程序对象,我编写了如下代码,但图片没有粘贴到新工作簿:

ws_d.Shapes(1).Copy
ws_d.Paste Destination:=ExcelSheet.Application.Range("B1")

有没有人可以纠正我的代码,以便图片可以粘贴。多谢。

请尝试下一种方式:

Sub testCopyShape()
Dim ws_d As Worksheet, ExcelSheet As Workbook

'set the above objects as you need__________________________
'...
Set ws_d = ActiveSheet 'use here what you need
Set ExcelSheet = Workbooks("workbook name") 'use here its REAL NAME
'___________________________________________________________

ws_d.Shapes(1).Copy
ExcelSheet.Worksheets(1).Paste 'to paste in the workbook first sheet
'move the shape where you need:
With ExcelSheet.Worksheets(1).Shapes(ExcelSheet.Worksheets(1).Shapes.Count)
.Left = ExcelSheet.Worksheets(1).Range("B3").Left
.Top = ExcelSheet.Worksheets(1).Range("B3").Top
End With
End Sub

这种方式不需要选择/激活任何东西。否则,您可以激活必要的工作表(Worksheets(1)),选择要粘贴的范围,然后使用Worksheets().Paste,将形状放置在之前选择的单元格上。

最新更新