对于vba表单中的复选框,我遇到onclick事件的问题。基本上我要做的是将特定选项卡上所有复选框的值修改为与主复选框相同的值。在这种情况下,下面是“使用在线”标题复选框(代码中的online_toggle),一旦点击,应切换选项卡'on'或'off'上的其他复选框。我目前有以下代码,但它在'For Each obj in online.OLEObjects'
中不断产生错误
Private Sub online_toggle_Click()
Dim ctl As Control
For Each ctl In Me.MultiPage1.Pages(6).Controls
If TypeOf ctl Is MSForms.CheckBox Then
If ctl.GroupName = "online_variants" Then
If ctl.Name <> "online_toggle" Then
ctl.Value = online_toggle.Value
End If
End If
End If
Next ctl
End Sub
N.B。 online是所有复选框所在选项卡的名称。如果它有助于受主复选框影响的复选框全部分组为online_variants
干杯,
杰森
答案 0 :(得分:1)
在多页面中,页面编号从0开始,因此如果您尝试参考Online
标签(第7个标签)中的复选框,请使用此
Dim ctl As Control
For Each ctl In Me.MultiPage1.Pages(6).Controls
If TypeOf ctl Is MSForms.CheckBox Then
'~~> Your code here
Debug.Print ctl.Name
End If
Next