![VBA編程常見(jiàn)錯(cuò)誤原因分析_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/28/3ddd144d-689e-4e75-917d-405b394430a2/3ddd144d-689e-4e75-917d-405b394430a21.gif)
![VBA編程常見(jiàn)錯(cuò)誤原因分析_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/28/3ddd144d-689e-4e75-917d-405b394430a2/3ddd144d-689e-4e75-917d-405b394430a22.gif)
![VBA編程常見(jiàn)錯(cuò)誤原因分析_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/28/3ddd144d-689e-4e75-917d-405b394430a2/3ddd144d-689e-4e75-917d-405b394430a23.gif)
![VBA編程常見(jiàn)錯(cuò)誤原因分析_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/28/3ddd144d-689e-4e75-917d-405b394430a2/3ddd144d-689e-4e75-917d-405b394430a24.gif)
![VBA編程常見(jiàn)錯(cuò)誤原因分析_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/28/3ddd144d-689e-4e75-917d-405b394430a2/3ddd144d-689e-4e75-917d-405b394430a25.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、VBA編程常見(jiàn)錯(cuò)誤原因分析iyueifu_VBA、乙 刖BChapter 1 編譯錯(cuò)誤51.1.1 忘記了聲明變量51.1.2 對(duì)象變量的類型,不存在,或者缺少引用51.1.3 程中,引用缺失,或路徑不正確6Cliaptei 2 運(yùn)行時(shí)錯(cuò)誤91.1.1 錯(cuò)誤測(cè)試101.1.2 =號(hào)左右兩側(cè)不匹配101.1.3 成員或方法不存在101.1.4 數(shù)組下標(biāo)越界101.1.5 集合中,成員不存在111.1.6 文件或文件夾不存在11Chapter 1編譯錯(cuò)誤編譯錯(cuò)誤,常常是程序還一句沒(méi)有運(yùn)行,就被檢查出的錯(cuò)誤.1.1.1 忘記了聲明變量普通模塊中,輸入這個(gè)代碼,運(yùn)行Option ExplicitSub
2、 MyCodeQSet rg = ActiveCellMsgBox ig.AddiessEnd Sub以上代碼中使用了對(duì)象變量,但是沒(méi)有事先定義.糾錯(cuò)的方法,有以下2種 田規(guī)規(guī)矩矩定義Option ExplicitDimrg As RangeSub MyCodeQSet rg = ActiveCellMsgBox ig.AddiessEnd Sub口變量可以不定義不推薦Option ExplicitSub MyCodeQSet ig = ActiveCellMsgBox ig.AddiessEnd Sub1.1.2 對(duì)象變量的類型,不存在,或者缺少引用Option ExplicitSub My
3、CodeQDim App As word.ApplicationDim doc As word.DocumentDim rg As RangesSet ig = ActiveCellig.Value = App.CaptionEnd Sub上述程序,想在Excel VBA中操作Woid,但是沒(méi)有進(jìn)行前期綁定;另外,Dim ig AsRanges這句,由于拼寫(xiě)錯(cuò)誤,也會(huì)引起以下的對(duì)話框.結(jié)構(gòu)不配時(shí)造成的錯(cuò)誤Sub MyCodeQDim ig As RangeSet rg = ActiveCellIf ig.Value 0 Then rg.Font.Color = vbBlueEnd IfEnd
4、Sub上面這個(gè)代碼,End if多余,造成了不配對(duì).類似的還有SubEnd Sub,WithEnd withDoLoopForNextTypeEnd TypeFunction End Function 等等1.13工程中,引用缺失,或路徑不正確以下這個(gè)代碼,本身沒(méi)有任何問(wèn)題,但是由于引用中,有缺失的外部庫(kù),所以不能執(zhí) 行,這種現(xiàn)象,經(jīng)常發(fā)生在由引用的dll文件被刪.由其他人發(fā)來(lái)的Excel程序,使用之前,必須重新建立引用.口制作時(shí),和使用時(shí)的Office版本不同,比如制作時(shí),引用的是Word 2007,而使用的機(jī)器上,僅僅安裝了 Office 2003,這時(shí)候,容易出現(xiàn)以下錯(cuò)誤.Option
5、ExplicitSub MyCodeODiin rg As RangeSet rg = ActiveCellrg. Value = iBSICExcel 3) End Sub在VBE的工具/引用中,可以看到,至少有一個(gè)外部引用,丟失.或者顯示為Missing解決方法:先取消引用,再點(diǎn)擊瀏覽按鈕,找到目標(biāo)的dll文件抑可.Sub RemoveBiokeiiRefi()Dim ief As lefeienceFor Each ref Iii Application.VBE.ActiveVBProject.ReferencesIf ref.IsBroken = True ThenApplicatio
6、n.VBE.ActiveVBProject.References.Remove ief End ifNext iefEnd Sub運(yùn)行上述代碼,可以快速清除所有破損的引用.造成這種錯(cuò)誤,原因很多種,有時(shí)候難以找出.下表列出一部分錯(cuò)誤編號(hào)和描述.1應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤51內(nèi)部錯(cuò)誤2應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤52文件名或文件號(hào)錯(cuò)誤3無(wú)GoSub返回53文件未找到4應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤54文件模式錯(cuò)誤5無(wú)效的過(guò)程調(diào)用或參數(shù)55文件已打開(kāi)6溢出56應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤7內(nèi)存溢出57設(shè)備I/O錯(cuò)誤8應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤58文件已存在9下標(biāo)越界59記錄長(zhǎng)度錯(cuò)誤10該數(shù)組被固定或暫時(shí)
7、鎖定60應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤11除數(shù)為零61磁盤(pán)已滿12應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤62輸入超出文件尾13類型不匹配63記錄號(hào)錯(cuò)誤14溢出串空間64應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤15應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤65應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤16表達(dá)式太復(fù)雜66應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤17不能執(zhí)行所需的操作67文件太多18出現(xiàn)用戶中斷68設(shè)備不可用19應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤69應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤20無(wú)錯(cuò)誤恢復(fù)70拒絕的權(quán)限21應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤71磁盤(pán)未準(zhǔn)備好22應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤72應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤23應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤73應(yīng)用程序定義或?qū)ο蠖x錯(cuò)
8、誤24應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤74不能更名為不同的驅(qū)動(dòng)器25應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤75路徑/文件訪問(wèn)錯(cuò)誤26應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤76路徑未找到27應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤77應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤28溢出堆??臻g78應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤29應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤79應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤30應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤80應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤31應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤81應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤32應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤82應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤33應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤83應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤34應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤84應(yīng)用程
9、序定義或?qū)ο蠖x錯(cuò)誤35子過(guò)程或函數(shù)未定義85應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤36應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤86應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤37應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤87應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤38應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤88應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤39應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤89應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤40應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤90應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤41應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤91對(duì)象變量或With塊變量未設(shè)置42應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤92For循環(huán)未初始化43應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤93無(wú)效的模式串44應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤94無(wú)效使用Null45應(yīng)用程序定義
10、或?qū)ο蠖x錯(cuò)誤95應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤46應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤96由于對(duì)象已經(jīng)激活了事件接受器支持的最大 數(shù)目的事件,不能吸收對(duì)象的事件47DLL應(yīng)用程序客戶太多97不能調(diào)用對(duì)象的友元函數(shù),該對(duì)象不是所定 義類的一個(gè)實(shí)例。48加載DLL錯(cuò)誤98屬性或方法調(diào)用不能包括對(duì)私有對(duì)象的引 用,不論是作為參數(shù)還是作為返回值49DLL調(diào)用約定錯(cuò)誤99應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤50應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤100應(yīng)用程序定義或?qū)ο蠖x錯(cuò)誤1.1.1錯(cuò)誤測(cè)試下方格子輸入錯(cuò)誤編號(hào),比如13錯(cuò)誤描述雙擊這個(gè)單元格顯示錯(cuò)誤描述雙擊這個(gè)單元格顯示錯(cuò)誤對(duì)話框1.1.2 =號(hào)左右兩側(cè)不匹配Sub MyCode
11、。Dmi 1 As Integer i= 32768End Sub上述代碼,1是整變量,而右側(cè)是一個(gè)長(zhǎng)整型數(shù)值Sub MyCodeQDim i As Range1 = TrueEnd Sub上述代碼,也是類型不匹配1.1.3 成員或方法不存在Sub MyCode()Dini i As RangeScti=ActiveCellMsgBox i.PathEnd Sub上述代碼,由于Range并沒(méi)有Path這個(gè)成員.1.1.4 數(shù)組下標(biāo)越界Option ExplicitSub MyCodeQMsgBox Array。,2, 3, 4, 5)(5)End Sub上述代碼,數(shù)組的上界是4,下屆是0,因此越界解決的方法有Option Base 1MsgBox Aiiay(l, 2, 3,4, 5)(4)1.1.5 集合中,成員不存在Sub MyCodeQApplication. StatusBai = Acti
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度商用車輛購(gòu)置貸款合同范本正規(guī)范
- 2025年度新型綠色建筑勞務(wù)施工合同協(xié)議書(shū)
- 2025年度公共資源交易招標(biāo)代理合同
- 2025年度新型城鎮(zhèn)化示范項(xiàng)目施工總包合同
- 2025年度客運(yùn)車輛新能源車輛推廣應(yīng)用合同
- 2025年度智能空調(diào)租賃服務(wù)合同書(shū)范本
- 2025年度新能源項(xiàng)目民工安全與福利保障合同
- 2025年度有機(jī)果園經(jīng)營(yíng)權(quán)轉(zhuǎn)讓合同范本
- 2025年度豪華客運(yùn)車租賃服務(wù)合同
- 2025年度腳手架工程安全監(jiān)理與檢測(cè)合同范文
- 消除醫(yī)療歧視管理制度
- JT-T-1180.2-2018交通運(yùn)輸企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化建設(shè)基本規(guī)范第2部分:道路旅客運(yùn)輸企業(yè)
- 2024交管12123駕照學(xué)法減分必考題庫(kù)附答案
- 腦脊液常規(guī)檢查
- 2024年蘇州經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)附答案
- 柴油機(jī)油-標(biāo)準(zhǔn)
- 監(jiān)獄安全課件
- 《初三開(kāi)學(xué)第一課 中考動(dòng)員會(huì) 中考沖刺班會(huì)》課件
- 慢性萎縮性胃炎的護(hù)理查房
- 住院醫(yī)師規(guī)范化培訓(xùn)臨床實(shí)踐能力結(jié)業(yè)??萍寄芸己耍ㄈ漆t(yī)學(xué)科)婦科檢查及分泌物留取
- 加強(qiáng)網(wǎng)絡(luò)空間治理工作的調(diào)研與思考
評(píng)論
0/150
提交評(píng)論