我正在尝试为运行时创建的命令按钮创建代码。基于动态输入创建的命令按钮。我在这里找到了解决方案
Assign code to a button created dynamically
问题是这个代码只用于一个命令按钮,我在运行时创建了几个命令按钮。这是我的代码。
For i = 1 To RevCounter
Set ctlTXT = Me.Controls.Add("Forms.CommandButton.1")
ctlTXT.name = "Rev" & i
ctlTXT.Caption = Sheet4.Range("D" & i + 5).value
ctlTXT.Left = 18
ctlTXT.Height = 18: ctlTXT.Width = 72
ctlTXT.Top = 15 + ((i - 1) * 25)
Next
问题是,如何为运行时创建的命令按钮分配代码。例如,如果RevCount = 5,则在运行时将创建5个命令按钮。我需要为每个创建的命令按钮分配代码。
答案 0 :(得分:0)
您要使用的过程是:
在表单中添加按钮
使用sub buttonname_click()
格式
你有第一部分,所以我们将在这里处理第二部分。代码需要添加到相关工作表的代码模块中;因此,此代码会将代码添加到活动工作表的代码模块中,这可能就是您所需要的。
Sub addcode()
Dim subtext As String
subtext = "Sub PrintStuff" & vbCrLf & "msgbox ""Hello World""" & vbCrLf & "End Sub"
With Workbooks(ThisWorkbook.Name).VBProject.VBComponents(ActiveSheet.CodeName).CodeModule
.InsertLines .CountOfLines + 1, subtext
End With
End Sub
你的问题中没有足够的信息可以使这个可扩展:你想要按钮做什么?你能添加你想要添加的子吗?