我有一个列,所有行都包含一个按钮,执行相同的宏,在单击的按钮正上方插入一行。但是,代码无效,因为宏不会在单击的按钮上方插入一行,而是在活动单元格所在的位置上方。
我应该如何修改代码,以便将行插入单击按钮的正上方。
或者任何人都可以帮助确定点击按钮的CO条件如何识别。
Sub VBA_Tracker()
Dim Origin As Range
Set Origin = Sheet2.Cells(1, 1)
Selection.EntireRow.Insert
End Sub
答案 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
对于“表单样式”按钮:
答案 1 :(得分:0)
每个Shape都有TopLeftCell
属性。它位于形状的左上角。你可以通过这种方式找到按钮行
a = button.TopLeftCell