excel中用vba延时怎样才能,不占用大量cpu,excel能正常使用啊!

excel中用vba延时怎样才能,不占用大量cpu,excel能正常使用啊!,第1张

打开Excel 2013程序,单击菜单栏中的“文件”,如下图:

在d出的菜单中,单击“选项”,如下图:

在d出的菜单中单击“高级”,如下图:

在选项框中找到“禁用图形硬件加速”,单击在这个选项前面的方框。如下图:

设定完成后单击“确定”按钮。如下图:

设定完成。

这是很简单的事情,有人居然说不能实现?你新建一个窗体,加一个LABEL1,然后在程序开始时调用窗体:UserForm1.Show 0:DoEvents,d出提示,在程序结束时卸载窗体:Unload UserForm1,就搞定了。通过UserForm1.Label1.Caption = "****字符串***"语句还可以在过程中根据环境设置不同的提示。上传了一个附件,大家放心使用,为本人编写,不存在版权问题。

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Sub test()

Dim i&

UserForm1.Show 0

DoEvents    '没有DoEvents,窗体会空白

UserForm1.Label1.Caption = "正在载入数据,请稍等……"

DoEvents

For i = 1 To 100    '可以把循环替代成具体事务

    Sleep 100: DoEvents

Next

UserForm1.Label1.Caption = "正在进行计算,请稍等……"

DoEvents

For i = 1 To 100

    Sleep 100: DoEvents

Next

Unload UserForm1

End Sub

VB中有一个API函数叫Sleep可以实现暂停。或者用下面的自定义过程waitsec来实现暂停。

Sub mmm()

MsgBox "XX"

waitsec 2

MsgBox "XX"

waitsec 2

MsgBox "XX"

End Sub

Private Sub waitsec(ByVal dS As Double)

Dim sTimer As Date

sTimer = Timer

Do

DoEvents

Loop While Format((Timer - sTimer), "0.00") <dS

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11470068.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存