当前位置:编程学习 > VB >>

虽然不能比较,但也得给各说法啊!

a = text1.text
if a>60 then
  print "有"
else
  print "无"
end if

问题:文本框中无输入时,为何为 有 为什么我的不是,我的是类型不匹配啊 关键看变量 a 的类型:
A)如果是 Variant 类型,则进行 Variant 比较,规则是数值表达式小于字符串表达式,结果就是有。
B)如果是 String 类型,则进行数值比较,由于 "" 无法转化为数值,产生类型不匹配的错误。
你没有val。。你的a只是一个字符串。。要把字符串变为数值才行。。
a=val(text1.text)
if a>60 then 
 print "有"
else 
 print "无"
end if 
if trim(text1.text)="" then
    msgbox "请输入!",48,"提示"
    text1.setfocus
    exit sub
else
    a = text1.text
    if not isnumeric(a) then 
        msgbox "非数值数据!",48,"提示"
        exit sub
    else
        if a>60 then
            print "有"
        else
            print "无"
        end if
    end if
end if

要养成良好的编程习惯。这个代码很不规范。如果是一个比较大的程序,如此凌乱,很不利于软件的维护,且容易出错。
补充:VB ,  网络编程
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,