宏中的进度指示器(Microsoft Excel)
通常创建宏来处理数据,并且处理数据通常会花费很长时间。因此,即使宏正忙于分派其指定的任务,某些用户仍可能认为他们的计算机已停止响应。
对于大多数宏开发人员而言,解决方案是以某种方式提醒用户有关宏的进度。您可以通过两种方式在Excel中执行此操作。最简单,最常见的方法是使用状态栏指示宏在做什么。您所需要做的就是将包含状态消息的字符串放在一起,然后将该字符串分配给Application对象的StatusBar属性,如下所示:
sStatus = "Processing Input File - Please Be Patient" Application.StatusBar = sStatus
该消息将保留在状态栏上,直到您用其他消息覆盖它为止。您还可以通过提供完整的百分比来指示循环中的进度:
For x = 1 to y Application.StatusBar = Format(x/y,"0.0%") & " Complete" ' Other coding here Next
例程结束后,使用以下语句使状态栏恢复正常:
Application.StatusBar = False
如果您希望为宏开发一个实际的进度指示器,可以通过创建一个用户窗体,然后更新该窗体以显示一个“百分比栏”或其他可视指示器来实现。您可以在以下地址找到此类进度指示器的示例:
https://www.excel-easy.com/vba/examples/progress-indicator.html
注意:
如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(8969)适用于Office 365中的Microsoft Excel 2007、2010、2013、2016、2019和Excel。您可以在此处找到适用于Excel的较早菜单界面的本技巧的版本: