excel - 获取用户窗体上复选框的状态
问题描述
我的用户表单上有许多复选框和文本框。我有这些分组,一个文本框有两个复选框。我需要弄清楚的是一种获取复选框状态和文本框内容的简短方法,以便我可以将其写入文本文件。
我需要写入文本的信息将是 25 个文本框中的任何一个:TextboxValue + (checkbox1 已选中?) 和/或 (checkbox2 已选中?) 等等...
现在我只有这个,但我总共设置了大约 25 个组,但不确定组是否是正确的方法。我希望我对你们所有人都有意义。谢谢
Dim ctrl As Control
For Each ctrl In Me.Controls
If TypeOf ctrl Is MSForms.CheckBox Then
If ctrl.GroupName = "GroupA" Then
If ctrl.Value = True Then
MsgBox ctrl.Caption & ": " & Me.TextBox1.Text
End If
End If
End If
If TypeOf ctrl Is MSForms.CheckBox Then
If ctrl.GroupName = "GroupB" Then
If ctrl.Value = True Then
MsgBox ctrl.Caption
End If
End If
End If
Next ctrl
解决方案
使用一致的命名模式,您可以这样做:
Dim i As Long, tb As Control, chkA As Control, chkB As Control
For i = 1 To 25
Set tb = Me.Controls("Grp_" & i & "_TB")
Set chkA = Me.Controls("Grp_" & i & "_CHKA")
Set chkB = Me.Controls("Grp_" & i & "_CHKB")
'work with tb, chkA, chkB
Next i
推荐阅读
- java - 如何调整按钮大小并将它们移动到不同的位置?
- python - 为什么张量流模型的内存不能从 RAM 中清除?
- android - 找不到正确的提供者,firestore 集合
- format - 数据洞察中的负数括号
- java - 一个总是返回 null 的方法
- flutter - 寻找一种更有效的方法来对 4 个 int 值的组合进行排序以生成图表
- mysql - 如何在sql语句中两次使用SELECT子句
- python - 每月每个类别的分组计数(当前月份与过去几个月的剩余时间)在 pandas 的单独列中
- android - Firebase 数据库查询 StartAt() 不工作?
- editor - WIX 编辑器 - 您可以在其中选择将粘贴到地址的日期的表单 http://...com#/&from=2021-07-16&to=2021-07-17