VBA 中的 FOR 循环数组复选框

时间:2021-07-30 14:36:24

标签: arrays vba for-loop checkbox

我有一个包含 100 多个复选框的 Word 文档。它是一个 ActiveX 对象。 Checkbox1.Caption 是 GroupName。 如果选中了复选框 (Checkbox1.Value = True),那么我想在消息框中显示该 GroupName,以允许用户轻松地将组复制为选中的文本,而无需扫描整个文档。 我的代码工作正常,除了我设置了每个 CheckBox 以允许它在数组中用于 FOR 循环。 我想使用 for 循环将所有 Checkbox 对象传递到一个数组中,然后我可以在代码中使用该数组

'Set CBox(1) = CheckBox1
'Set CBox(2) = CheckBox2
'Set CBox(3) = CheckBox3

 Dim iCount As Integer
 Dim CheckBox As String

 For iCount = 1 To 3
 CBox(iCount) = "CheckBox" & iCount
 Next iCount

 Dim Grp(1 To 50) As String
 Dim GrpText(1 To 5) As String

 Dim i As Integer
 Dim j As Integer
 Dim k As Integer

 For i = 1 To 3
 If CBox(i).Value = True Then Grp(i) = CBox(i).Caption & ";" Else Grp(i) = ""
 Next i

 For j = 1 To 5
    For k = ((j - 1) * 10 + 1) To ((j - 1) * 10 + 10)
      GrpText(j) = Grp(k) & GrpText(j)
    Next k
 Next j
 InputBox "Copy The Below Text", "Groups", GrpText(1) & GrpText(2) & GrpText(3) & GrpText(4) &       GrpText(5)

0 个答案:

没有答案
相关问题