調試VBA程序常用方法


在中斷模式下(ctrl+Break鍵),可以做:

1.執行    工具----選項----編輯器----勾選“自動顯示數據提示”

則當用鼠標懸停在變量或表達式上時,會出現提示窗口,顯示其名稱和值!

2.在監視窗口查看某些表達式的值,方法是:先用鼠標拖黑以選中表達式,再執行   調試----添加監視,出現“添加監視”對話框。

3.在代碼窗口中選中表達式----按shift+F9----出現”快速監視“對話框,顯示該表達式的上下文,表達式及其值。

4.按ctrl+G,出現"立即窗口”。它主要有4個作用:

(1).打印信息

在窗口中輸入Debug.Print 表達式1;表達式2......,即可以顯示各表達式的值!

2.可以給變量或屬性賦值!

例如:Form1.BackColor=255

          MaxRows=50

3.可以測試過程

在此窗口中可以直接輸入過程名稱和實參以便調用過程。

例如:

       MySub 2*i

4.可以檢查錯誤號

例如:輸入

  Error 11

按下回車鍵時,在此窗口中顯示11號錯誤的信息。我常用這個方法來檢查錯誤號!

斷點

在設計和中斷模式下都可以設置斷點,當程序執行到斷點語句時,則中斷執行,這時處於中斷模式!

1.設置斷點

在代碼窗口,用鼠標點擊左邊區使之出現黑點,代表已經設置斷點!也可以把光標移動到選定語句上,按F9.

斷點語句以粗體字表示,顏色可以由:  工具---選項---編輯器格式---代碼顏色----“斷點點文本”選項設定!

2.撤銷斷點:

調試----清除所有斷點(ctrl+shift+F9)

3.使用Stop語句

關閉項目時,斷點不被保存,下次調試時需要重新設置。

如果多次調試,最好的方法是使用Stop語句,每當遇到它,程序進入中斷模式。

Stop語句可以保存在代碼中,測試完后可以全部取消!

監視窗口可以監視表達式,“快速監視”窗口也可以顯示表達式的值。

立即窗口對表達式求值,給變量和屬性賦值。

本地窗口顯示局部變量的當前值。例如下圖自己定義的變量:

單步執行調試程序:

1.調試----逐語句(按快捷鍵是F8)

2.在逐語句執行過程中,遇到調用的過程,不想進入其中停留,按shift+F8,可以“逐過程”執行而不進入!

3.跳出過程

調試----跳出(快捷鍵是ctrl+shift+F8),可以運行當前過程剩余語句代碼,轉到調用該過程語句的下一個語句去!

4.執行特定的語句塊

這是很重要的一個方法,常用到:在中斷模式下,把光標移到要執行的語句行處,執行   調試---設置下一條語句,

用它可以設置下次要執行的語句。再把光標移到要停止的語句處,執行  調試----運行到光標處(快捷鍵是ctrl+F8),則可以運行到該語句處!

這種方法的優點是可以繞過不想執行的語句塊(例如你明確知道某個有問題的語句)。

但是可以執行   工具----選項----編輯器----自動語法檢測,則在代碼窗口輸入代碼產生語法錯誤時,會立即顯示出錯誤信息!

調用堆棧:應用程序處於中斷模式時,顯示已被調用過的過程!

1.怎么顯示調用堆棧的對話框:視圖---調用堆棧(快捷鍵是ctrl+L)

2.跟蹤嵌套過程

在VBA過程中,常常有調用另外某個或某幾個過程,模塊,窗體。

可以用“調用堆棧”從下往上顯示已活化過程的項目名稱,模塊或窗體名稱和過程名稱。

操作方法是:ctrl+L  ----用鼠標選中某個過程-----顯示。

這時,代碼窗口顯示出該過程,光標處於即將調用下一個過程的調用語句處。

此時,按(shift+F9)用“快速監視”或(ctrl+G)立即窗口,可以顯示有關變量!

3.用“調用堆棧”來檢查過程調用自身的能力

出處:http://club.excelhome.net/thread-225648-1-1.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM