首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

-2147217913 vb中日期越界的有关问题

2013-06-19 
-2147217913 vb中日期越界的问题text中可以写任意数,现在我想使之写日期,但是如果写的日期不合法就会出现

-2147217913 vb中日期越界的问题
text中可以写任意数,现在我想使之写日期,但是如果写的日期不合法就会出现错误。。。。
[解决办法]
用IsDate判断一下是不是日期
[解决办法]
不能用任意数字直接赋值给 Date 型变量。

VB6 支持的日期是 100 年 1 月 1 日至 9999 年 12 月 31 日,对应的整数是 -657434 至 2958465。超出则引起溢出错误。

如果你要支持任意数字,需要根据最小日期或最大日期自己计算超范围的日期。只要考虑好历法年和天文年之间的误差(闰),就可以了。

[解决办法]
if isdate(text1) then
  ........
else
  msgbox "输入数据不是合法的日期数据"
end if
[解决办法]

private sub text1_lostfocus()
    if trim(text1.text)<>"" then
        if not isdate(text1.text) then
            msgbox "请输入日期型数据!",48,"提示"
            text1.setfocus
            exit sub
        else
            text1.text=format(text1.text,"YYYY-MM-DD")
        end if
    end if
end sub

热点排行