VBA复选框到表格的范围

时间:2018-07-10 18:51:53

标签: excel vba excel-vba

我有一个包含13个复选框的表格。我对其进行了设置,以便如果选中它,则将一个单元格标记为TRUE或FALSE。

我想做的是将数据从表单导出到表中。我已经完成了所有其他工作,但是我对如何更好地输入复选框值感到困惑。

而不是对所有复选框的if语句执行此操作

If CHECKBOX = TRUE Then
    CHECKBOX_VAL = string
End If

If CHECKBOX2 = TRUE Then
    CHECKBOX_VAL2 = string2
End If

table_object_row.Range(x,x).Value = CHECKBOX_VAL
table_object_row.Range(x,x).Value = CHECKBOX_VAL2

如何简单地将复选框的TRUE值导出到表中。我应该使用数组仅存储True值吗?

1 个答案:

答案 0 :(得分:0)

您可以遍历用户窗体上的控件,如果元素的类型为CheckBox,则可以将其放置在数组,表或任何其他内容中。

Dim ctl
For Each ctl In UserForm1.Controls  'the controls collection of your userform
    If TypeName(ctl) = "CheckBox" Then

        Debug.Print "The value of " & ctl.Name & " is " & ctl.Value
        '(do something with your values here)

    End If
Next ctl

更多信息: