[英]VBA Pause code and wait for user interaction
我有在其中添加了根據某些條件彈出的錯誤框的代碼。 條件是:
If Range (Q2:Q) = "" Then
ErrorFrame.Visible = True
當錯誤框彈出時,有兩個我要添加按鈕的選項:
繼續:無論Q列中是否有數據,繼續操作都會繼續執行宏
停止:停止將結束宏,以便用戶可以將數據輸入到Q列中並重新運行宏
我也希望這樣做,以便當錯誤框彈出時,代碼被暫停並且直到用戶選擇其中一個選項時才繼續。
誰能給我一個例子,說明它如何工作? 我在思考如何編寫此代碼時遇到了麻煩。 非常感謝任何幫助,謝謝!
我自己想通了:
If WorksheetFunction.CountA(Range("Q:Q")) = 0 Then
UserForm1.ErrorFrame.Visible = True
Do While UserForm1.ErrorFrame.Visible = True
DoEvents
Loop
If ContinueFlag = True Then GoTo Line1
End If
Line1:
基本上,對於繼續按鈕,我只是在其上添加了一個標志,因此當單擊它時將使該標志為true。 然后在您看到的函數中,當標志為true時,它將轉到第1行,然后繼續執行代碼並退出Do While
循環。
我敢肯定,這可能不是最有效的方法,但是請讓我知道你們的想法,以及是否有更好的方法可以做到。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.