第一部分 VBA编程语言详解
第1章 VBA介绍
1.1 什么是宏
1.1.1 VBA如何适合于宏
1.1.2 三种“过程”类型
1.2 记录一个VBA宏
1.2. 1 查看生成的模块
1.2.2 编辑记录宏
1.3 浏览Visual Basic Editor
1.3.1 ProjectExplorer
1.3.2 Properties窗口
1.3.3 工作区
1.4 编写你自己的命令宏
1.4.1 创建一个新模块
1.4. 2 编写一个命令宏
1.5 运行一个VBA宏
1.6 用VBA创建用户定义函数
1.6.1 理解用户定义函数
1.6.2 编写用户定义函数
1.6.3 使用用户定义函数
1.7 使用过程
1.7.1 过程的结构
1.7.2 调用一个过程
1.7.3 公有过程与私有过程
1.7.4 插入一个过程的另一种方法
1. 7.5 Visual Basic中Editor的简化代码编写方法
1.7.6 查找代码
1.7.7 用书签导航模块
1.8 使用模块
1.8.1 重新命名一个模块
1.8.2 输出一个模块
1.8.3 输入一个模块
1.8.4 移去一个模块
1.9 设置Visual Basic Editor选项
1.9.1 编辑器标签
1.9.2 Editor Format标签
l.9.3 General标签
l.9.4 Docking标签
1.9.5 保护你的代码
1.10 小结
第2章 变量
2.1 变红声明
2.2 理解变量范围
2.2.1 过程级范围
2.2.2 模块级范围
2.2.3 公有范围
2.3 把变量作为参数传递
2.3.1 通过引用传递交量
2.3.2 通过值传送变量
2.4 使用静态变量
2.5 避免变量错误
2.6 变量数据类型
2.6.1 改变缺省数据类型
2.6.2 创建用户定义数据类型
2.7 使有数组变量
2.7.1 动态数组
2.7.2 多维数组
2.8 使用常量
2.8.1 使用内部常量
2.8.2 创建用户定义常量
2.8.3 枚举用户定义命名常量
2.9 小结
第3章 构建VBA表达式
3.1 发达式结构
3.2 VBA运算符
3.2.1 算术运算符
3.2.2 连接运算符
3.2.3 比较运算符
3.2.4 逻辑运算符
3.3 运算符的优先级
3.3.1 优先级顺序
3.3.2 控制优先级顺序
3.4 数值表达式
3.4.1 近观算术表达式
3.4.2 数值数据类型转换函数
3.4.3 VBA的数学函数
3.4.4 VBA的财务函数
3.5 字符串表达式
3.6 逻辑表达式
3.6. 1 And运算符
3.6. 2 Or运算符
3.6. 3 Xor运算符
3.6.4 Eqv运算符
3.6.5 Imp运算符
3.6. 6 Not运算符
3.7 日期表达式
3.8 格式化数值和日期表达式
3.8.1 Format函数
3.8.2 VBA的预定义格式
3. 8.3 用户定义数值格式
3.8.4 用户定义的日期和时间格式
3.9 新的VBA 6.0函数
3.10 小结
第4章 使用对象
4.1 什么是对象
4.2 对象等级
4.3 使用对家属性
4.3.1 设置一个属性的值
4.3.2 返回一个属性的值
4. 4 使用对象方法
4.5 处理对象事件
4. 6 使用对象集合
4. 7 对象浏览器
4.7.1 对象浏览器特征
4.7.2 使用对象浏览器
4.8 引用附加对象库
4.9 分配对象给一个变量
4. 10 Is运算符
4.11 使用多个属性或方法
4. 12 Application对象
4.12.1 Application对象的属性
4.12.2 Application对象的方法
4.13 Window对象
4.13.1 指定一个Window对象
4.13.2 打开一个新的窗口
4. 13.3 Window对象属性
4. 13.4 Window对象方法
4.14 小结
第5章 控制你的VBA代码
5.1 判断代码
5.2 使用If...Then做出真/假判断
5.3 使用IfThenElse处理一个False结果
5.4 多重判断
5.4.1 使用And和Or运算符
5.4.2 使用多重If...Then...Else语句
5.4.3 使用Select Case语句
5.5 判断函数
5.5.1 IIf函数
5.5.2 Choose国数
5.5.3 Switch函数
5.6 循环代码
5.7 DO...Loop结构
5.8 使用For...Next循环
5.9 For Each...Next循环
5.10 使用Exit For或Exit Do退出循环
5.11 小结
第二部分 Microsoft Office对象
第6章 Word 2000 VBA编程
6. 1 从WordBasic向VBA转变
6.2 通过VBA读取和设置Word的程序选项
6.2.1 View标签
6.2.2 General标签
6.2.3 Edit标签
6.3 Word的Application对象
6.3.1 Application对象的属性
6.3.2 Application对象的方法
6.3.3 Application对象的事件
6.4 使用Document对象
6.4.1 指定一个Document对象
6. 4. 2 打开一个文档
6.4. 3 创建并打开一个Word工作区
6.4.4 创建一个新文档
6.4.5 RecentFiles对象
6.4.6 Document对家属性
6. 4. 7 Document对象方法
6. 4. 8 Document对象事件
6. 5 Word中表示文本的对象
6. 5.1 Rangr对象
6. 5.2 Selection对象
6.5.3 Characters对象
6.5.4 Words对象
6.5.5 sentences对象
6.5.6 Paragfaph对象
6.6 用VBA检查拼写和语法
6. 6.1 拼写检查一个文本或范围
6. 6.2 拼写检查一个字
6.6.3 检查语法
6.6.4 Word的拼写和语法选项
6.7 Word 2000中的新对象
6.8 小结
第7章 用VBA操纵Excel 2000
7.1 Excel的宏选项
7. 1.1 指定一个快捷键
7.1.2 用相对引用记录
7.2 使用VBA读取并设置Excel的程序选项
7.2.1 View标签
7.2.2 Calculation标签
7.2.3 Edit标签
7.2.4 General标签
7.3 Excel的Application对象
7.3.1 访问工作表函数
7.3.2 Application对象的其他属性
7.3.3 Excel的Application对象的方法
7.3.4 一些类似事件的方法
7.4 操纵Workbook对象
7.4.1 指定一个Workbook对象
7.4.2 打开一个工作簿
7.4.3 创建一个新的工作簿
7.4.4 Workbook对象属性
7.4.5 Workbook对象方法
7.4. 6 Workbook对象事件
7.5 处理Worksheet对象
7.5.1 指定一个Worksheet对象
7.5.2 创建一个新工作表
7.5.3 Worksheet对象属性
7.5.4 Worksheet对象方法
7.5.5 Worksheet对象事件
7.6 使用Rangr对象
7.6.1 返回一个Rangr对象
7.6.2 使用Offset方法
7.6.3 选择一个单元或范围
7.6.4 定义一个范围名
7.6.5 其他Range对象属性
7.6.6 其他Range对象方法
7.7 使用附加应用程序
7.7.1 创建一个附加应用程序
7.7.2 用VBA控制附加应用程序
7.8 Excel 2000中的新对象
7.9 小结
第8章 PowerPoint 2000演示文稿编程
8.1 PowerPoint的Application对象
8.2 PowerPolnt的Presentation对象
8.2.1 指定一个Presentation对象
8.2.2 打开一个演示
8.2.3 创建一个新波尔
8.2.4 Presentation对象属性
8.2.5 Presentation对象方法
8.2.6 神奇应用
8.3 PowerPoint的slide对象
8.3.1 指定一个幻灯
8.3.2 创建一个新幻灯
8.3.3 插入来自一个文件的幻灯
8.3.4 Slide对家属性
8.3.5 魔术应用:创建幻灯
8.3.6 Slide对象方法
8.4 处理Shape对象
8.4. 1 指定一个形状
8.4.2 给一个幻灯增加形状
8.4.3 一些Shape对象属性
8.4.4 神奇(Juggling)应用程序:创建标题页
8.4.5 一些Shape对象方法
8.4. 6 神奇应用:创建说明书
8.5 操作幻灯放映
8.5.1 幻灯放映转接
8.5.2 幻灯放映设置
8.5.3 运行幻灯放映
8.6 PowerPoint 2000中的新对象
8.7 小结
第9章 VBA和Access 2000
9.1 Access对象层次
9.2 控制Access选项
9.3 深入Access的Application对象
9.3.1 一些Application对象属性
9.3.2 一些Application对象方法
9.4 Access的Form对象
9.4.1 打开一个窗体
9.4.2 创建一个窗体
9.4. 3 关闭一个窗体
9.4. 4 Form对象属性
9.4.5 Form对象方法
9.5 Access的Report对象
9.5.1 打开一个报表
9.5.2 创建一个报表
9.5.3 关闭一个报表
9.5.4 报表分组与排序
9.6 Control对象
9.7 使用方便的SysCmd函数
9.7.1 返回一个对象的当前状态
9.7.2 返回关于Access的信息
9.8 创建Access事件处理程序
9.9 使用Access模块
9.9.1 向窗体模块中增加代码
9.9.2 向Module对象中增加代码
9.10 保护Access工程
9.11 Access 2000中的新对象
9.12 小结
第三部分 VBA用户接口设计
第10章 与用户交互
10. 1 声合编程
10.1.1 使喇叭蜂鸣
10.1.2 PowerPoint音效编程
10.2 向用户显示信息
10.2.1 改变Access中的鼠标指针
10.2.2 在状态栏中显示消息
10.2.3 使用MsgBox显示消息
10.3 获取用户输入
10.3.1 提示用户输入
10.3.2 访问一个应用程序的内建对话框
10.4 小结
第11章 使用Microsoft窗体
11.1 理解自定义自体和对话枢
11.1.1 VBA中的窗体和对话框
11.2 向你的项目中加入一个窗体
11.3 在VBA应用程序问共享自体
11.3.1 输入和输出窗体文件
11.3.2 在应用程序之间拖曳窗体对象
11.4 改变窗体对象的设计时间属性
11.4.1 Appearance类
11.4.2 Bellavlor类
11.4. 3 Font类
11.4. 4 Misc类
11.4. 5 Picture类
11.4.6 Position类
11.4. 7 Scrolling类
11.5 使用控件
11.5.1 向一个窗体插入控件
11. 5. 2 选择控件
11.5.3 调整控件大小
11. 5.4 移动控件
11.5.5 复制控件
11.5.6 删除控件
11.5.7 组合控件
11.5.8 排序重叠控件
11.5.9 设置控件属性
11.5.10 公用控件属性
11.5.11 设置标签顺序
11.5.12 向工具栏中加控件
11.5.13 创建用户定义控件
11.6 处理窗体事件
11.7 窗体控件类型
11.7.1 命令按钮
11.7. 2 标签
11.7. 3 文本框
11.7. 4 框架
11.7.5 选项按钮
11.7. 6 复选框
11.7.7 切换按钮
11.7. 8 列表框
11.7.9 滚动条
11.7.10 滚动按钮
11.7.11 标签条(Tab Strip)和MultiPage控件
11.8 在一个过程中使用窗体
11.8.1 显示窗体
11.8.2 窗体显示时处理事件
11.8.3 卸载窗体
11.8.4 处理窗体结果
11.9 小结
第12章 创建自定义菜单和工具栏
12.1 给菜单命令指定宏
12.1.1 第一步:练习前的计划
12. 1.2 创建一个新菜单
12. 1.3 创建一个新的层叠菜单
12.1.4 添加菜单命令和指定宏
12.1.5 删除菜单和菜单命令
12.2 给你的宏创建自定义工具栏
12.2.1 创健一个新工具栏
12.2.2 添加工具栏按钮并指定一个宏
12.3 菜单、工具栏和VBA
12.4 理解命令栏
12. 4.1 指定命令栏
12.4.2 CommandBars对象的属性
12. 5 使用命令栏
12.5.1 创建一个新的命令栏
12. 5. 2 命令栏属性
12.5.3 删除自定义命令栏
12.5.4 复位一个内部命令栏
12.6 使用命令栏控件
12.6.1 指定一个控件
12.6.2 添加一个控体到命令栏
12.6.3 Command Bar Info实用程序
12.6.4 控件属性
12. 6. 5 控件方法
12.7 小结
第四部分 应用程序集成
第13章 使用其他应用程序
13.1 启动另一个应用程序
13.2 激活一个正在运行的应用程序
13.3 发送键击给一个应用程序
13.4 使用动态数据交换
13.4. 1 DDE:基础
13.4.2 在VBA和服务器应用程序之间建立一个链路
13.4.3 控制服务器应用程序
13.4.4 与服务器应用程序交换数据
13.5 小结
第14章 OLE和 ActiveX对象编程
14.1 OLE基础
14.1.1 复合文档
14.1.2 组件对象模型
14. 1.3 自动化
14. 1.4 ActiveX控件
14.1.5 OLE和注册表
14.1.6 CLSID关键字
14.2 链接和嵌入对象编程
14.3 插人OLE对象
14.3.1 理解AddOLEObject方法
14.3.2 查找对象的Class类型
14.3.3 插入一个新的嵌入对象
14.3.4 插入作为嵌入对象的已有文件
14.3.5 插入作为链接对象的已有文件
14.3.6 OLE对象和Word的Inlineshape对象
14.3.7 在Word中插入ActiveX控件
14.4 使用链接和嵌入对象
14.4. 1 OLE对象的属性
14. 4. 2 OLE对象的方法
14.5 小结
第15章 通过OLE自动化控制应用程序
15. 1 理解自动化
15. 1. 1 引用对象库
15.1.2 后期绑定与前期绑定
15.2 访问自动化对象
15.2.1 New关键字
15.2. 2 Createobject函数
15.2.3 Getobject函数
15.3 处理自动化错误
15.4 小结
第16章 用类模块建立你自己的对象
16.1 部分完成:自定义集合
16.1.1 声明一个自定义集合
16.1.2 向白定义集合添加对象
16.1.3 使用自定义集合中的对象
16.1.4 从自定义集合中删除对象
16.2 理解类模块
16.3 建立类模块
16.3.1 生成类模块
16.3.2 定义数据成员
16. 4 实现类属性
16.4. 1 Property Get过程
16. 4. 2 Property Let过程
16. 5 建立类方法
16. 6 定义类事件
16. 6. 1 Initialize事件
16. 6.2 Terminate事件
16.7 创建类集合
16.7.1 为一个集合建立一个类模块
16. 7.2 为每个成员提供包装
16.8 实现对象的类属性
16.9 使用带有Office的Application对象的事件
16.9.1 Excel的Application对象事件
16.9.2 Word的Application对象事件
16.9.3 PowerPoint的Applicatiorl对象事件
16.10 小结
第五部分 VBA数据库编程
第17章 使用VBA与Excel列表一同工作
17.1 什么是列表
17.2 使用列表数据
17.3 启动应用程序
17.4 输入数据
17.4.1 使用山定义窗体输入数据
17.4.2 用VBA处理数据记录
17.4. 3 准备数据记录窗体
17.4.4 向数据库写数据
17.5 编辑数据
17.5.1 使用自定义窗体编辑数据
17.5.2 用VBA代码处理数据编辑
17.6 过滤数据
17.6. 1 过滤用户数据库
17.6.2 用VBA过滤数据
17. 6. 3 自动过滤一个工作表
17.7 得到数据库记录的计数
17.8 删除记录
17.8.1 删除用户数据库记录
17.8.2 用VBA处理记录删除
17.9 数据排序
17.10 数据小计
17.11 小结
第18章 数据访问对象编程
18.1 关于数据访问对象
18.2 访问位于外部数据库的数据
18.2.1 创建工作空间
18.2. 2 连接到Jet数据库
18.2.3 连接到非JET数据库
18.2.4 连接到ODBC数据源
18.3 使用记录集
18.3.1 理解记录集类型
18.3.2 获得域信息
18.3.3 Recordset对象属性
18.3.4 Recordset对象方法
18.4 查询记录集
18.4. 1 使用一个SQL表达式打开记录集
18.4.2 从QueryDef对象打开记录集
18.5 从Exce检索数据
18.5.1 检索一个单独的域值
18.5.2 检索一个或多个完整行
18.5.3 检索一个完整的记录集
18.6 小结
第19章 高级数据库编程
19.1 维护一个Jet数据库
19.1.1 创建新的数据库
19.1.2 压缩数据库
19.2 使用事务处理过程
19.3 使用ODBCDirect工作区
19.3. 1 创建ODBCDirect工作区
19.3. 2 创建数据原
19.3.3 连接到一个数据库
19.3.4 使用ODBCDirect记录集
19.3.5 返回多个记录集对象
19. 4 Jet数据库安全编程
19.4. 1 创建一个安全的数据库
19.4. 2 打开一个安全数据库
19.4.3 使用User对象
19.4.4 使用Group对象
19.4. 5 设置对象权限
19.5 未来展望:ActiVeX数据对象(ADO)
19.5.1 理解通用数据访问
19.5.2 解决方案:OLE DB和ADO
19. 5.3 ADO编程
19.6 小结
第六部分 VBA互联网和内联网编程
第20章 VBA巨联网和内联网编程
20.1 使用VBA读取和设置Office 2000的Web选项
20.2 Word的Email选项编程
20.3 发布为HTML
20.3.1 Excel中的Publishobject
20.3.2 PowerPoint中的Publishobject
20.4 控制Office 2000超链接
20.4. 1 使用Hyperlink对象
20.4. 2 添加新的Hyperlink对象
20.4.3 Hyperlink对家属性
20.4. 4 Hyperlink对象方法
20.4.5 Followllyperlink方法
20.5 建立自定义Web浏览器
20.5.1 引用WebBrowser控件
20.5.2 用WebBrowser控件显示Web页
20.5.3 应用程序:万维网浏览器
20.5.4 用WebBrowser控件导航
20.5.5 在万线网浏览器中导航
20.6 通过自动化控制Internet ExPlorer
20.6.1 设置引用和对象变量
20.6.2 InternetExplorer对象属性
20.7 小结
第21章 HTML编程:VBScriPt和脚本编辑器
21.1 VBA和VBScriPt之间的区别
21.2 附加脚本到网页中
21.2.1 <SCRIPT>标记
21.2.2 关于VBScript书件处理过程的注释
21.2.3 使用一个控件的LANGUAGE属性
21.3 脚本对象体系结构
21.3.1 Window对象
21.3.2 Docunnent对象
21.4 VBScript如何与窗体交互
21.4.1 Form对象
21.4.2 处理简体控件
21.5 示例:一个抵押贷款计算器
21.6 使用脚本编辑器
21.6. 1 启动脚本编辑器
21.6.2 漫游脚本编辑器接口
21.6.3 插入脚本
21.7 小结
第22章 用OUtlOOk进行电子邮件编程
22.1 理解Namespace对象
22.2 使用Explorer对象
22.2.1 Explorer对象属性
22.2.2 Explorer对象方法
22.3 Inspector对象
22. 3.1 Inpetor对家属性
22.3.2 InspeCtor对象方法
22.4 使用MAPIFolder对象
22. 4. 1 引用缺省的文件夹
22.4.2 使用Namespace对象的Folders属性
22.4. 3 给用户提示文件夹
22.4.4 一些MAPIFolder属性
22.4.5 一些MAPIFolder方法
22.5 什么是项
22.5.1 项的类型
22.5.2 创建一个项
22.6 深入考察Mailltem对象
22.6.1 Mailltem对象属性
22.6. 2 决定发送者的Email地址
22. 6. 3 Mailltem对象方法
22.6.4 使用收件人
22.6.5 使用附件
22.7 在Outlook的VBA中处理对象事件
22.7.1 建立一个对象事件处理程序
22.7.2 Application对象事件
22. 8 自动化和Outlook对象模型
22.8.1 得到Namespace对象
22.8.2 登录一个MAPI会话
22.8.3 注销一个MAPI会话
22.9 小结
第七部分 高级VBA编程
第23章 捕获程序错误
23.1 一个基本的错误捕获策略
23.1.1 设置错误捕获
23.1.2 编写错误处理代码
23.1.3 重新开始执行过程
23.1.4 禁止捕获
23.2 使用Err对象
23.2.1 Err对象属性
23.2.2 Err对象方法
23.3 可捕获的VBA错误
23.4 小结
第24章 调试VBA过程
24.1 调试的基本策略
24. 1.1 语法错误
24.1.2 编译错误
24.1.3 运行时间错误
24.1.4 逻辑错误
24.2 暂停一个过程
24.2.1 进人中断模式
24.2.2 退出中断模式
24. 3 单步调试一个过程
24 3.1 谁步进人过种执行
24.3.2 单步跨过过程执行
24.3.3 给来过程的单步执行
24.3.4 单步执行到光标
24.4 监视过程值
24. 4.1 使用本地窗口
24.4.2 加入监视表达式
24. 4.3 编辑监视发达八
24.4.4 删除监视表达式
24.4. 5 快速显示数据值
24.5 使用即时窗口
24.5.1 在即时窗口中打印数据
24.5. 2 在即时窗口中执行语句
24.6 调试技巧
24. 6.1 代码缩进以便于阅读
24. 6.2 打开语法检查
24.6.3 要求变童声明
24. 6.4 分解复杂过程
24. 6.5 用小写字母输入VBA关键字
24. 6. 6 当一个过程拒绝执行时如何做
24.6.7 注释掉有问题的语句
24. 6. 8 分解长语句
24. 6.9 尽可能使用Excel的值域名
24. 6. 10 利用自定义常景
24. 7 小结
第25章 Windows API编程
25.1 理解Win32 API
25.2 声明Win32 API过程
25.2.1 对API过程使用常量
25.2.2 对API过程使用类型定义
25.2.3 警告和提示
25.3 Win32 API举例
25.3.1 蜂鸣喇叭
25.3.2 返回Windows的文件夹
25.3.3 返回硬盘驱动器信息
25.3.4 得到系统度量
25.3.5 从VBA退出Windows
25.3.6 处理DoEventS的较好办法
25.4 注册表和Win32 API
25.4.1 打开一个注册表键
25.4. 2 关闭一个注册表键
25.4. 3 查询一个注册表值
25.4. 4 设置一个注册表值
25.5 小结
第26章 VBA技巧与技术
26. 1 VBA中的条件编译
26. 1.1 建立你的条件编译应用程序
26.1.2 用于调试的条件编译
26.1.3 Win32和Win16的条件编译
26.2 将应用程序设置保存在注册表中
26.2.1 将设置保存在注册表小
26. 2.2 从注册表中读出设置
26.2.3 删除注册表中的设置
26. 2.4 示例:跟踪文件使用
26.2.5 读出所有的节设置
26. 3 通过VBA访问文件系统
26.3.1 返回文件和文件夹信息
26. 3.2 操纵文件和文件夹
26. 4 低级文件I/O
26. 4. 1 打开一个磁盘文件
26.4.2 理解顺序文件存取
26.4.3 理解随机文件存取
26. 4.4 理解二进制文件存取
26.5 加快过程的技巧
26.5.1 关闭屏幕更新
26.5.2 隐藏你的文档
26. 5.3 除作不得已,否则不要选择数据
26.5.4 江Excel中,尽量不要重新计算
26. 5.5 优化循环
26. 6 数字签名一个VBA项目
26.7 小结
第八部分 VBA应用
第27章 一个Excel支票簿应用程序
27.1 使用支票簿
27.1. 1 输入账号信息
27.1.2 输入起始余额
27.1.3 记录支票
27.1.4 记录提款
27.1.5 记录存款
27.2 结算支票簿
27.3 支票簿应用程序是怎样工作的
27.3.1 理解Account Info工作表
27.3.2 Transaction过程
27.3.3 Account Information过程
27.3.4 对账过程
27.4 小结
第28章 工作时做快速备份
28.1 使用Backup应用程序
28.1.1 选择要备份的文件
28.1.2 选择备价目标
28.1.3 设置备份模式
28.2 理解Backup应用程序
28.3 BackuP应用程序和注册表
28.4 Backup窗体简介
28.4. 1 初始化窗体
28.4.2 Source标签
28.4. 3 Destination标签
28.4. 4 Mode标签
28. 4. 5 命令按钮
28. 5 Backuu应用程序的支持过程
28.5.1 Parse SelectedFiles过程
28.5.2 BuildDocList过程
28.5.3 DisplaysourceData过程
28.5.4 DisplayDestinationData过程
28.5.5 CheckBackupstatus过程
28.5.6 BackUpselectedFiles过程
28.5.7 ProcessBackupMode过程
28.5.8 SaveRegistrysettings过程
28.6 小结
第29章 Access和Outlook:电子邮件归并
29.1 电子邮件归并做什么
29.2 创建一个邮件
29.2.1 第1步:创建数据资源
29.2.2 第2步:创建报文
29.2.3 第3步:创建邮件
29.2. 4 第4步:发送邮件
29.3 电子邮件归并数据库介绍
29.3.1 表格
29.3.2 查询
29. 3.3 窗体
29.4 隐藏其后的代码
29.4.1 Messaes窗体中的代码
29.4. 2 Select Email Field Dialog窗体
29.4.3 Mallingr窗体中的代码
29.5 小结
第九部分 附录
附录 A VBA语句
附录 B VBA函数
附录 C Windows Scripting Host编程
附录 D Windows ANSI字符集
附录 E HTML人门
附录 F VBA内部函数
附录 G 关于配套CD-ROM盘