VBA编程常见错误原因分析Word文档下载推荐.docx
- 文档编号:21609713
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:10
- 大小:73.04KB
VBA编程常见错误原因分析Word文档下载推荐.docx
《VBA编程常见错误原因分析Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《VBA编程常见错误原因分析Word文档下载推荐.docx(10页珍藏版)》请在冰豆网上搜索。
DimrgAsRanges
rg.Value=App.Caption
上述程序,想在ExcelVBA中操作Word,但是没有进行前期绑定;
另外,DimrgAsRanges这句,由于拼写错误,也会引起以下的对话框.
结构不配对造成的错误
DimrgAsRange
Ifrg.Value>
0Thenrg.Font.Color=vbBlue
EndIf
上面这个代码,Endif多余,造成了不配对.类似的还有
SubEndSub,
WithEndwith
DoLoop
ForNext
TypeEndType
FunctionEndFunction等等
工程中,引用缺失,或路径不正确
以下这个代码,本身没有任何问题,但是由于引用中,有缺失的外部库,所以不能执行,这种现象,经常发生在
引用的dll文件被删.
其他人发来的Excel程序,使用之前,必须重新建立引用.
制作时,和使用时的Office版本不同,比如制作时,引用的是Word2007,而使用的机器上,仅仅安装了Office2003,这时候,容易出现以下错误.
在VBE的工具/引用中,可以看到,至少有一个外部引用,丢失.或者显示为Missing
解决方法:
先取消引用,再点击浏览按钮,找到目标的dll文件,即可.
SubRemoveBrokenRef()
DimrefAsreference
ForEachrefInApplication.VBE.ActiveVBProject.References
Ifref.IsBroken=TrueThen
Application.VBE.ActiveVBProject.References.Removeref
Endif
Nextref
运行上述代码,可以快速清除所有破损的引用.
Chapter2运行时错误
造成这种错误,原因很多种,有时候难以找出.下表列出一部分错误编号和描述.
1
应用程序定义或对象定义错误
51
内部错误
2
52
文件名或文件号错误
3
无GoSub返回
53
文件未找到
4
54
文件模式错误
5
无效的过程调用或参数
55
文件已打开
6
溢出
56
7
内存溢出
57
设备I/O错误
8
58
文件已存在
9
下标越界
59
记录长度错误
10
该数组被固定或暂时锁定
60
11
除数为零
61
磁盘已满
12
62
输入超出文件尾
13
类型不匹配
63
记录号错误
14
溢出串空间
64
15
65
16
表达式太复杂
66
17
不能执行所需的操作
67
文件太多
18
出现用户中断
68
设备不可用
19
69
20
无错误恢复
70
拒绝的权限
21
71
磁盘未准备好
22
72
23
73
24
74
不能更名为不同的驱动器
25
75
路径/文件访问错误
26
76
路径未找到
27
77
28
溢出堆栈空间
78
29
79
30
80
31
81
32
82
33
83
34
84
35
子过程或函数未定义
85
36
86
37
87
38
88
39
89
40
90
41
91
对象变量或With块变量未设置
42
92
For循环未初始化
43
93
无效的模式串
44
94
无效使用Null
45
95
46
96
由于对象已经激活了事件接受器支持的最大数目的事件,不能吸收对象的事件
47
DLL应用程序客户太多
97
不能调用对象的友元函数,该对象不是所定义类的一个实例。
48
加载DLL错误
98
属性或方法调用不能包括对私有对象的引用,不论是作为参数还是作为返回值
49
DLL调用约定错误
99
50
100
1.1.1错误测试
下方格子输入错误编号,比如13
错误描述
1.1.2=号左右两侧不匹配
DimiAsInteger
i=32768
上述代码,i是整变量,而右侧是一个长整型数值
DimiAsRange
i=True
上述代码,也是类型不匹配
1.1.3成员或方法不存在
Seti=ActiveCell
MsgBoxi.Path
上述代码,由于Range并没有Path这个成员.
1.1.4数组下标越界
MsgBoxArray(1,2,3,4,5)(5)
上述代码,数组的上界是4,下届是0,因此越界
解决的方法有
OptionBase1
MsgBoxArray(1,2,3,4,5)(4)
1.1.5集合中,成员不存在
Application.StatusBar=ActiveWorkbook.Name
如果当前Excel程序,关闭了所有的工作簿的情况下,上述代码会产生错误
1.1.6文件或文件夹不存在
KillActiveWorkbook.Path&
"
\asd.txt"
上述代码连续删除2次同一个文件,必定出错
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VBA 编程 常见 错误 原因 分析
![提示](https://static.bdocx.com/images/bang_tan.gif)