在excel中移动具有不同宏图像的宏图像

时间:2014-01-17 20:19:29

标签: vba

我有一个执行此操作的宏

 ThisWorkbook.Worksheets("data").Range("A50").End(xlToRight).Select

将视图移动到远离右侧的列(因此用户不必滚动,因为它常见于那里) 我希望电子表格上存在另一个按钮(作为图像),以便在点击时移动到该点之上(可以向后导航)。

我尝试剪切和粘贴

ActiveSheet.Shapes.Range(Array("Picture 23")).Select
Selection.Cut
ThisWorkbook.Worksheets("data").Range("A50").End(xlToRight).Offset(-2,0).Select
ActiveSheet.Paste

但只是粘贴图像,不再有与​​之关联的宏。

通过玩录制宏,我注意到当我移动图片时会发生这种情况

Selection.ShapeRange.IncrementLeft -607.8260629921

但我不知道如何制作这个变量。什么是607,像素?如果是这样,有没有办法可以从已知细胞中获得“长度”到活跃细胞? 我正在导航的地方,第一个按钮,是静态的。

1 个答案:

答案 0 :(得分:1)

Dim rng as Range

With ThisWorkbook.Worksheets("data")

    Set rng = .Range("A50").End(xlToRight)

    rng.Select

    With .Shapes("Picture 23")
       .Top = rng.offset(-1,0).Top
       .Left= rng.Left
    End With

End with