根据主复选框选择在选项卡中切换复选框

时间:2012-07-03 11:20:08

标签: excel vba excel-vba checkbox

对于vba表单中的复选框,我遇到onclick事件的问题。基本上我要做的是将特定选项卡上所有复选框的值修改为与主复选框相同的值。在这种情况下,下面是“使用在线”标题复选框(代码中的online_toggle),一旦点击,应切换选项卡'on'或'off'上的其他复选框。我目前有以下代码,但它在'For Each obj in online.OLEObjects'

中不断产生错误

My user form

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

干杯,

杰森

1 个答案:

答案 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