以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  VBA time函数的时间错误  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=181860)

--  作者:pzq321
--  发布时间:2020/8/24 12:13:39
--  VBA time函数的时间错误
用   if  time >“09:00:00”  and time<"10:15:00" then ....
这样的语句时,时间在 10点到10:15之间是结果是错误的,其他时间都是正确,是怎么回事?

--  作者:yukizzc
--  发布时间:2020/8/24 13:56:14
--  
本地正确
图片点击可在新窗口打开查看此主题相关图片如下:d}sk6gn7_@8qr%ne`i~@1re.png
图片点击可在新窗口打开查看

--  作者:pzq321
--  发布时间:2020/8/24 14:30:42
--  
您把机器时间调到10:10运行结果是正确的吗?
--  作者:yukizzc
--  发布时间:2020/8/24 14:31:23
--  

是的,右下角时间你自己看就是了

然后输出了判断,if里面内容也输出了

[此贴子已经被作者于2020/8/24 14:32:11编辑过]

--  作者:pzq321
--  发布时间:2020/8/25 9:10:24
--  
if time>"09:00:00" and time<"10:15:00"  then

MsgBox “hello”
end if
现在我的机器不执行,昨天改系统时间后是执行的,麻烦您再看一下,

--  作者:yukizzc
--  发布时间:2020/8/25 9:13:45
--  

那就说明不能直接这么比较

Application.MsgOut hour(time)
Application.MsgOut minute(time)

 

你把时间的小时和分钟取出来,当作数字去做比较

可能直接字符串是不能比较吧


--  作者:pzq321
--  发布时间:2020/8/25 9:16:17
--  
可是过了10点15分其他时间段的比较都是可以的,很莫名其妙的错误
--  作者:无为剑
--  发布时间:2020/8/25 15:45:16
--  
没过10点可能的时间格式是 9:55:02秒这种的,你前面加个0应该是造成了字符串 不匹配了,还有vbs里的时间日期判断格式,前后要加#号,你可以#9:13:23#这样试试
--  作者:pzq321
--  发布时间:2020/8/25 16:29:48
--  
谢谢
--  作者:guotx2010
--  发布时间:2021/3/30 16:15:13
--  
用Cdate(Time)将事件转换为字符串格式的时间既可以比较了。

__________________________________
QQ:253675026 weChat:guotx-