如何使用VBA在Excel中移动图像?
我想使用VBA将图像从excel中的一个位置移动到另一个位置如何使用VBA在Excel中移动图像?,vba,excel,excel-2007,Vba,Excel,Excel 2007,我想使用VBA将图像从excel中的一个位置移动到另一个位置 我们怎样才能做到这一点呢?如果我们走得又快又脏,需要在两张纸之间移动,那么下面的工作就完成了 Sub CutAndPasteAPicture(shapeName As String, fromSheet As String, toSheet As String, toRange As String) 'Cut and Paste Sheets(fromSheet).Shapes(shapeName).Cut Sheets(toShee
我们怎样才能做到这一点呢?如果我们走得又快又脏,需要在两张纸之间移动,那么下面的工作就完成了
Sub CutAndPasteAPicture(shapeName As String, fromSheet As String, toSheet As String, toRange As String)
'Cut and Paste
Sheets(fromSheet).Shapes(shapeName).Cut
Sheets(toSheet).Paste Sheets(toSheet).Range(toRange)
End Sub
Sub Example()
CutAndPasteAPicture "Picture 1", "Sheet1", "Sheet2", "D2"
End Sub
如果需要更改图像在给定工作表中的位置,可以使用以下方法:
ActiveSheet.Shapes.Range(Array("Picture 1")).Select
Selection.ShapeRange.IncrementLeft 100
您可以通过更改.Increment的参数来调整运动的方向和量。。。命令,例如为图像设置动画。另一个示例:垂直移动图片以与特定行对齐
Sheets(1).Shapes("Picture 1").Top = Sheets(1).Rows(24).Top
下面是先将图片插入Excel,然后调整图片大小的代码。稍后将图片向下或向右移动
'Insert the Picture from the path if its not present already
Set myPict = Thisworkbook.sheets(1).Range("A1:B5").Parent.Pictures.Insert(ThisWorkbook.Path & "\" & "mypic.jpg")
'Adjust the Picture location
myPict.Top = .Top
myPict.Width = .Width
myPict.Height = .Height
myPict.Left = .Left
myPict.Placement = xlMoveAndSize
'myPict.LockAspectRatio = msoTriStateMixed
'Change the width of the Picture
myPict.Width = 85
'change the Height of the Picutre
myPict.Height = 85
End With
'Select the Picutre
myPict.Select
'Move down the picture to 3 points. Negative value move up
Selection.ShapeRange.IncrementTop 3
'Move towards right upto 5 points. Negative value moves towards right
Selection.ShapeRange.IncrementLeft 5