在VBA程序中,利用API函数来实现程序中毫秒级的延迟。

大家好,我们今日继续讲解VBA代码解决方案的第82讲内容:如何利用代码让程序延时,SLEEP函数和timeGetTime函数两个API函数的讲解。在上一讲中我们

各位老铁们,大家好,今天由我来为大家分享在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:

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。

私有声明函数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 如何实现程序延迟?

用户评论

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
浮世繁华

这篇文章太棒了!我一直都在挣扎于在VBA里实现精确的延时控制,没想到API函数居然可以做到毫秒级延迟!终于不用再用Sleep这个笨拙的方法了~~

    有5位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
我一个人

看了这篇博文后,我豁然开朗!原来如此简单就能实现毫秒级的延时控制。看来以后要多多学习一些API函数的使用方法。

    有12位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
太难

很实用的一篇文章,之前我也遇到过这样的问题,每次用Sleep都感觉非常粗糙。感谢分享!

    有5位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
孤独症

我之前尝试过使用API函数做延时,但总是遇到错误,不知道是不是参数设置的问题。还是要仔细研究一下这篇文章,应该能找到问题的答案。

    有15位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
蹂躏少女

API函数确实强大,但是对于不太熟悉的人来说,学习门槛还是比较高的。希望能有更多详细的教程和讲解。

    有10位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
Edinburgh°南空

毫秒级的延时对一些程序来说可能真的毫无意义,用Sleep也能达到预期效果啊!这篇文章有点矫枉过正感觉.

    有17位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
素衣青丝

VBA里使用API函数确实更灵活,可实现的功能也比Sleep更加丰富。对于追求更高精度控制的应用来说,是更好的选择。

    有5位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
清羽墨安

这个方法听起来很棒,但是我对API函数不太了解,需要先学习一下相关知识才能尝试实践。

    有19位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
你很爱吃凉皮

我已经学会使用Windows API函数来模拟毫秒级延迟了,这篇文章的分享很有用!对于想要精细控制延时效果的用户来说非常实用。

    有17位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
不相忘

感觉这种方法太复杂了,我更习惯使用Sleep这个简便的方法解决延时问题。或许是我理解能力不足?

    有6位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
微信名字

虽然API函数的使用方式比较复杂,但是它的强大功能还是很吸引人的。以后有机会一定要好好学习一下。

    有19位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
涐们的幸福像流星丶

这篇文章的内容很详细,讲解也很清晰易懂。对于想要深入理解VBA程序中延时的读者来说非常推荐!

    有13位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
站上冰箱当高冷

这种毫秒级延时有什么实际应用场景呢?感觉只是个鸡毛蒜皮的问题。还是Sleep足够用了。

    有11位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
沐晴つ

我对API函数的使用一直不太熟悉,这篇博文开拓了我的视野,让我了解到它的强大功能和应用领域!

    有5位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
雪花ミ飞舞

毫秒级延时对我来说没啥实际意义,我更注重程序的整体运行效率。这篇文章虽然有益于某些特殊情况下的开发,但未必適用所有场景。

    有15位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
堕落爱人!

感谢作者分享这篇 insightful 文章!它让我想到了很多使用API函数实现复杂控制功能的可能性。

    有16位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
冷嘲热讽i

文章内容很易懂,对于初学者来说非常友好。但是API函数的使用我还是需要进一步学习和实践才能掌握.

    有16位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
淡抹丶悲伤

我经常写一些需要精确时间控制的程序,这篇文章简直是我求之不得的宝藏!终于可以告别Sleep这个笨拙的方法了!

    有11位网友表示赞同!

在VBA程序中,利用API函数来实现程序中毫秒级的延迟。
呆檬

很高兴看到有人在尝试将VBA应用到更高级的功能上。这种API函数的使用方式虽然比较复杂,但的确可以带来很多提升。

    有6位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/142068.html

(0)
小su's avatar小su
上一篇 2024年9月19日 上午3:35
下一篇 2024年9月19日 上午3:53

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注