使用VBA更新标题栏/状态栏

2022-11-16 10:49:24 浏览数 (1)

标签:VBA

下面的示例代码,将会自动更新显示在Excel工作簿顶部的标题栏:

Sub ProcessingUpdate()

Dim i As Integer

For i = 1 To 10000

DoEvents

Application.Caption = "已经处理了:" & Format(i / 10000, "0%")

Next i

End Sub

运行效果如下图1所示。

图1

上面的VBA代码包含一个简单的10000次迭代循环,使用百分比指示器显示代码达到的阶段。

这个技巧也可用于在状态栏中显示程序的运行情况,就像进度条一样,但没有进度条带来的内存损耗。状态栏位于传统Excel屏幕的左下角,通常显示文本。下面的代码在状态栏上显示工作处理进度:

Sub StatusBarUpdate()

Dim i As Integer

For i = 1 To 10000

DoEvents

Application.StatusBar = "任务" & i & ",完成总进度的" & Format(i / 10000, "0%")

Next i

End Sub

运行效果如下图2所示。

图2

很简单的代码,将它们嵌入到你的程序中,可以利用Excel工作表界面给用户提供更多的信息。

0 人点赞