各位老铁们,大家好,今天由我来为大家分享在VBA程序中,利用API函数来实现程序中毫秒级的延迟。,以及的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!
私有声明子睡眠库’kernel32’(ByVal dwMilliseconds As Long)
SubMyTypeDemo()
将sTest 调暗为字符串
将i 调暗为整数
sTest=’欢迎来到本平台学习VBA!’
对于i=1 至Len(sTest)
范围(’A1’).Value=Left(sTest,i)
睡眠200
下一个
代码分析:
MyTypeDemo 进程模拟在单元格A1 中输入一行文本的打字效果。 “欢迎来到这个平台学习VBA!”
第6行到第9行,代码每次循环都会增加显示的数据,并在每次增加时使用Sleep语句延迟200毫秒,就好像字符被一个一个地输入一样,从而达到模拟打字的效果。
更好的方法是使用timeGetTime 函数。 timeGetTime 函数返回自启动以来的毫秒数。可以支持1毫秒的间隔,并且会一直增加。回去是没有问题的。当然,这并不意味着您永远不会回头。毕竟Long类型变量(双字,4个字节)也是有取值范围的,取值范围在0到2^32之间。大约49.71天。
私有声明函数timeGetTime Lib ‘winmm.dll’ () As Long
延迟函数与上面相同,只是将sleep 函数替换为timeGetTime:
私有声明函数timeGetTime Lib ‘winmm.dll’ () As Long
Sub S_timeGetTime()
调暗时间1只要
time1=time获取时间
范围(‘A2’).Value=timeGetTime
做
范围(‘A3’).Value=timeGetTime
举办活动
循环while timeGetTime – time1 1000
MsgBox ‘时间到了! ‘
注:延迟时间的单位是毫秒。由于延迟函数中使用了DoEvents语句来交接系统控制权,因此不会影响用户的其他操作。
代码截图:
跑步:
今日内容回顾:
1 如何实现程序延迟?
原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/142068.html
用户评论
浮世繁华
这篇文章太棒了!我一直都在挣扎于在VBA里实现精确的延时控制,没想到API函数居然可以做到毫秒级延迟!终于不用再用Sleep这个笨拙的方法了~~
有5位网友表示赞同!
我一个人
看了这篇博文后,我豁然开朗!原来如此简单就能实现毫秒级的延时控制。看来以后要多多学习一些API函数的使用方法。
有12位网友表示赞同!
太难
很实用的一篇文章,之前我也遇到过这样的问题,每次用Sleep都感觉非常粗糙。感谢分享!
有5位网友表示赞同!
孤独症
我之前尝试过使用API函数做延时,但总是遇到错误,不知道是不是参数设置的问题。还是要仔细研究一下这篇文章,应该能找到问题的答案。
有15位网友表示赞同!
蹂躏少女
API函数确实强大,但是对于不太熟悉的人来说,学习门槛还是比较高的。希望能有更多详细的教程和讲解。
有10位网友表示赞同!
Edinburgh°南空
毫秒级的延时对一些程序来说可能真的毫无意义,用Sleep也能达到预期效果啊!这篇文章有点矫枉过正感觉.
有17位网友表示赞同!
素衣青丝
VBA里使用API函数确实更灵活,可实现的功能也比Sleep更加丰富。对于追求更高精度控制的应用来说,是更好的选择。
有5位网友表示赞同!
清羽墨安
这个方法听起来很棒,但是我对API函数不太了解,需要先学习一下相关知识才能尝试实践。
有19位网友表示赞同!
你很爱吃凉皮
我已经学会使用Windows API函数来模拟毫秒级延迟了,这篇文章的分享很有用!对于想要精细控制延时效果的用户来说非常实用。
有17位网友表示赞同!
不相忘
感觉这种方法太复杂了,我更习惯使用Sleep这个简便的方法解决延时问题。或许是我理解能力不足?
有6位网友表示赞同!
微信名字
虽然API函数的使用方式比较复杂,但是它的强大功能还是很吸引人的。以后有机会一定要好好学习一下。
有19位网友表示赞同!
涐们的幸福像流星丶
这篇文章的内容很详细,讲解也很清晰易懂。对于想要深入理解VBA程序中延时的读者来说非常推荐!
有13位网友表示赞同!
站上冰箱当高冷
这种毫秒级延时有什么实际应用场景呢?感觉只是个鸡毛蒜皮的问题。还是Sleep足够用了。
有11位网友表示赞同!
沐晴つ
我对API函数的使用一直不太熟悉,这篇博文开拓了我的视野,让我了解到它的强大功能和应用领域!
有5位网友表示赞同!
雪花ミ飞舞
毫秒级延时对我来说没啥实际意义,我更注重程序的整体运行效率。这篇文章虽然有益于某些特殊情况下的开发,但未必適用所有场景。
有15位网友表示赞同!
堕落爱人!
感谢作者分享这篇 insightful 文章!它让我想到了很多使用API函数实现复杂控制功能的可能性。
有16位网友表示赞同!
冷嘲热讽i
文章内容很易懂,对于初学者来说非常友好。但是API函数的使用我还是需要进一步学习和实践才能掌握.
有16位网友表示赞同!
淡抹丶悲伤
我经常写一些需要精确时间控制的程序,这篇文章简直是我求之不得的宝藏!终于可以告别Sleep这个笨拙的方法了!
有11位网友表示赞同!
呆檬
很高兴看到有人在尝试将VBA应用到更高级的功能上。这种API函数的使用方式虽然比较复杂,但的确可以带来很多提升。
有6位网友表示赞同!