vb 如何批量的选择啊

来源:百度知道 编辑:UC知道 时间:2024/05/22 13:15:14
我在有好几个check1,check2,等等,我把勾选中了,我想点个清除把前面勾去了,但是要些好多代码同样的代码有什么办法把check后的都是数字的都取消啊 比如 check1=clear check2=clear,check3=clear 等等我要写好多相同的有什么办法写一行就可以解决啊 有什么办法把就把前面为check的控件都为clear 谢谢

假如你的复选框名称是类似于Check1,Check2,Check3,...CheckN的,则你可以这样写代码:
Dim I As Integer

For I=1 to N 'N的值由你自己根据实际情况确定
Controls("Check" & I).Value=0 'Value属性的值为0表示取消选中,1表示选中,而不是如你所说的用Clear。这里是利用控件对象集合引用控件
Next I

假如你的复选框名称是控件数组形式(假设数组名称为Check),则可以这样写代码:

Dim I As Integer

For I=1 to N
Check(I).Value=0 '解释同上,不同的是这里是引用控件数组
Next I

我这样解释应该明白了吧?

用控件遍历:

Private Sub Command1_Click()
Dim objForm As Form
Dim Obj As Object
Dim i As Integer

For i = 0 To Forms.Count - 1
If LCase(Forms(i).Name) = LCase(Form1.Name) Then Set objForm = Forms(i)
Next i

For Each Obj In objForm.Controls
If LCase(TypeName(Obj)) = "checkbox" Then
Obj.Value = False
End If
Next
End Sub

check.clear