學(xué)習(xí)教程:Excel中VBA程序代碼的調(diào)試技巧
1、打開工作表并切換到Visual Basic編輯器,本示例的程序代碼如下所示。在“代碼”窗口中找到需要設(shè)置斷點(diǎn)的語句,將光標(biāo)放置到代碼行中,選擇“調(diào)試”|“切換斷點(diǎn)”命令設(shè)置斷點(diǎn),如圖1所示。按F5鍵運(yùn)行程序,程序運(yùn)行到斷點(diǎn)位置即會(huì)暫停,同時(shí)標(biāo)示出暫停位置,如圖2所示。再次按F5鍵程序?qū)⒗^續(xù)運(yùn)行。
圖1 創(chuàng)建斷點(diǎn)
圖2 程序在斷點(diǎn)處暫停
Sub countcir()
Dim i As Integer
Dim s As Integer
s=0 '初始化匯總變量以及起始數(shù)
i=0
Do
i=i+1 '設(shè)置下一個(gè)被加數(shù)i的大小
s=s+i '將被加數(shù)匯總到變量s中
If s>=5000 Then Exit Do '當(dāng)s≥5000,執(zhí)行Exit Do語句退出循環(huán)
Loop
MsgBox“循環(huán)次數(shù)是”&i&“;匯總結(jié)果是”&s '顯示循環(huán)次數(shù)以及匯總結(jié)果
End Sub
提示
在“代碼”窗口邊界標(biāo)識(shí)條上鼠標(biāo)單擊可以直接創(chuàng)建斷點(diǎn)。將插入點(diǎn)光標(biāo)放置到程序中后,按F9鍵可以在該語句處添加斷點(diǎn),按Ctrl+Shift+F9鍵或選擇“調(diào)試”|“清除斷點(diǎn)”命令可以清除創(chuàng)建的斷點(diǎn)。
2、選擇“視圖”|“本地窗口”命令打開“本地窗口”對(duì)話框,按F8鍵逐語句執(zhí)行程序。在運(yùn)行到斷點(diǎn)處時(shí),“本地窗口”中將顯示程序中表達(dá)式的當(dāng)前值和變量類型,如圖3所示。
圖3 程序調(diào)試時(shí)“本地窗口”顯示的內(nèi)容
提示
“本地窗口”只有在中斷模式下才能顯示相應(yīng)的內(nèi)容,其只能顯示當(dāng)前過程中變量或?qū)ο蟮闹?,?dāng)程序從一個(gè)過程轉(zhuǎn)到另一個(gè)過程時(shí),其顯示的內(nèi)容也會(huì)相應(yīng)發(fā)生改變。在“本地窗口”中,單擊對(duì)象名稱左側(cè)的按鈕可展開或收起對(duì)象的屬性和成員列表。
3、選擇“視圖”|“監(jiān)視窗口”命令打開“監(jiān)視窗口”對(duì)話框,選擇“調(diào)試”|“添加監(jiān)視”命令打開“添加監(jiān)視”對(duì)話框,在“表達(dá)式”文本框中輸入需要監(jiān)視的條件,選擇“當(dāng)監(jiān)視值為真時(shí)中斷”單選按鈕,單擊“確定”按鈕關(guān)閉對(duì)話框,如圖4所示。再次打開“添加監(jiān)視”對(duì)話框,在“表達(dá)式”文本框中輸入變量名,選擇“監(jiān)視表達(dá)式”單選按鈕,單擊“確定”按鈕關(guān)閉對(duì)話框,如圖5所示。按F5鍵運(yùn)行程序,程序?qū)⒃跐M足條件(即i=50)時(shí)進(jìn)入中斷模式,“代碼”窗口中指示出程序當(dāng)前運(yùn)行語句,同時(shí)在“本地窗口”中將可以看到監(jiān)視變量的值,如圖6所示。
圖4 添加監(jiān)視條件
圖5 添加第二個(gè)監(jiān)視條件
圖6 “監(jiān)視窗口”中顯示變量的變化
提示
如果需要編輯已有的監(jiān)視條件,可以在“監(jiān)視窗口”中選擇某個(gè)監(jiān)視條件后選擇“調(diào)試”|“編輯監(jiān)視”命令,打開“編輯監(jiān)視”對(duì)話框?qū)ΡO(jiān)視條件進(jìn)行編輯修改。在“監(jiān)視窗口”中選擇監(jiān)視條件后,按Delete鍵可以將其刪除。
4、選擇“視圖”|“立即窗口”命令打開“立即窗口”對(duì)話框,在代碼中添加Debug.Print s和Debug.Print i語句。按F5鍵運(yùn)行程序,“立即窗口”中將顯示變量s和變量i的運(yùn)行結(jié)果,如圖7所示。
圖7 “立即窗口”中顯示兩個(gè)變量的值
提示
Debug是代碼調(diào)試的一個(gè)重要工具,使用Debug對(duì)象的Print方法能使程序員在不暫停程序的情況下監(jiān)控變量執(zhí)行過程中的變化。Print方法在“立即窗口”中顯示文本,Print方法顯示的文本將不會(huì)在程序運(yùn)行時(shí)看到,只能在“立即窗口”中顯示。
5、在“代碼”窗口中為程序添加斷點(diǎn),運(yùn)行程序后,在“立即窗口”中輸入"?i"后按Enter鍵,“立即窗口”中將顯示程序中斷時(shí)變量i的值;輸入"?s"后按Enter鍵,“立即窗口”中顯示變量s的當(dāng)前值,如圖8所示。
圖8 在“立即窗口”中顯示變量的值
提示
“立即窗口”能夠顯示當(dāng)前語境中變量或表達(dá)式的值,值可以通過Print方法或問號(hào)“?”來顯示。這里要注意,“立即窗口”輸出結(jié)果最多只有200行,超過200行則只顯示最后200行的內(nèi)容。
繼續(xù)查找其他問題的答案?
-
Excel 2019如何使用復(fù)制、粘貼命令插入Word數(shù)據(jù)?(視頻講解)
2021-01-257次播放
-
Excel 2019如何制作數(shù)據(jù)透視表?(視頻講解)
2021-01-2227次播放
-
Excel 2019如何設(shè)置相對(duì)引用?(視頻講解)
2021-01-2210次播放
-
2021-01-2212次播放
-
Excel 2019如何使用命令復(fù)制公式?(視頻講解)
2021-01-226次播放
-
2021-01-223次播放
-
2021-01-222次播放
-
Excel 2019如何利用開始選項(xiàng)卡進(jìn)入篩選模式?(視頻講解)
2021-01-223次播放
-
Excel 2019如何設(shè)置指定數(shù)據(jù)的篩選?(視頻講解)
2021-01-223次播放
-
Excel 2019如何設(shè)置自定義排序?(視頻講解)
2021-01-222次播放
點(diǎn)擊加載更多評(píng)論>>