我有一个TextBox文本框,这个文本框用来输入学历,如果输入的不是后面这个数组中的任意一元素,就报错,我写了个代码,但是不行,请各位高手帮忙看下,谢谢!红色部分应该怎样写为好?For i = 0 To 9
If InStr(Split(Array(0, 小学, 初中, 高中, 中专, 职高, 技校, 大专, 大本, 本科), ",")(i), TxtInfor.Text) Then
MsgBox "请输入正确的学历!", vbOKOnly + vbCritical, "错误"
Else
……………………………………
……………………………………
End If
Next
If InStr(Split(Array(0, 小学, 初中, 高中, 中专, 职高, 技校, 大专, 大本, 本科), ",")(i), TxtInfor.Text) Then
MsgBox "请输入正确的学历!", vbOKOnly + vbCritical, "错误"
Else
……………………………………
……………………………………
End If
Next
似乎用一个 Combo 控件更合理。不要等用户错了,才告诉他,你错了。
MsgBox “请输入正确的学历:" & vbcrlf & "小学, 初中, 高中, 中专, 职高, 技校, 大专, 大本, 本科", vbOKOnly + vbCritical, “错误”
Else
……………………………………
End If
这个提议不错,不过我有个问题,就是能不能根据上面一个Label的Caption参数来赋予Combo 控件不同的数据有效性,Label.Caption="学历"时,有效性为"小学, 初中, 高中, 中专, 职高, 技校, 大专, 大本, 本科",Label.Caption="性别"时,有效性为"男,女",谢谢!