VB if 判断非空,代码如下,但在文本框text2(5)内容为空的时候也照样从第一句开始执行,请问这是为什么

IfTrim(Text2(5).Text)<>""Thensql="select*fromdoctorwhere编号="&Val(Text2(5).Text)&""rs_... If Trim(Text2(5).Text) <> "" Then
sql = "select * from doctor where 编号=" & Val(Text2(5).Text) & " "
rs_login.Open sql, conn, adOpenKeyset, adLockPessimistic
If rs_login.EOF = True Then
MsgBox "没有这位医师或编号有误", 64, "病人信息修改"
Text2(5).Text = ""
Text2(5).SetFocus
Exit Sub
rs_login.Close
End If
rs_login.Close
End If
展开
 我来答
fgm811215
2011-05-30 · 超过46用户采纳过TA的回答
知道小有建树答主
回答量:82
采纳率:0%
帮助的人:108万
展开全部
trim有很多trim不掉的,只是肉眼看上去是空的,实际并不为空,可以用以下语句试一下,长度应该不为零
Print Len(Trim(Text2(5).Text))
shemqi
2011-05-30 · TA获得超过950个赞
知道小有建树答主
回答量:927
采纳率:75%
帮助的人:314万
展开全部
判断非空的代码应该这样写:
if len(text2(5).text)>0 then
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友bdb9803
2011-05-30 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:53%
帮助的人:1亿
展开全部
不会的,Text2(5).Text必定有内容,如果你还有怀疑,你可以在第二行插一句:
If Trim(Text2(5).Text) <> "" Then
msgbox Trim(Text2(5).Text)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
枫叶剪影
2011-05-31 · TA获得超过115个赞
知道小有建树答主
回答量:136
采纳率:0%
帮助的人:122万
展开全部
if len(text2(5).text)>0 then ' 不为空, 我习惯这样判断
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tystq
2011-05-31 · TA获得超过1201个赞
知道小有建树答主
回答量:943
采纳率:100%
帮助的人:831万
展开全部
我试了下不会出现你说的问题,当然有3种情况你要注意:
1,Text2(5).Text 中内容过长,而非空的内容后面有N多空格,结果你眼睛看到的就是空了,解决方法就是用代码赋值为Text2(5).Text ="" 然后看看
2,Trim(Text2(5).Text) <> "" 中输成Trim(Text2(5).Text) <> " " ,即中间有了一个空格
3,你是否自定义了一个Trim函数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式