我在工作表中保留了一个userform控件按钮来启动一个宏,然后显示一个用户表单,在表单中我希望在复选框中显示打开的文件(使用Workbooks集合)。我希望运行一个仅对用户选定文件执行操作的宏。
因此,对于工作表中的按钮,我已分配以下宏
Private Sub Button2_Click()
Load MyForm
MyForm.Show
End Sub
首先,我将下面的代码保存在我的宏sub所在的模块中。由于它不起作用,我右键单击用户表单并选择了视图代码并保留了下面的代码。但它仍然显示相同的静态设计用户表单,而不是动态。我在加载Myform和MYform.Show()时保持断点,然后我逐步完成代码。它从来没有进入初始化或激活方法。
Private Sub MyForm_Activate()
'for checking the whether this method is called or not I am trying to change caption
MyForm.LabelSelectFile.Caption = "dhfdfldkfldzjf;zdfkz;d"
Dim mymyWorkBook As Workbook
For Each mymyWorkBook In Workbooks
'code for creating checkbox based on the file name displayed by the workbook collection
Next mymyWorkBook
End Sub
我无法理解为什么这个事件没有被触发。请帮我克服这个。谢谢提前
答案 0 :(得分:12)
即使表单名称为MyForm
,您仍需要使用userform
。
'~~> in your worksheet
Private Sub Button2_Click()
MyForm.Show
End Sub
'~~> In the userform code area
Private Sub UserForm_Initialize()
'~~> Your code here
End Sub
或
Private Sub UserForm_Activate()
End Sub
最好是始终从下拉列表中选择事件,而不是键入