【问题标题】:Using a loop to enable checkboxes in excel使用循环启用excel中的复选框
【发布时间】:2019-08-07 19:23:17
【问题描述】:

我目前正在处理 Excel 电子表格,并且可以使用一些帮助循环检查复选框。我想要做的是当一个框被选中时,另一组框变得可见并启用。任何有关如何执行此操作的建议将不胜感激。

感谢您的宝贵时间。

【问题讨论】:

  • 总是帮助发布您当前的颂歌,并准确解释运行时出现的问题。
  • 抱歉,我目前没有代码。我所拥有的会起作用,但它很草率,看起来像垃圾。我手动更改了值。我想我想问一个更好的问题是有没有一种方法可以格式化循环。
  • 有点像 i = integer for i
  • 感谢您的帮助。看起来很有帮助。

标签: excel vba checkbox


【解决方案1】:

假设您的复选框是位于 Sheet 1 上的表单控件,您可以构建一个集合,其中包含在单击 checkBox1 时需要启用的所有复选框并执行以下操作:

Sub CheckBox1_Click()
Dim cb1 As checkBox
Dim cb2 As checkBox
Dim cb3 As checkBox
Dim cb As checkBox
Dim cbCollection As New Collection
Set cb1 = ThisWorkbook.Worksheets(1).CheckBoxes("Check Box 1")
Set cb2 = ThisWorkbook.Worksheets(1).CheckBoxes("Check Box 2")
Set cb3 = ThisWorkbook.Worksheets(1).CheckBoxes("Check Box 3")
cbCollection.Add cb2
cbCollection.Add cb3
If cb1.Value = 1 Then
    For Each cb In cbCollection
        cb.Enabled = True
        cb.Visible = True
    Next cb
Else
    For Each cb In cbCollection
        cb.Enabled = False
        cb.Visible = False
    Next cb
End If
End Sub

【讨论】:

    猜你喜欢
    • 2019-04-12
    • 1970-01-01
    • 1970-01-01
    • 2021-02-11
    • 2014-09-13
    • 2011-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多