cao死我好湿好紧好爽动态视屏|精选久久久久久久久久|中文无码精品一区二区三区四季|AAA国语精品刺激对白视频|

當(dāng)前位置:首頁(yè) > 軟件開放 > 正文內(nèi)容

asp.net編寫代碼方式(aspnet web教程)

軟件開放1年前 (2024-02-06)421

處理運(yùn)行時(shí)錯(cuò)誤

可能會(huì)用到這些語(yǔ)句

因?yàn)閳?zhí)行過(guò)程時(shí),總會(huì)遇到一些無(wú)法預(yù)料、無(wú)法避免的運(yùn)行時(shí)錯(cuò)誤,如激活一個(gè)根本不存在的工作表,將一個(gè)空單元格設(shè)置為除數(shù),將工作表重命名為一個(gè)已經(jīng)存在的名稱等,所以無(wú)論編寫代碼時(shí)多么認(rèn)真、仔細(xì),都不能避免在執(zhí)行過(guò)程時(shí)發(fā)生錯(cuò)誤。

然而,有些運(yùn)行時(shí)錯(cuò)誤,是可以預(yù)先知道它們發(fā)生的位置的,對(duì)這種預(yù)先知道可能發(fā)生的錯(cuò)誤,可以在過(guò)程中加入一些錯(cuò)誤處理的代碼,以保證過(guò)程能正常執(zhí)行。

在VBA中,通過(guò) On Error語(yǔ)句來(lái)獲取過(guò)程中運(yùn)行時(shí)錯(cuò)誤的信息,并對(duì)錯(cuò)誤進(jìn)行處理。

如果出錯(cuò),

讓過(guò)程跳轉(zhuǎn)到另一行代碼處繼續(xù)執(zhí)行

如果希望在發(fā)生運(yùn)行時(shí)錯(cuò)誤時(shí),過(guò)程能自動(dòng)跳轉(zhuǎn)到指定行的代碼處繼續(xù)執(zhí)行,可以使用代碼:

On Error GoTo Line

其中,代碼中的“Line”是替 GoTo語(yǔ)句設(shè)置的標(biāo)簽。這個(gè)語(yǔ)句告訴 VBA,當(dāng)在“On Error GoTo Line”這行代碼之后發(fā)生運(yùn)行時(shí)錯(cuò)誤時(shí),跳轉(zhuǎn)到標(biāo)簽所在行的位置繼續(xù)執(zhí)行過(guò)程,如下圖所示:

如果活動(dòng)工作簿中沒有標(biāo)簽名稱為“Excel”的工作表,那么執(zhí)行這個(gè)過(guò)程后,得到的是如圖 9 -25 所示的結(jié)果。

展開全文

圖9-25 使用On Error 語(yǔ)句處理過(guò)程中的運(yùn)行時(shí)錯(cuò)誤

如果出錯(cuò),

忽略出錯(cuò)行的代碼繼續(xù)執(zhí)行

On Error Resume Next是VBA中另一個(gè)處理運(yùn)行時(shí)錯(cuò)誤的語(yǔ)句。在執(zhí)行過(guò)程時(shí),如果On Error Resume Next之后發(fā)生運(yùn)行時(shí)錯(cuò)誤,則忽略存在運(yùn)行時(shí)錯(cuò)誤的代碼,繼續(xù)執(zhí)行之后的其他代碼。如下圖所示:

因?yàn)閂BA會(huì)忽略O(shè)n Error Resume Next之后所有存在運(yùn)行時(shí)錯(cuò)誤的代碼,所以執(zhí)行這個(gè)過(guò)程后,無(wú)論工作簿中是否存在標(biāo)簽名稱為“Excel”的工作表,VBA都不會(huì)為是否能執(zhí)行代碼 Worksheets("Excel").Select 提示錯(cuò)誤信息, Exit Sub也一定會(huì)被執(zhí)行,MsgBox函數(shù)所在的代碼行將不會(huì)得到執(zhí)行的機(jī)會(huì)。

注意:在編寫過(guò)程時(shí),因?yàn)橹挥蠴n Error語(yǔ)句之后發(fā)生的運(yùn)行 時(shí)錯(cuò)誤才會(huì)被捕捉到,所以應(yīng)該把On Error語(yǔ)句放在可能發(fā)生運(yùn)行時(shí)錯(cuò)誤的代碼之前。

停止對(duì)過(guò)程中運(yùn)行時(shí)錯(cuò)誤的處理

無(wú)論是On Error GoTo Line語(yǔ)句,還是On Error Resume Next語(yǔ)句,只要在它們之后的代碼發(fā)生運(yùn)行時(shí)錯(cuò)誤,都會(huì)按預(yù)先設(shè)置好的處理方式執(zhí)行過(guò)程??墒菆?zhí)行過(guò)程時(shí)真正發(fā)生運(yùn)行時(shí)錯(cuò)誤的代碼,有可能并不是預(yù)先估計(jì)會(huì)出錯(cuò)的那行代碼,再使用預(yù)設(shè)的方式處理錯(cuò)誤,未必就是正確的,如下圖所示:

此時(shí),如果活動(dòng)工作簿中存在標(biāo)簽名稱為“Excel”的工作表,但沒有標(biāo)簽名稱為 “ExcelHome”的工作表,執(zhí)行過(guò)程后,得到的是如圖 9 - 26 所示的結(jié)果。

圖9-26 處理過(guò)程中存在的運(yùn)行時(shí)錯(cuò)誤

很顯然,這并不是希望得到的結(jié)果。在這個(gè)過(guò)程中,通過(guò)On Error GoTo Er設(shè)置的,是當(dāng) Worksheets("Excel").Select 執(zhí)行出錯(cuò)時(shí)的處理方式,而在剛才的例子中,發(fā)生運(yùn)行時(shí)錯(cuò)誤的卻是另一行代碼。

如果不希望其他代碼出錯(cuò)時(shí),也按預(yù)設(shè)的錯(cuò)誤處理方式執(zhí)行過(guò)程,可以在希望處理運(yùn)行時(shí)錯(cuò)誤的代碼之后,停止對(duì)之后代碼中可能存在的運(yùn)行時(shí)錯(cuò)誤的處理。

要停止對(duì)運(yùn)行時(shí)錯(cuò)誤的處理,可以使用On Error GoTo 0 語(yǔ)句,在過(guò)程中寫入了On Error GoTo 0 后,那么無(wú)論在這行代碼之前做了怎樣的設(shè)置,之后出現(xiàn)的運(yùn)行時(shí)錯(cuò)誤都不會(huì)再按之前的設(shè)置執(zhí)行過(guò)程,除非之后又通過(guò)On Error GoTo Line或On Error Resume Next設(shè)置了運(yùn)行時(shí)錯(cuò)誤的處理方式,如下圖所示:

如果活動(dòng)工作簿中擁有名為“Excel”的工作表,但沒有名為“ExcelHome”的工作表, 則執(zhí)行過(guò)程就會(huì)出錯(cuò),如圖 9-27 所示。

圖9-27 發(fā)生運(yùn)行時(shí)錯(cuò)誤的過(guò)程

單擊對(duì)話框中的【調(diào)試】按鈕,讓過(guò)程進(jìn)入中斷模式,可以看到過(guò)程出錯(cuò)的代碼所在行,如圖 9- 28 所示。

圖9-28 執(zhí)行過(guò)程時(shí)出錯(cuò)的代碼

如果要處理這行代碼可能發(fā)生的運(yùn)行時(shí)錯(cuò)誤,應(yīng)重新使用On Error GoTo Line或On Error Resume Next設(shè)置,如下圖所示:

asp.net編寫代碼方式(aspnet web教程)

這樣,執(zhí)行過(guò)程后就能得到期望的結(jié)果了,如圖 9 -29 所示。

圖9-29 處理過(guò)程中出現(xiàn)的運(yùn)行時(shí)錯(cuò)誤

處理運(yùn)行錯(cuò)誤的小竅門,你學(xué)會(huì)了嗎?

推薦閱讀

北京大學(xué)出版社

《別怕,Excel VBA其實(shí)很簡(jiǎn)單》

京東圖書 每滿100減50

數(shù)量有限,手慢無(wú)!

掃描二維碼推送至手機(jī)訪問(wèn)。

版權(quán)聲明:本文由飛速云SEO網(wǎng)絡(luò)優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請(qǐng)注明出處。

本文鏈接:http://www.smallwaterjetsystem.com/post/86015.html

標(biāo)簽: asp.net編寫代碼方式

