????今天發(fā)現VBA一個神奇的功能敛摘,即單步調試及對象監(jiān)視功能主籍,對于難理解抽象語句的我來說习贫,簡直發(fā)現了新大陸。在這上篇簡書中千元,提到本地窗口苫昌、立即窗口和監(jiān)視窗口【http://www.reibang.com/p/afd4974c975b 】,在本文展開詳細解讀:
VBA程序調試·原則及工具
調試目的:程序投入運行前幸海,修正語法錯誤和邏輯錯誤祟身,保證程序的正確性。
????根據測試時所發(fā)現的錯誤信息和利用調試工具追蹤的提示信息涕烧,兩者相互結合綜合判斷 錯誤發(fā)生原因和位置月而。
調試原則:
1、根據代碼邏輯议纯,大致判斷錯誤可能出現的位置父款;
2、借助調試工具瞻凤,理清程序數據流轉邏輯憨攒;根據調試的提示信息,做出正確的處理阀参。
3肝集、反思錯誤本身,是否存在設計偏差蛛壳。
VBA調試工具:
- Debug.print
- 設置斷點
- 單步調試
- 添加監(jiān)視及監(jiān)視窗口
- 本地窗口
- 立即窗口
- 單步調試跳轉
編寫程序后杏瞻,點擊運行后報錯,程序中斷:VBA程序調試·實際操作
-
Debug.print 打印錯誤信息
-
設置斷點
點擊運行衙荐,程序將運行至斷點處停止捞挥,方便排查錯誤區(qū)域。
設置斷點兩種方法:
1忧吟、點擊需要斷點行的前面砌函,行變深紅色;
2、調試菜單 -> 選擇切換斷點(光標停在斷點行讹俊,按快捷鍵F9)
單步調試
逐條運行程序垦沉,便于查看變量值、添加語句或分析bug仍劈。
設置方法:光標停在代碼處厕倍,點擊調試菜單 -> 選擇逐語句 (快捷鍵F9)-
添加監(jiān)視
可以選擇對象進行監(jiān)視,在監(jiān)視窗口可查看對象值耳奕。
設置方法:光標變量或對象處绑青,右鍵 或點擊調試菜單 -> 選擇**
添加監(jiān)視**
-
本地窗口和監(jiān)視窗口
通過逐行編譯代碼,可在立即窗口和監(jiān)視窗口查看值的內容屋群,發(fā)現錯誤位置及原因。
立即窗口
1坏挠、打印信息芍躏,在窗口輸入Debug.print 表達式... 可顯示表達式的值;
2降狠、可以測試過程对竣,在窗口中輸入過程名稱和實參以便調用;
3榜配、可以檢查錯誤號,如Error 11 (提示除數為0)單步強制跳轉
用途:部分時候蛋褥,需要看下else的運行結果膜廊,又懶得去調if的判斷值爪瓜。
用法:當運行到斷點或者單步時铆铆,鼠標安裝黃色那一行,拖動你要運行的位置菲驴。
當然以上錯誤可通過判斷出來赊瞬,不必設置斷點巧涧,僅為效果演示~沖鴨谤绳!小野s