我有一堆输入文本框。我需要检查所有TextBoxes是否已填充,然后再处理。由于我有17个文本框,因此谁能帮助我编写代码以检查所有内容。
我尝试使用If ... Then ... Else
,但在我的情况下似乎不起作用。
答案 0 :(得分:4)
您可以…
…遍历所有控件
For Each Ctrl In Me.Controls
…然后检查当前控件是否为TextBox
If TypeName(Ctrl) = "TextBox" Then
…,然后检查它是否为空
If Ctrl.Text = vbNullString Then
所以您最终会得到这样的东西:
Option Explicit
Public Sub ValidateCheckBoxes()
Dim EmptyBoxesFound As Boolean
Dim Ctrl As Control
For Each Ctrl In Me.Controls
If TypeName(Ctrl) = "TextBox" Then
If Ctrl.Text = vbNullString Then
EmptyBoxesFound = True
Exit For
End If
End If
Next Ctrl
If EmptyBoxesFound Then
MsgBox "At least one box is not filled.", vbExclamation
Else
MsgBox "All boxes are filled.", vbInformation
End If
End Sub