VBA 获取单击按钮的行号的代码

VBA Code to get row number of a clicked button

我正在尝试自动确定单击的命令按钮所在的行。

我正在使用以下代码:

Private Sub CommandButton2_Click () 
   
    Dim b As Object, r As Integer 
    Set b = ActiveSheet.Buttons(Application.Caller) 
    With b.TopLeftCell 
        r= .row
    End With 
    MsgBox "Row Number " & r
End Sub 

但是当我 运行 代码显示“运行 时间错误 1004 - 无法获取工作表 属性 的按钮 class”时,我不断收到错误消息

能请教一下吗?

正如@BigBen 所说,您可能有一个 ActiveX 按钮,因此您可以使用:

Private Sub CommandButton2_Click () 
   MsgBox Me.CommandButton2.TopLeftCell.Row
End Sub