如何将图像从一个工作表复制到另一个工作表而不使用select

时间:2016-05-20 22:08:22

标签: excel-vba vba excel

我想知道是否可以将图像从一个工作表移动到另一个工作表(在同一工作簿中)而无需选择单元格。我目前的解决方案(显然使用复制和粘贴)如下:

ThisWorkbook.Worksheets("Assets").Shapes("logo").Cut 'Destination:=Worksheets("test").Range("$A$1")
ThisWorkbook.Worksheets("test").Activate
ActiveSheet.Range("$A1").Select
ActiveSheet.Pictures.Paste

指定' Desitation'参数似乎不起作用。

2 个答案:

答案 0 :(得分:0)

嗨,我最近这样做,我在一张纸上有一些图片需要找到正确的一张,然后将其插入另一张纸上。我没有选择任何细胞就这样做了。

 Dim teamShape As Shape
 Dim reportSheet As Worksheet: Set reportSheet = Sheets("Iteration Report")
 Dim picSheet As Worksheet: Set picSheet = Sheets("Pics")

 For Each teamShape In picSheet.Shapes
     If teamShape.AlternativeText = PicName Then
        teamShape.CopyPicture
        reportSheet.Range("h27").PasteSpecial
        Selection.ShapeRange.IncrementLeft 175.937480315
        Selection.ShapeRange.IncrementTop -4.687480315
        Selection.ShapeRange.Width = 300
        Exit For
     End If
  Next teamShape
祝你好运

答案 1 :(得分:0)

您的初始代码中的功能并不是很远。你可以剪切和粘贴而不选择这样:

Sub CutPaste()

    ThisWorkbook.Worksheets("Assets").Shapes("logo").Cut
    ThisWorkbook.Worksheets("Test").Range("A1").PasteSpecial

End Sub