- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VBA編程常见错误原因分析
VBA编程常见错误原因分析
ryueifu_VBA
前 言
目 录
Chapter 1 编译错误 5
1.1.1 忘记了声明变量 5
1.1.2 对象变量的类型,不存在,或者缺少引用 5
1.1.3 工程中,引用缺失,或路径不正确 6
Chapter 2 运行时错误 9
1.1.1 错误测试 10
1.1.2 =号左右两侧不匹配 10
1.1.3 成员或方法不存在 10
1.1.4 数组下标越界 10
1.1.5 集合中,成员不存在 11
1.1.6 文件或文件夹不存在 11
编译错误
编译错误,常常是程序还一句没有运行,就被检查出的错误.
忘记了声明变量
普通模块中,输入这个代码,运行
Option Explicit
Sub MyCode()
Set rg = ActiveCell
MsgBox rg.Address
End Sub
以上代码中使用了对象变量,但是没有事先定义.纠错的方法,有以下2种
规规矩矩定义
Option Explicit
Dim rg As Range
Sub MyCode()
Set rg = ActiveCell
MsgBox rg.Address
End Sub
变量可以不定义 不推荐
Option Explicit
Sub MyCode()
Set rg = ActiveCell
MsgBox rg.Address
End Sub
对象变量的类型,不存在,或者缺少引用
Option Explicit
Sub MyCode()
Dim App As word.Application
Dim doc As word.Document
Dim rg As Ranges
Set rg = ActiveCell
rg.Value = App.Caption
End Sub
上述程序,想在Excel VBA中操作Word,但是没有进行前期绑定;另外,Dim rg As Ranges这句,由于拼写错误,也会引起以下的对话框.
结构不配对造成的错误
Sub MyCode()
Dim rg As Range
Set rg = ActiveCell
If rg.Value 0 Then rg.Font.Color = vbBlue
End If
End Sub
上面这个代码,End if 多余,造成了不配对.类似的还有
Sub End Sub,
With End with
Do Loop
For Next
Type End Type
Function End Function等等
工程中,引用缺失,或路径不正确
以下这个代码,本身没有任何问题,但是由于引用中,有缺失的外部库,所以不能执行,这种现象,经常发生在
引用的dll文件被删.
其他人发来的Excel程序,使用之前,必须重新建立引用.
制作时,和使用时的Office版本不同,比如制作时,引用的是Word 2007,而使用的机器上,仅仅安装了Office 2003,这时候,容易出现以下错误.
在 VBE 的工具/引用中,可以看到,至少有一个外部引用,丢失.或者显示为Missing
解决方法: 先取消引用,再点击浏览按钮,找到目标的dll文件,即可.
Sub RemoveBrokenRef()
Dim ref As reference
For Each ref In Application.VBE.ActiveVBProject.References
If ref.IsBroken = True Then
Application.VBE.ActiveVBProject.References.Remove ref
End if
Next ref
End Sub
运行上述代码,可以快速清除所有破损的引用.
运行时错误
造成这种错误,原因很多种,有时候难以找出.下表列出一部分错误编号和描述.
1 应用程序定义或对象定义错误 51 内部错误 2 应用程序定义或对象定义错误 52 文件名或文件号错误 3 无 GoSub 返回 53 文件未找到 4 应用程序定义或对象定义错误 54 文件模式错误 5 无效的过程调用或参数 55 文件已打开 6 溢出 56 应用程序定义或对象定义错误 7 内存溢出 57 设备 I/O 错误 8 应用程序定义或对象定义错误 58 文件已存在 9 下标越界 59 记录长度错误 10 该数组被固定或暂时锁定 60 应用程序定义或对象定义错误
您可能关注的文档
- USBCABLE的基本知識介绍.doc
- USBHDD啟动模式安装教程【图文教程】.doc
- USBHUB控制芯片解決方案.doc
- USB_HDD啟动盘,U盘装系统祥细图文教程(很有用的说).doc
- USB中文協议01绪论.doc
- USB協议.doc
- USB延長线超长可能引起供电不足的解决方法.docx
- USB引導盘和PE工具安装系统.doc
- USB接口協议.docx
- USB接口的高速數据采集卡的设计与实现.doc
- 专题06 经济体制(我国的社会主义市场经济体制)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题11 世界多极化与经济全球化-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 专题03 经济发展与社会进步-5年(2020-2024)高考1年模拟政治真题分类汇编(浙江专用)(解析版).docx
- 专题09 文化传承与文化创新-5年(2020-2024)高考1年模拟政治真题分类汇编(北京专用)(原卷版).docx
- 5年(2020-2024)高考政治真题分类汇编专题08 社会进步(我国的个人收入分配与社会保障)(原卷版).docx
- 专题07 探索世界与把握规律-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 5年(2020-2024)高考政治真题分类汇编专题06 经济体制(我国的社会主义市场经济体制)(原卷版).docx
- 专题11 全面依法治国(治国理政的基本方式、法治中国建设、全面推进依法治国的基本要求)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题17 区域联系与区域协调发展-【好题汇编】十年(2015-2024)高考地理真题分类汇编(解析版).docx
- 专题01 中国特色社会主义-5年(2020-2024)高考1年模拟政治真题分类汇编(原卷版).docx
最近下载
- 2024-2025学年小学美术一年级上册(2024)冀美版(2024)教学设计合集.docx
- 压力管道使用单位题库-安全总监.docx
- (完整版)西游记模板.ppt
- 学习贯彻《促进高质量充分就业》心得体会.doc
- 南京林业大学2020-2021学年《Python程序设计》期末考试试卷(A卷)及标准答案.docx
- 2022年集美大学软件工程专业《操作系统》科目期末试卷A(有答案).pdf VIP
- NY_T 3917-2021CN柑橘全果果汁(浆)加工技术规程.pdf
- 附件1:中国中铁股份有限公司职业项目经理管理办法(试行).doc
- 小学数学新西师版一年级上册全册教案(2024秋).doc
- 推拿学基础.doc
文档评论(0)