[VBA ] 如何強制顯示 Debug.Print?

作者: qscgy4 (有點厲害)   2020-11-10 09:14:28
各位高手,安安
最近本魯寫了一個簡單的 VBA 程式,
因為要判斷的東西比較多,
所以迴圈大約有4層,
為了確定迴圈目前進度,
我在最外層的迴圈中加了 Debug.Print,
來顯示迴圈中的資訊,
可是我發現只能顯示前幾次的 Debug.Print,
接下來 excel 就像當機一樣,但是實際上沒有當機,
等30~60min迴圈跑完就正常了,
即時視窗的東西也都會顯示出來。
所以我的問題是,
如何 強制即時視窗顯示內容,
謝謝。
作者: MOONRAKER (㊣牛鶴鰻毛人)   2020-11-10 10:52:00
難 你拉個textbox然後一直附加字串可能還比較有效起碼那還可以用doevents逼他更新
作者: ClubT (小喬)   2020-11-11 14:40:00
寫到記事本,雖然要一直開記事本來看比較麻煩就是了
作者: newacc (XD)   2020-11-12 01:46:00
如果加個sleep或wait不知道有沒有幫助?
作者: fumizuki (矇面加菲獅)   2020-11-12 22:56:00
DoEvents 治百病...把執行權暫時還給ExcelExcel才有機會更新畫面不然就是一直忙著你迴圈中的所有工作沒時間顯示視窗的新內容但要注意 DoEvents 的次數越多,迴圈執行時間就越長可以另外用一個變數去接 Timer() 函數傳回值判斷目前Timer值與上次值的差異決定多久執行一次 DoEvents

Links booklink

Contact Us: admin [ a t ] ucptt.com