VB中怎样设定文本的长度同时受两种条件限制?
答案:5 悬赏:60 手机版
解决时间 2021-04-12 03:02
- 提问者网友:自食苦果
- 2021-04-11 06:36
例如我创建了Text文本,它的name属性为txt_id,用Len(txt_id.Text) <> 18 Or Len(txt_id.Text) <> 15 Then MsgBox "身份证号必须等于15位或18位!",为什么不可以控制身份证号只能等于15位或者18位?
最佳答案
- 五星知识达人网友:不甚了了
- 2021-04-11 07:12
参考这个,两者等同
not (a=15 or a=18)或者a<>15 and a<>18
not (a=15 or a=18)或者a<>15 and a<>18
全部回答
- 1楼网友:轻雾山林
- 2021-04-11 11:01
<>
改成
=
就可以了.
- 2楼网友:笑迎怀羞
- 2021-04-11 10:35
程序代码是这样的,我已经验证OK!!!
Private Sub Command1_Click()
If Len(txt_id.text) > 15 Then '如果大于15位
If Len(txt_id.text) > 18 Then '如果大于18位
MsgBox "大于18位了!"
ElseIf Len(txt_id.Text) = 18 Then '如果等于18位
MsgBox "刚好18位!"
Else
MsgBox "身份证号必须等于15位或18位!"
End If
ElseIf Len(txt_id.Text) = 15 Then '如果等于15位
MsgBox "刚好15位!"
Else
MsgBox "身份证号必须等于15位或18位!"
End If
End Sub
我也是VB爱好者,以后大家互相学习了!!!
- 3楼网友:第四晚心情
- 2021-04-11 10:07
不行的,最好的办法是你增设两个选项:15位,18位
if option1.value=true then
if len(txt_id)>15 then
msgbox "身份证号不能大于15"
end if
elseif option2.value=true then
if len(txt_id)>18 then
msgbox "身份证号不能大于18"
end if
end if
- 4楼网友:duile
- 2021-04-11 08:28
private sub combo1_change()
n = 8
if len(combo1.text) > n then combo1.text = left(combo1.text, n)
end sub
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