我有下面的代码。我想粘贴这个复制的图片到一个范围,我在目的地工作表中选择。然而,我只知道如何设置位置通过选择。顶部,。左,。宽度,。高度。有没有办法粘贴这个图片在选定的范围,如G30:J:30?
Windows(osman).Activate
Sheets("Overview").Range("A30:D37").CopyPicture
Dim DestinationSheet As Worksheet
Set DestinationSheet = Workbooks(anan).Sheets("Eingabefeld")
DestinationSheet.Paste
Dim pastedPic As Shape
Set pastedPic = DestinationSheet.Shapes(1)
With pastedPic
.Top = DestinationSheet.Cells(17, 2).Top
'Rest of positioning code here
End With
3条答案
按热度按时间7gcisfzg1#
这段代码非常接近我想要的,我想要复制一个范围,作为一个图像,并将其插入到一个不同的工作表中,并将其大小调整到一个单元格范围的外部边界。当例程运行“Set pastedPic = DestinationSheet.Shapes”时,一切都很好,除了一个小问题(1)”它拿起最后一个选定的对象和该对象之前的对象,以调整插入的图片和最后一个之前的形状结束...我设法获得一些一致结果的方式,就是把(1)改成(2)之前的那个,显然看起来是复制的实体...想想看...
6pp0gazn2#
我测试了这个,它对我很有效。如果你有一个多单元格范围对象,你可以得到宽度和高度。如果你不改变.LockAspectRatio = msoFalse,你的图片可能会自我调整。
我试着给你们编码,这是我想到的,对于复制图片行,我实际上复制了一个单元格的图片,而不是这些单元格中的某个特定图片,这是你们所期望的吗?
另一个变化是我用
ThisWorkbook
代替了你的工作簿索引。dfddblmv3#
复制图表后,可以执行以下操作: