如何查找单击按钮的单元格坐标

时间:2015-02-12 14:52:52

标签: excel vba

我有一个列,所有行都包含一个按钮,执行相同的宏,在单击的按钮正上方插入一行。但是,代码无效,因为宏不会在单击的按钮上方插入一行,而是在活动单元格所在的位置上方。

我应该如何修改代码,以便将行插入单击按钮的正上方。

或者任何人都可以帮助确定点击按钮的CO条件如何识别。

Sub VBA_Tracker()

   Dim Origin As Range

   Set Origin = Sheet2.Cells(1, 1)

   Selection.EntireRow.Insert

End Sub  

2 个答案:

答案 0 :(得分:1)

在按钮代码中包含这样的行:

Sub Kommon()
    Dim sh As Shape
    Set sh = ActiveSheet.Shapes(Application.Caller)
    WhereAmI = sh.TopLeftCell.Address(0, 0)
    MsgBox Application.Caller & vbCrLf & WhereAmI
End Sub

对于“表单样式”按钮:

enter image description here

答案 1 :(得分:0)

每个Shape都有TopLeftCell属性。它位于形状的左上角。你可以通过这种方式找到按钮行

a = button.TopLeftCell