我想验证MultiPage控件的第2页。 它有2个组合框,2个单选按钮和几个文本框。
基本上,所有字段都必须有值。
这是我正在使用的代码:
Private Sub validaPasso3()
Dim cCont As Control
For Each cCont In Me.MultiPage1.Pages(2).Controls
If cCont.Value = vbNullString Then
MsgBox "Error."
Exit Sub
End If
Next
End Sub
但是这会返回错误:
Run-time error: ´438´ Object doesn't support this property or method.
在线:
If cCont.Value = vbNullString Then
我知道这是由第一个组合框引起的。
导致错误的原因是什么?
答案 0 :(得分:2)
如果在组合框中未选择任何内容,则会返回Null
而不是vbNullString
。你可以使用这样的东西:
Private Sub validaPasso3()
Dim cCont As Control
For Each cCont In Me.MultiPage1.Pages(2).Controls
If Typename(cCont) = "ComboBox" Then
If IsNull(cCont.Value) Then
MsgBox "Error."
Exit Sub
End If
ElseIf Typename(cCont) = "TextBox" Then
If cCont.Value = vbNullString Then
Msgbox "Error."
Exit Sub
End If
ElseIf Typename(cCont) = "OptionButton" Then
If cCont.Value = False Then
MsgBox "Error."
Exit Sub
End If
End If
Next
End Sub