所以,我正在使用一個相當大的Excel工作表。我創建了很多功能,因爲它非常複雜。當我告訴它執行它需要相當長的時間。我已經創建了(在圖片上所示),一個計時器,講述了一個如何將票價的過程中就已經到來:在Excel VBA中暫停/恢復循環(點擊)
現在。我非常想製作一個暫停按鈕。我曾嘗試過:
Private Sub PauseButton_Click()
Application.Wait Now() + TimeValue("00:00:20")
End Sub
究竟哪個實際上暫停了這個過程。我最初的想法是輸入一個非常大的數字,然後點擊按鈕恢復。不幸的是我無法恢復(DoEvents
)這個過程,因爲Excel似乎完全凍結了輸入的時間段。
如果您對如何解決這個問題有任何想法,他們將大大appriciated。
要「暫停」並不是一件容易的事,你可能會想。首先:'Application.Wait'將始終凍結應用程序(如您所注意到的)。要做到這一點,你需要跳過/結束子,並重新開始恢復。擁有一個或多個(全局/靜態)變量來告訴過程何處「恢復」(簡單地說不是從頭開始)會給人一種暫停的「感覺」。但是這需要你改變代碼中更大的部分......你可以用一個'DoEvents'循環來模擬暫停,但是如果你試圖用一個新的開始結束從0% –