仅需几行代码,我们就可以轻松地遍历Excel VBA Userform上的控件。我们将要创建的用户窗体如下所示:
要创建此用户窗体,请执行以下步骤。
1.打开Visual Basic编辑器。如果“项目资源管理器”不可见,请单击“视图”,“项目资源管理器”。
2.单击插入,用户窗体。如果“工具箱”没有自动出现,请单击“视图”,“工具箱”。屏幕设置如下。
3.添加标签,复选框(第一个在顶部,第二个在第一个下方,依此类推)和命令按钮。完成此操作后,结果应与前面显示的用户窗体的图片一致。例如,通过在工具箱中单击CheckBox创建一个复选框控件。接下来,您可以在用户窗体上拖动一个复选框。
4.您可以更改控件的名称和标题。在Excel VBA代码中使用名称。字幕是显示在屏幕上的字幕。更改控件的名称是一种很好的做法,但是此处没有必要,因为在此示例中,我们只有几个控件。要更改用户窗体,标签,复选框和命令按钮的标题,请单击“视图”,“属性窗口”,然后单击每个控件。
5.要显示用户窗体,请在工作表上放置一个命令按钮,并添加以下代码行:
私人 子 CommandButton1_Click()
UserForm1.Show
End Sub
UserForm1.Show
End Sub
现在,我们已经创建了用户表单的第一部分。尽管看起来已经很整洁,但是当我们单击“清除”按钮时,什么也不会发生。
6.打开Visual Basic编辑器。
7.在项目资源管理器中,双击UserForm1。
8.双击清除按钮。
9.添加以下代码行:
私人 子 CommandButton1_Click()
昏暗对照作为控制
对于 每个对照在 UserForm1.Controls
如果类型名(对照)=“复选框” 然后
contr.Value = FALSE
结束 如果
下一页
结束 子
昏暗对照作为控制
对于 每个对照在 UserForm1.Controls
如果类型名(对照)=“复选框” 然后
contr.Value = FALSE
结束 如果
下一页
结束 子
说明:Excel VBA遍历用户窗体上的所有控件。TypeName函数用于筛选出复选框控件。如果是复选框控件,则Excel VBA取消选中该复选框。在这里随机选择contr,您可以使用任何名称。请记住,在其余代码中都使用此名称。
单击清除按钮时的结果: