我有以下动态创建按钮的代码:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i, sInfo As String
For i = 2 To GetLastRow("Deliverables", "A")
sInfo = "CmdButton" & i
Me.Buttons(sInfo).Delete
ActiveSheet.Buttons.Add(Cells(i, "AA").Left + Cells(i, "AA").Width * 0.05, Cells(i, "AA").Top + Cells(i, "AA").Height * 0.05, Cells(i, "AA").Width * 0.9, Cells(i, "AA").Height * 0.9).Select
With Selection
.Caption = "Update Task: " & Cells(i, "B").Value
.Name = sInfo
.Text = "Update Task: " & Cells(i, "B").Value
Selection.OnAction = "CmdButton2_Click"
End With
Next
End Sub
这运行没有错误,但我似乎无法正常工作的是 Selection.OnAction 事件。当我单击按钮时,没有任何反应。我试图让 OnAction 事件调用 VBA 代码中的另一个 Sub。我从这里和网络上的其他地方尝试了一些例子,似乎无法让它们工作。
有人知道我错过了什么吗?