【发布时间】:2020-10-15 21:18:44
【问题描述】:
我有一个简单的进度条。我想在循环中进行迭代时填充它,但我只看到我的表单具有 0 和 100 进度值,所以它在循环期间不会刷新。如何实现运行时刷新?谢谢!
Sub test()
UserForm1.Show (False)
DoEvents
For i = 1 To 700
For j = 1 To 5000
UserForm1.Label1.Caption = 100 * i / 700 & "% Completed"
UserForm1.Bar.Width = 200 * i / 700 '200 - width of the bar
Next j
Next i
End Sub
【问题讨论】:
-
在循环中尝试 DoEvents。闲暇时看看这里UserForm.Show
-
您的
DoEvents必须在循环内,而不是在循环之前。
标签: vba forms refresh progress