“asp.net編寫代碼方式(aspnet web教程)” 的相關(guān)文章

軟件開發(fā)培訓(xùn)班(軟件開發(fā)培訓(xùn)班怎么樣)

軟件開發(fā)培訓(xùn)班(軟件開發(fā)培訓(xùn)班怎么樣)

本篇文章給大家談?wù)勡浖_發(fā)培訓(xùn)班,以及軟件開發(fā)培訓(xùn)班怎么樣對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、軟件開發(fā)培訓(xùn)機(jī)構(gòu)有哪些??? 2、軟件開發(fā)培訓(xùn)的費(fèi)用要多少 3、北京有哪些比較好的軟件開發(fā)培訓(xùn)學(xué)校 4、軟件開發(fā)培訓(xùn)班學(xué)完后能就業(yè)嗎? 5、軟件開發(fā)培...

軟件開發(fā)報(bào)價(jià)表(軟件開發(fā)報(bào)價(jià)表怎么做)

軟件開發(fā)報(bào)價(jià)表(軟件開發(fā)報(bào)價(jià)表怎么做)

今天給各位分享軟件開發(fā)報(bào)價(jià)表的知識(shí),其中也會(huì)對(duì)軟件開發(fā)報(bào)價(jià)表怎么做進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問(wèn)題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、軟件怎么開發(fā)要多少錢 2、開發(fā)一款視頻直播App軟件需要多少錢 3、app開發(fā)報(bào)價(jià)單,開發(fā)一個(gè)APP要多少錢 4、定制開發(fā)軟件一般要...

網(wǎng)站建設(shè)企業(yè)(網(wǎng)站建設(shè)開發(fā)公司)

網(wǎng)站建設(shè)企業(yè)(網(wǎng)站建設(shè)開發(fā)公司)

本篇文章給大家談?wù)劸W(wǎng)站建設(shè)企業(yè),以及網(wǎng)站建設(shè)開發(fā)公司對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、如何創(chuàng)建企業(yè)網(wǎng)站 2、搭建企業(yè)網(wǎng)站,有什么注意事項(xiàng) 3、網(wǎng)站制作公司哪家好?有推薦的網(wǎng)站建設(shè)公司嗎? 4、怎樣建設(shè)企業(yè)網(wǎng)站?怎樣進(jìn)行域名注冊(cè)? 5、網(wǎng)站建設(shè)...

廣州軟件開發(fā)有限公司(廣州有哪些軟件開發(fā)公司)

廣州軟件開發(fā)有限公司(廣州有哪些軟件開發(fā)公司)

今天給各位分享廣州軟件開發(fā)有限公司的知識(shí),其中也會(huì)對(duì)廣州有哪些軟件開發(fā)公司進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問(wèn)題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、廣州市中智軟件開發(fā)有限公司是國(guó)企嗎 2、廣州市誠(chéng)毅科技軟件開發(fā)有限公司怎么樣? 3、廣州有哪些好的軟件開發(fā)公司? 廣州市中智軟...

蘋果碼怎么查真假(怎么查詢蘋果手機(jī)真?zhèn)未a)

蘋果碼怎么查真假(怎么查詢蘋果手機(jī)真?zhèn)未a)

今天給各位分享蘋果碼怎么查真假的知識(shí),其中也會(huì)對(duì)怎么查詢蘋果手機(jī)真?zhèn)未a進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問(wèn)題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、蘋果手機(jī)怎么查真?zhèn)?,?2、蘋果官網(wǎng)查序列號(hào)怎么看真假 3、蘋果手機(jī)怎樣查詢真?zhèn)? 4、蘋果序列號(hào)怎么查真?zhèn)螁?5、蘋果查...

百度網(wǎng)盤企業(yè)加速券(百度網(wǎng)盤如何使用加速券)

百度網(wǎng)盤企業(yè)加速券(百度網(wǎng)盤如何使用加速券)

本篇文章給大家談?wù)劙俣染W(wǎng)盤企業(yè)加速券,以及百度網(wǎng)盤如何使用加速券對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、百度網(wǎng)盤怎么買五分鐘加速券 2、百度網(wǎng)盤獲取的倍速播放券沒過(guò)期卻用不了 3、百度網(wǎng)盤辦了會(huì)員、買了加速券,這種下載速度,請(qǐng)問(wèn)百度網(wǎng)盤是不是要倒閉了?...