我正在开发一些Excel VBA例程,它们从一张工作表中获取数据,生成其他工作簿,然后在它们之间复制各种工作表和数据。
我在工作簿/工作表之间来回切换。
有一种简单的方法可以隐藏每一个到最后并显示某种进度条吗?
当我需要复制/粘贴它们时,我不想隐藏/展示它们......我希望能够在背景中默默地做所有事情。
任何方法都可以这样做吗?
答案 0 :(得分:4)
您可以暂时停用 ScreenUpdating
Sub SilentRunning()
Application.ScreenUpdating = False
'
' do your thing
'
Application.ScreenUpdating = True
End Sub
答案 1 :(得分:4)
@ garys-student在禁用屏幕更新时将其钉住 - 如果您想为特别烦躁的用户更新进度条,可以使用:
Application.StatusBar = "Processing row " & Idx & " of " & _
LastRow & "... " & Format(Idx / LastRow, "0%") & " complete"
'
' do other stuff
'
Application.StatusBar = False 'reset the status bar