词条 | ExcelVBA程序开发自学宝典 |
释义 | Excel VBA是一门强化、改造Excel的程序语言,该书从一个专业程序(VBA插件)的应用开始,介绍了VBA语言的基础知识,并着重阐述了如何开发通用型插件来延伸Excel的通用功能。 书名:ExcelVBA程序开发自学宝典 作者:罗刚君 ISBN:9787121095856 类别:程序设计 页数:668 定价:69.00 元 出版社:电子工业出版社 出版时间:2009年10月 装帧:平装 开本:16开 前 言(本书目的 本书结构 本书特点 光盘文件 适合读者群 本书作者) 目 录(第 01章 从Excel插件认识VBA 第 02章 VBA概述 第 03章 巧设VBA编辑器提升编程效率 第 04章 VBA基本概念 第 05章 VBA数据类型与变量、常量 第 06章 认识VBA过程及开发自定义函数 第 07章 VBA的对象模型与对象表示法 第 08章 自动宏与Excel事件 第 09章 VBA程序常规则 第 10章 常用语法剖析 第 11章 Excel常见对象的应用技巧 第 12章 Excel的事件应用案例 第 13章 数组基础 第 14章 开发数组函数与数组应用 第 15章 认识窗体与控件 第 16章 窗体控件运用案例 第 17章 表单控件与ActiveX控件 第 18章 文件管理 第 19章 FSO、WScript与DOS在VBA中的应用 第 20章 磁盘与系统信息管理 第 21章 认识Excel的内置命令栏对象 第 22章 创建新工具栏 第 23章 创建新菜单栏 第 24章 操作快捷菜单 第 25章 认识类和类模块 第 26章 API的基本应用 第 27章 VBA与注册表 第 28章 VBE的对象模型与对象控制 第 29章 程序开发思想 第 30章 开发VBE插件 第 31章 开发xlam与COM加载项插件 第 32章 开发“Excel百宝箱”) 内 容 简 介本书从一个专业程序(VBA插件)的应用开始,逐步分析VBA程序的优势,以及VBA的历史、概念、编辑器、语法规则、数组、函数、文件目录与磁盘管理等VBA语言的基础。然后讲述三类程序的开发思路与语法,包括VBE专用程序、VB编写的DLL插件,以及工作簿中通用的加载宏程序。最后通过大型的Excel百宝箱插件的设计来实践程序开发理论,让读者对程序开发有进一步地认识,并实践本书所阐述的程序开发思想。 本书通过60%的篇幅讲述VBA的理论与语法基础,其中穿插了程序编写常规则及代码优化之道,让读者在编写代码解决日常工作的基础上,懂得如何提升代码的执行效率与通用性。另外还涉及了大量的自定义函数,以及脚本语言、FileSystemObject、DOS语言在VBA中的应用等。最后利用40%的篇幅讲述专业程序的理论基础与开发思想,以及通过多个大型的插件程序设计过程演示如何开发专业程序,以及对插件程序应如何防错及提速。 本书除讲解VBA的理论以外,重点探讨如何开发一个完整的大中型插件程序,在程序开发中应如何防止错误、提升效率,以及确保程序的通用性。书中的所有程序都有完善的防错机制,并通用于Excel 2003和Excel 2007。 前 言Excel是一款极优秀的表格设计与数据分析软件。特别是它所集成的VBA语言可以对Excel程序进行二次开发,大大拓展了Excel的功能,使Excel不再局限于设计表格,而具有了程序改造、插件开发与多任务批处理的功能。 本书目的Excel VBA是一门强化、改造Excel的程序语言。利用VBA通常可以完成两大类任务:解决自己的工作问题(强化)和开发通用软件(改造)。而市场上大量的VBA书籍大都属于前者,侧重讲述VBA基本语法及如何利用VBA处理一个具体的工作中的疑难问题,而对于开发通用型插件来延伸Excel的通用功能这方面则少有涉及。本书旨在弥补这种不足,在VBA理论的基础之外重点阐述如何开发插件,以适应一个群体的需求,而非仅仅处理个人的临时性问题。 本书除60%的篇幅普及VBA相关的理论知识外,还对如何提升程序的通用性、防错、提速等方面进行反复的阐述与论证,通过大量的实例传授程序的优化之道,及如何让程序在新旧版本的Excel中都能准确无误地执行。 另外,对于与VBA相关的其他边缘性知识体系也做了系统的介绍,例如脚本语言WScript、文件管理系统FileSystemObject、DOS磁盘管理系统与API函数在VBA中的应用。通过本书,读者可以对VBA有相当完善的认识与理解,并建立自己的程序开发思想,具备开发大中型专业程序的能力。 本书结构《Excel VBA程序开发自学宝典》是一本讲述VBA语言理论基础及开发VBA程序的书,全书共32章,分以下五个部分: 入门篇:VBA优势、功能与概念 进阶篇:VBA语法、过程与事件 登堂篇:VBA数组、窗体与控件 入室篇:文件管理、菜单、API、VBE与加载项 攀峰篇:开发通用插件 本书特点相对于同类书籍,本书在内容编排上具有以下特点: 1. 除对VBA语言的基础语法与对象操作解说外,重点展示如何开发一个独立完善的插件。而非仅仅局限在通过VBA解决一个临时性工作问题,通过本书,你完全可以实现编写自己的商业性软件,也可以开发一个完善的管理系统。 2. 本书程序非常注重通用性,所有程序代码都通用于Excel 2003和Excel 2007。不管用户使用的Excel 2003还是Excel 2007,都可以正常执行书中所有代码。 3. 本书对代码的执行速度有较多的笔墨叙述,而且总结了13条代码优化的规则。 4. 本书除VBA基本语法的教学外,另一个重点是如何开发插件。相对于普通的宏过程,开发插件的难度更高,通用性、防错性等要求都更严谨。本书通过对大型插件的程序思想、思路以及步骤进行详述,从而促使读者对VBA程序语言的理论有更深入的认识与运用。 5. 详述利用VB 6.0企业版开发具有更高安全性的COM加载项,读者可以借此开发自己的商业软件。 6. 除VBA外,本书还包括了WScript、FileSystemObject、DOS、API等语言的应用,将这些语言配合VBA可以扩充VBA的功能,完成更多的工作需求。 光盘文件本书的随书光盘包括书中所有实例文件的代码,以及作者精心开发的大型插件“Excel百宝箱7.0”源代码。 本书以Excel 2007的界面进行叙述,但随书光盘中的案例区分Excel 2003和Excel 2007两个版本。不管是Excel 2003用户还是Excel 2007用户都可以正常打开文件,完全不会因版本不同而给学习带来障碍,也不需要安装转换软件。 另外,本书还配备视频教材,包括开发提示性输入工具箱、开发公农历日期输入器、工作簿拆分及彩蛋设计、开发通用二级选单插件、监控单元格历史记录、设计计划任务向导、用VB开发自动化加载项等7集,同时配备了7集教材中所用到的代码。将视频教材与Excel文件搭配会有更好的学习效果。 适合读者群本书对VBA的基础理论有比较详尽的介绍,而对VBA的高级知识——数组、类模块、API、VBE组件操作与插件设计也有大量的理论阐述与案例演示。 本书适应的人群包括三类: 一是VBA入门者,可以通过本书系统地学习VBA知识; 二是已有VBA基础,但需要扩充知识面,让自己的程序具有更好的通用性、纠错性及更高的执行效率者,本书对程序的优化、纠错等方面进行了大量的论证; 三是VBA程序爱好者,可以编写过程来解决自己工作中的问题,但想开发更专业的商业软件者。本书对开发开源的商业软件进行了介绍,包括自动化加载项和COM加载项。 本书作者本书主要由作者罗刚君编写,作者是多个大型论坛的版主,有着丰富的VBA程序设计经验。Excel百宝箱是其标志性作品,包括100个增强性Excel插件工具。读者可以从光盘中获取该工具。 作者专门创办了一个售后服务论坛,读者对本书有任何疑问或者建议,都可以登录以下网址参与交流。 另外参与本书写作的还有龚丹、李妍妍、张理功、刘星辰、张文丽、郑亚梅、周礼英、刘小琴、杨斌、杨阳、黎玲、陈小春、张宏展、章兰新、吴旭东等,在此一并表示感谢。 编著者 2009-7-21 目 录第 01章 从Excel插件认识VBA1.1 从身份证号获取个人信息 1 1.1.1 内置公式法 1 1.1.2 自定义函数法 2 1.1.3 插件法 2 1.1.4 浅谈VBA优势 3 1.2 插件特点及如何发挥插件的优势 4 1.2.1 Excel插件的特点 4 1.2.2 Excel插件的优势与限制 6 1.2.3 如何发挥插件的优势 6 1.2.4 开发Excel插件的条件 6 1.2.5 本书架构 7 第 02章 VBA概述2.1 VBA的发展史与优缺点 8 2.1.1 宏与VBA 8 2.1.2 VBA历史与版本 9 2.1.3 VBA优、缺点 9 2.2 VBA能做什么 10 2.2.1 VBA用途 10 2.2.2 VBA主要用户 11 2.3 VBA的安全性 12 2.3.1 VBA安全性 12 2.3.2 了解安全性对话框 12 2.3.3 让自己的VBA程序畅通无阻 14 2.4 使用VBA帮助 16 2.4.1 利用帮助学习VBA语法 16 2.4.2 捕捉错误 17 第 03章 巧设VBA编辑器提升编程效率3.1 认识VBE组件 21 3.1.1 访问VBA开发环境 21 3.1.2 认识VBE的组件 22 3.1.3 VBE中不同代码窗口的作用 27 3.2 VBE中选项设置 29 3.2.1 编辑器选项 29 3.2.2 编辑器格式选项 33 3.2.3 通用选项 33 3.2.4 VBA代码保护 34 第 04章 VBA基本概念4.1 理解VBA的对象、属性与方法 36 4.1.1 什么是对象 36 4.1.2 如何理解属性 37 4.1.3 如何理解方法 38 4.1.4 判断对象的属性与方法 38 4.2 认识VBA的事件 39 4.2.1 什么是事件 39 4.2.2 事件的分类及其用途 39 4.3 VBA的运算符 40 4.3.1 VBA中运算符的分类 40 4.3.2 算术运算符 40 4.3.3 比较运算符 41 4.3.4 逻辑运算符 41 4.3.5 运算符的优先顺序 43 4.4 简单的字符处理函数 43 4.4.1 字符串处理函数功能介绍 44 4.4.2 StrComp:字符相似比较 44 4.4.3 Strconv:字符串类型转换 45 4.4.4 Format:格式化字符串 46 4.4.5 LCase/ UCase:大小写转换 46 4.4.6 String / Space:重复字符 46 4.4.7 Lset / Rset:字符串往左/右对齐 47 4.4.8 Instr:返回字符出现位置 47 4.4.9 Left/Mid/Right:从左、中、右取值 48 4.4.10 LTrim/RTrim/ Trim:去除空格 48 4.4.11 Like:字符串相似度比较 49 第 05章 VBA数据类型与变量、常量5.1 数据类型 50 5.1.1 为什么要区分数据类型 50 5.1.2 认识VBA的数据类型 50 5.1.3 数据类型的声明与转换 52 5.2 常量与变量 54 5.2.1 常量的定义与用途 54 5.2.2 常量的声明方式 54 5.2.3 常量的命名规则 55 5.2.4 变量的定义与用途 56 5.2.5 变量的类型与声明 56 5.2.6 区分静态变量与动态变量 57 5.2.7 变量的作用域与生命周期 58 5.2.8 认识对象变量 60 5.2.9 认识数组变量 61 第 06章 认识VBA过程及开发自定义函数6.1 认识过程 62 6.1.1 过程的分类与调用方式 62 6.1.2 插入过程的方式 64 6.1.3 过程的命名规则 66 6.2 编写Sub过程 66 6.2.1 Sub过程的语法解析 66 6.2.2 Sub过程的执行流程 68 6.2.3 过程的递归 72 6.2.4 Sub过程实例演示 73 6.3 认识Function过程 74 6.3.1 Function过程的特点 74 6.3.2 Function的语法解析 74 6.3.3 调用Function过程 75 6.4 关于过程的参数 76 6.4.1 Sub过程的参数及应用 76 6.4.2 Function过程的参数 78 6.5 开发自定义函数 79 6.5.1 开发不带参数的Function过程 79 6.5.2 开发带有一个参数的Function过程 80 6.5.3 开发带有两个参数的Function过程 83 6.5.4 开发带有两个可选参数的Function过程 84 6.5.5 开发带有不确定参数的Function过程 86 6.5.6 开发具有三个参数其中第三个为可选的Function过程 89 6.6 编写函数帮助 91 6.7 总结 96 第 07章 VBA的对象模型与对象表示法7.1 VBA中的对象及结构 97 7.1.1 关于对象的相关概念 97 7.1.2 对象与对象集合 98 7.1.3 对象的层次:父对象与子对象 99 7.1.4 认识Excel所有对象 100 7.2 对象的表示法 101 7.2.1 对象的完整指定方式与简写 101 7.2.2 利用定义名称获取对象 101 7.2.3 利用集合索引号获取对象 102 7.2.4 活动对象的简化引用 103 7.2.5 利用With语句简化对象引用 104 7.2.6 事件中的Me关键字 104 7.3 单元格的各种引用方式 106 7.3.1 Range("A1")方式引用单元格 106 7.3.2 Cells(1,1)方式引用单元格 109 7.3.3 [a1]方式引用单元格 110 7.3.4 Range("A1")、Cells(1,1)与[a1]比较 111 7.3.5 Selection与ActiveCell:当前选区与活动单元格 112 7.3.6 Names:利用名称引用单元格或区域 113 7.3.7 UsedRange与CurrentRegion 115 7.3.8 SpecialCells:按条件引用区域 118 7.3.9 CurrentArray:引用数组区域 120 7.3.10 Resize:重置区域大小 120 7.3.11 Offset:根据偏移量引用区域 122 7.3.12 Union:单元格的合集 124 7.3.13 Intersect:单元格、区域的交集 126 7.3.14 End:引用源区域的区域尾端的单元格 128 第 08章 自动宏与Excel事件8.1 让宏自动执行 132 8.1.1 Auto自动宏 132 8.1.2 工作簿事件中的自动宏 133 8.1.3 利用鼠标移动事件执行自动宏 133 8.2 详谈VBA的事件 134 8.2.1 事件的定义与分类 135 8.2.2 事件的层次与执行顺序 135 8.2.3 事件的禁用与启用 137 8.2.4 事件代码的录入方式 139 8.3 VBA有哪些事件 140 8.3.1 应用程序级别事件介绍 140 8.3.2 工作簿事件介绍 141 8.3.3 工作表事件介绍 142 8.3.4 事件的特例 142 第 09章 VBA程序常规则9.1 代码编写规则 144 9.1.1 对代码添加注释 144 9.1.2 长代码分行 147 9.1.3 代码缩进对齐 149 9.1.4 声明有意义的变量名称 150 9.1.5 IF...end if类配对语句的录入方式 151 9.1.6 录入事件代码的方式 151 9.1.7 借用自动列出程序录入代码 151 9.1.8 善用公共变量 152 9.1.9 将较大的过程分为多个再调用 153 9.1.10 减少过程参数 153 9.1.11 兼容Excel 2007和Excel 2003 153 9.2 优化代码 154 9.2.1 强制声明变量 154 9.2.2 善用常量 154 9.2.3 关闭屏幕更新 155 9.2.4 利用With减少对象读取次数 155 9.2.5 利用变量减少对象读取次数 157 9.2.6 善用带$的字符串处理函数 157 9.2.7 善用循环中的步长减少循环次数 157 9.2.8 利用数组代替单元格对象 158 9.2.9 不重复调用自定义函数时不使用自定义函数 159 9.2.10 将不改变值或者属性的语句放到循环语句外 160 9.2.11 利用长度计算判断单元格是否非空 160 9.2.12 尽量调用内置功能 161 9.2.13 利用对象循环替代单元格循环 161 第 10章 常用语法剖析10.1 输入、输出语句 163 10.1.1 Msgbox函数的功能及作用 163 10.1.2 Msgbox函数的语法 164 10.1.3 Msgbox函数的限制 168 10.1.4 利用WScript突破Msgbox限制 169 10.1.5 Debug.print 170 10.1.6 Inputbox函数的功能与作用 170 10.1.7 Inputbox函数的语法 171 10.1.8 借用Inputbox函数生成月历 173 10.1.9 Inputbox函数的限制 175 10.1.10 利用Application.Inputbox方法替代Inputbox函数 175 10.1.11 Application.Inputbox语法详解 176 10.2 条件判断语句 179 10.2.1 IIF函数的语法与应用 179 10.2.2 IIF函数的限制 182 10.2.3 IF...Then...语句的语法详解 183 10.2.4 IF...then...应用案例 183 10.2.5 IF...Then...Else...语法与应用 185 10.2.6 条件语句的嵌套应用 186 10.2.7 Select Case语法详解 189 10.2.8 Select Case与IF...Then...Else之比较 192 10.2.9 借用Choose函数简化条件选择 194 10.3 循环语句 196 10.3.1 For Next语句 196 10.3.2 利用循环获取工作表目录 202 10.3.3 For Each Next语法详解 205 10.3.4 利用循环选择区域中所有负数 206 10.3.5 利用循环统一所有图片高度并对齐单元格 207 10.3.6 Do Loop语法详解 209 10.3.7 在工作表中循环获取所有字体 211 10.3.8 计算得分累加到1000时的月份 213 10.3.9 利用循环产生文字动画 214 10.4 With语句 215 10.4.1 With语句的用途与语法 215 10.4.2 With语句实例 218 10.4.3 With语句常见错误分析 220 10.5 错误处理语句 221 10.5.1 错误类型与原因 222 10.5.2 Err对象及其属性、方法 222 10.5.3 认识Error函数 223 10.5.4 罗列错误代码及含义 224 10.5.5 VBA的错误处理机制 225 10.5.6 错误处理:错误三次则退出程序 231 10.5.7 错误处理:多功能选区统计 232 10.5.8 错误处理的作用域 234 10.5.9 GoSub...Return语句 236 10.5.10 开发错误处理函数 238 第 11章 Excel常见对象的应用技巧11.1 Application应用案例 241 11.1.1 选区拼写检查 241 11.1.2 调用工作表函数 242 11.1.3 切换鼠标形状 243 11.1.4 计算表达式 244 11.1.5 禁止程序运行时弹出警告框 245 11.1.6 调整计算方式 246 11.1.7 罗列最近使用过的文件 247 11.1.8 查找并打开文件 248 11.1.9 建立文件目录 248 11.1.10 定制程序标题 250 11.1.11 打开指定应用程序 250 11.1.12 新建一个带有7个工作表的工作簿 251 11.1.13 在指定时间提示行程安排 252 11.1.14 模拟键盘快捷键 253 11.1.15 为过程指定快捷键 255 11.1.16 合并区域 256 11.1.17 获取多区域的交集 258 11.1.18 中断程序到一定时间后再继续 259 11.1.19 调用内置对话框 260 11.1.20 滚动显示Excel状态栏信息 261 11.1.21 添加自定义序列 261 11.1.22 添加名称 264 11.1.23 将自定义数标记为易失性函数 264 11.1.24 选定任意工作簿中的任意区域 265 11.1.25 设置应用程序的可见性 266 11.1.26 设置批注的显示方式 267 11.2 Range对象应用案例 268 11.2.1 清除单元格格式 268 11.2.2 复制单元格数据 270 11.2.3 将区域中的数据合并到一个单元格中 272 11.2.4 多工作表数据合并且添加边框 273 11.2.5 让高度与宽度自动适应数据 275 11.2.6 在区域中精确查找 275 11.2.7 替换不规则货品名称 278 11.2.8 将公式添加到批注 278 11.2.9 填充工作日 279 11.2.10 对区域添加四周边框 281 11.2.11 多区域合并 282 11.2.12 对小于60的成绩加虚框 283 11.2.13 反向选择单元格 285 11.2.14 插入图片并调整为选区大小 287 11.2.15 选择当前表已用区域的奇/偶数行 289 11.2.16 删除当前表的空行 290 11.2.17 删除重复值 291 11.2.18 将选区导出为图片 293 11.2.19 删除超链接 295 11.2.20 选择本表所有合并单元格 296 11.2.21 朗读选区字符 296 11.2.22 隐藏所有公式结果为错误的单元格 297 11.2.23 快速添加日期批注且自动缩放 298 11.2.24 以逗号为分隔符将文本分列 299 11.2.25 生成二级下拉选单 300 11.2.26 将产量批量转换成下拉菜单 302 11.2.27 设计一个简单放大镜 303 11.3 Names对象应用案例 305 11.3.1 罗列当前工作簿的所有名称 305 11.3.2 利用名称引用其他表数据 305 11.3.3 隐藏当前工作簿包含“A”的所有名称 306 11.3.4 借用名称将区域数据引用到组合框 307 11.3.5 设计三级下拉菜单 308 11.4 Comments 对象应用案例 311 11.4.1 批量将数据导入批注 311 11.4.2 在所有批注末尾添加指定日期 313 11.4.3 为批注设置图片背景 314 11.4.4 添加个性化批注 315 11.4.5 批量修改当前表批注的外观 318 11.4.6 替换所有批注中的“计算机”为“电脑” 319 11.5 Sheets对象应用案例 320 11.5.1 添加汇总工作表 320 11.5.2 批量添加工作表且以本月日期命名 321 11.5.3 迅速产生样表 322 11.5.4 将当前表移到其他工作簿 324 11.5.5 除“目录”工作表外隐藏其他所有工作表 324 11.5.6 分别计算工作表数量和图表数量 325 11.5.7 建立带链接功能的工作表目录且通过快捷键返回目录 326 11.5.8 对当前表已用区域设置背景图片 328 11.5.9 批量命名工作表 329 11.5.10 隐藏所有工作表非使用区 330 11.6 Workbooks对象应用案例 332 11.6.1 新建工作簿且对其命名为今日期 332 11.6.2 将当前工作簿另存且加密 333 11.6.3 工作簿拆分 335 11.6.4 批量打开文件 336 11.6.5 导入文本文件到当前工作簿 338 11.6.6 保存并关闭本工作簿以外的工作簿 339 11.6.7 每30分钟备份工作簿 340 11.6.8 将当前工作簿备份到D盘 342 11.6.9 清除所有打开工作簿的密码 342 11.6.10 获取工作簿建立时间和最后一次保存时间 343 11.6.11 记录文件打开次数 344 11.6.12 切换图形对象隐藏与显示 345 11.6.13 设计一个查看一次即自动删除的工作簿 346 11.6.14 禁止插入新工作表 347 11.6.15 不打开工作簿而提取数据 348 11.6.16 将指定文件夹下每个工作簿中的三月生产表合并到一个工作簿 350 11.6.17 建立指定文件夹下所有工作簿目录和工作表目录 353 11.6.18 断开与其他工作簿的数据链接 355 11.7 Windows 对象案例 355 11.7.1 获取窗口列表 355 11.7.2 确保随时打开工作簿都窗口最大化 356 11.7.3 切换当前窗口的网格线、滚动条、标题与工作表标签 357 11.7.4 自由滚动窗口方便阅读工作表数据 357 11.7.5 以当前单元格为基准拆分窗格 360 11.7.6 计算活动单元格左边距 360 11.7.7 计算活动单元格的屏幕位置 361 11.7.8 三种方式不显示零值 362 第 12章 Excel的事件应用案例12.1 应用程序事件案例 364 12.1.1 新工作簿环境设计 364 12.1.2 打开任意工作簿时全自动备份 365 12.2 工作簿事件案例 366 12.2.1 新建工作表时自动设置页眉 366 12.2.2 禁止缩小工作簿窗口 367 12.2.3 未汇总则禁止关闭工作簿 368 12.2.4 新建工作表时以当前时间命名 368 12.2.5 关闭工作簿前删除多余工作表 369 12.2.6 月底以外时间禁止打印总表 369 12.2.7 调整窗口大小时报告可见区域行列数 370 12.2.8 禁止切换到其他工作簿 371 12.3 工作表事件案例 371 12.3.1 选择单元格时在状态栏提示地址 371 12.3.2 快速录入出勤表 372 12.3.3 建立只能使用一次的超链接 373 12.3.4 让A1的日期单击更新 374 12.3.5 在状态栏显示选区的字母、数字、汉字个数 374 12.3.6 实时监控单元格每一次的编辑数据与时间 375 12.3.7 利用数字简化公司名输入 376 12.3.8 录入数据时自动跳过带公式的单元格 377 12.3.9 在工作表的标题行禁用左、右键 378 12.3.10 对选择区域进行背景着色 379 12.3.11 适用于指定区域的自动更正 380 12.4 ActiveX控件事件案例 381 12.4.1 鼠标移过时切换按钮颜色 381 12.4.2 鼠标移动录入姓名 382 12.4.3 鼠标移过组合框时加载图片 383 12.4.4 鼠标移过列表框时输入品名与单价 384 第 13章 数组基础13.1 数组基础 386 13.1.1 数组概念 386 13.1.2 数据的维数 387 13.1.3 利用索引号获取数组中的元素 388 13.1.4 声明数组与赋值 389 13.1.5 静态数组与动态数组 390 13.2 内置数组函数 391 13.2.1 Array:创建一个数组 391 13.2.2 Isarray:判断是否是数组 392 13.2.3 Index:从数组中取值 392 13.2.4 Transpose:转置数组 392 13.2.5 LBound / Ubound:获取数组的上下界 395 13.2.6 Split/ Join:文本与数组转换 395 13.2.7 Filter:数组的筛选 396 第 14章 开发数组函数与数组应用14.1 自定义数组函数 398 14.1.1 定义数组函数要点 398 14.1.2 获取工作表目录 398 14.1.3 星期序列 399 14.1.4 获取区域的唯一值 400 14.2 数组应用案例 401 14.2.1 将按姓名排列的纵向学员表转置为按班级横向排列 401 14.2.2 多表学员资料查询 402 14.2.3 自定义百家姓序列 404 14.2.4 查询两列相同项 405 14.2.5 获取文件夹下所有文件详细信息 406 14.2.6 获取当前表所有批注 407 第 15章 认识窗体与控件15.1 UserForm简介 409 15.1.1 窗体与控件的用途 409 15.1.2 插入窗体与控件的方法 409 15.1.3 使用Excel 5.0对话框 410 15.2 窗体控件一览 410 15.2.1 标签 410 15.2.2 文字框 411 15.2.3 命令按钮 411 15.2.4 复合框 411 15.2.5 列表框 411 15.2.6 复选框 411 15.2.7 单选框 411 15.2.8 分组框 411 15.2.9 切换按钮 412 15.2.10 多页控件 412 15.2.11 滚动条 412 15.2.12 图像 412 15.2.13 RefEdit 412 15.2.14 附件控件 412 15.3 设置控件属性 413 15.3.1 调整窗体控件位置与大小 413 15.3.2 设置控件的顺序 413 15.3.3 共同属性与非共同属性 413 15.3.4 设置颜色属性 414 15.3.5 设置宽与高属性 414 15.3.6 设置Picture属性 414 15.3.7 设置光标属性 415 15.3.8 设置复合框 415 15.3.9 设置Flash动画 416 15.4 窗体与控件的事件 416 15.4.1 窗体事件介绍 416 15.4.2 显示窗体时随机加载背景图 417 15.4.3 初始化窗体时填充列表框下拉列表 417 15.4.4 双击时关闭窗体 418 15.4.5 窗体永远显示在上左角 418 15.4.6 按比例缩放窗体及滚动窗体 419 15.4.7 控件事件介绍 421 15.4.8 在窗体中建立超链接 421 15.4.9 鼠标移过更新列表框数据 422 15.4.10 让输入学号的文字框仅能录入6位数字 423 15.4.11 鼠标拖动调整文字框大小 424 15.4.12 为窗体中所有控件设置帮助 426 第 16章 窗体控件运用案例16.1 窗体运用 428 16.1.1 设计登录界面 428 16.1.2 权限认证窗口 429 16.1.3 设计计划任务向导 431 16.1.4 设计动画帮助 434 16.1.5 用窗体浏览图片 434 16.2 窗体与表格的交互 436 16.2.1 设计多表录入面板 436 16.2.2 多条件高级查询 438 16.2.3 分类汇总捐赠额并按需求导出 440 16.2.4 输入长地名时逐一提示 441 第 17章 表单控件与ActiveX控件17.1 表单控件 444 17.1.1 控件的调出方式 444 17.1.2 表单控件的功能 444 17.1.3 表单工具的优缺点 444 17.1.4 案例:批量插入单选框并分组 445 17.2 ActiveX控件 446 17.2.1 ActiveX控件功能 446 17.2.2 利用列表框突破数据有效性的单列限制 446 17.2.3 在工作表中播放Flash动画 448 17.2.4 在工作表左上角播放GIF动画 448 17.2.5 在复合框显示数据源的唯一值 449 第 18章 文件管理18.1 认识文件处理内置命令 451 18.1.1 打开与关闭文件 451 18.1.2 读取文本文件内容 452 18.1.3 复制文件 453 18.1.4 获取文件最后修改时间 453 18.1.5 计算文件大小 454 18.1.6 获取文件属性及设置文件属性 454 18.1.7 删除文件 454 18.1.8 创建与删除文件夹 455 18.1.9 对文件重命名 455 18.1.10 判断文件及目录是否存在 455 18.2 文件操作案例 456 18.2.1 批量建立文件夹 456 18.2.2 获取D盘根目录中大于1MB的文件列表 456 18.2.3 将E盘根目录中所有隐藏的文件显示出来 457 18.2.4 备份文件夹中的Excel文件 457 18.2.5 限制文件的最晚打开时间 458 18.2.6 删除文件夹中2年没有用过的文件 458 18.2.7 文件批量重命名 459 第 19章 FSO、WScript与DOS在VBA中的应用19.1 认识FSO 460 19.1.1 FSO的用途与调用方式 460 19.1.2 FSO的对象 461 19.1.3 FSO常用对象的方法与属性 461 19.2 用FSO处理文件与目录 463 19.2.1 获取文件夹相关信息 463 19.2.2 删除D盘中大小为0的文件夹 464 19.2.3 获取C盘中所有文件列表 464 19.3 关于脚本语言WScript 464 19.3.1 关于脚本语言 464 19.3.2 WScript的方法与属性 465 19.3.3 WScript.Shell的使用方法 465 19.4 脚本语言应用案例 466 19.4.1 在桌面建立当前工作簿的快捷方式 466 19.4.2 将Excel 2003和Excel 2007添加到右键“发送到”菜单 466 19.4.3 显示桌面所有文件列表 467 19.4.4 关闭数字键及打开大写锁定键 468 19.4.5 提取选择的文件夹中所有文件的信息 468 19.4.6 打开网上邻居 469 19.4.7 在收藏夹中添加网址 469 19.5 VBA中调用DOS 470 19.6 DOS在VBA中的应用 471 19.6.1 获取CDE三个磁盘根目录中的目录列表 471 19.6.2 获取D盘中所有Excel文件 471 19.6.3 获取IP地址与网关设置 472 第 20章 磁盘与系统信息管理20.1 获取磁盘信息 473 20.1.1 CreateObject 配合FSO获取磁盘信息 473 20.1.2 GetObject配合WMI获取磁盘信息 474 20.1.3 API法 474 20.2 获取系统信息 475 20.2.1 罗列当前系统进程 475 20.2.2 获取硬盘型号与容量 476 20.2.3 获取分辨率 476 第 21章 认识Excel的内置命令栏对象21.1 关于内置命令栏 478 21.1.1 Excel对命令栏的处理方式 478 21.1.2 内置命令栏的分类 478 21.1.3 手工定义工具栏按钮 478 21.2 了解CommandBars对象 479 21.2.1 CommandBar的常用属性 479 21.2.2 CommandBar的方法 479 21.2.3 获取CommandBars子对象的名称与类型 479 21.2.4 获取及保存内置图标 480 第 22章 创建新工具栏22.1 创建与删除工具栏 482 22.1.1 建立工具按钮基本语法 482 22.1.2 自定义新工具栏案例:工作表目录 484 22.2 弹出式工具栏 485 22.2.1 创建弹出式工具栏语法结构 485 22.2.2 创建一个弹出式工具栏 486 22.2.3 创建三级工具栏 486 22.3 特殊的工具栏 487 22.3.1 创建可读写的弹出式工具栏 487 22.3.2 利用工具栏文字框查找数据 488 第 23章 创建新菜单栏23.1 菜单基础 490 23.1.1 菜单的分类 490 23.1.2 创建菜单基本语法 490 23.1.3 设计菜单注意事项 491 23.2 创建新菜单案例 491 23.2.1 创建关机与重启两个工作表菜单 491 23.2.2 由用户定义子菜单容器 492 23.3 设计感应菜单 493 23.3.1 在指定工作表才可用的菜单 493 23.3.2 在指定区域才可用的菜单 493 23.3.3 选择图表才出现的菜单 494 第 24章 操作快捷菜单24.1 认识快捷菜单 495 24.1.1 快捷菜单的分类 495 24.1.2 获取Excel所有快捷菜单 495 24.1.3 Excel 2003和Excel 2007中快捷菜单的差异 496 24.2 定制快捷菜单 496 24.2.1 创建单元格右键子菜单 496 24.2.2 设计左键快捷菜单 497 24.2.3 打造最强大的单元格右键菜单 498 24.2.4 在窗体中显示快捷菜单 500 第 25章 认识类和类模块25.1 类模块基础 502 25.1.1 类模块应用范围 502 25.1.2 类模块事件 502 25.1.3 类模块与变量 503 25.2 类的应用 503 25.2.1 程序级事件:在标题处显示工作簿路径 503 25.2.2 对所有工作表的选区背景着色 505 25.2.3 为窗体的按钮批量设置事件过程 506 25.2.4 开发一个颜色拾取器 507 第 26章 API的基本应用26.1 API在窗体设计中的应用 509 26.1.1 按任意地方都可拖动的窗体 509 26.1.2 设计半圆形动画窗体 510 26.1.3 资料录入完整鼠标才可能离开窗体的范围限制 511 26.1.4 拖动窗体随意修改窗体大小 513 26.1.5 设计百叶窗式动态窗体 514 26.1.6 在窗体中展示文字动画 515 26.2 API的其他应用 516 26.2.1 发送邮件 516 26.2.2 仿Photoshop设计彩蛋 517 26.2.3 让ActiveX控件在非设计模式下也能移动 518 26.2.4 将文件删除并存入回收站 519 第 27章 VBA与注册表27.1 VBA对注册表的控制方式 521 27.1.1 什么是注册表 521 27.1.2 VBA操作注册表的方法 522 27.1.3 VBA操作注册表的优缺点 523 27.1.4 借用脚本实现注册表的自由控制 523 27.2 注册表的应用 523 27.2.1 记录当前工作簿最后一次打开时间 524 27.2.2 限制工作簿使用次数 524 27.2.3 让零值显示设置适用所有工作表 525 27.2.4 禁止使用U盘 526 第 28章 VBE的对象模型与对象控制28.1 准备工作 527 28.1.1 设置Excel选项 527 28.1.2 引用对象库 528 28.2 认识VBE的对象模型 528 28.2.1 VBE对象模型的层次结构 528 28.2.2 VBE对象介绍 529 28.2.3 如何引用VBE对象 530 28.2.4 罗列当前工程中所有组件及其类型 530 28.3 VBE对象的控制 531 28.3.1 罗列指定模块中所有过程的名称 531 28.3.2 罗列所有模块代码总行数 533 28.3.3 利用代码添加模块 534 28.3.4 用代码添加工作簿事件代码 534 28.3.5 创建ActiveX控件且编写单击事件代码 535 28.3.6 删除当前工作簿所有代码及窗体、模块组件 536 28.3.7 判断工作簿是否有宏代码 537 28.3.8 全自动生成窗体、控件及事件代码 538 第 29章 程序开发思想29.1 开发人员自我定位 540 29.1.1 区别开发人员与应用人员 540 29.1.2 开发人员基本条件 540 29.2 开发插件与普通VBA编程的区别 541 29.3 如何开发最佳应用程序 541 29.3.1 罗列应用程序需具备的功能 541 29.3.2 与终端用户交流 542 29.3.3 规划程序结构 542 29.3.4 设定友好的界面 542 29.3.5 提升程序通用性 542 29.3.6 注重程序效率 543 29.3.7 提供防错机制 543 第 30章 开发VBE插件30.1 菜单定制基础 544 30.1.1 认识命令栏对象 544 30.1.2 创建命令栏基本语法 544 30.1.3 罗列VBE中所有菜单与子菜单 545 30.1.4 创建菜工具栏以统计模块中过程相关信息 546 30.2 开发VBA插件工具箱 547 30.2.1 开发插件的准备工作 548 30.2.2 罗列插件功能 548 30.2.3 开发代码编号工具 548 30.2.4 开发代码美化工具 550 30.2.5 开发代码导出工具 552 30.2.6 开发代码清除工具 553 30.2.7 开发代码减肥工具 554 30.2.8 编写菜单 556 30.2.9 发布插件 558 第 31章 开发xlam与COM加载项插件31.1 关于加载宏 560 31.1.1 加载宏的特点 560 31.1.2 为什么使用加载宏 561 31.1.3 加载宏管理器 561 31.1.4 内置加载宏的加载与使用 562 31.1.5 安装与卸载自定义加载宏 562 31.2 关于加载项 562 31.2.1 加载项的分类 563 31.2.2 加载项的开发方式 563 31.2.3 两种加载项的安装方式 563 31.3 准备编写XLAM加载宏 565 31.3.1 认识Excel工作簿的格式 565 31.3.2 生成加载宏的两种方法 566 31.4 开发集公农历于一体的日期输入器 566 31.4.1 确认程序需具备的功能 566 31.4.2 定义公历转农历的函数 566 31.4.3 设计日期输入器窗体 567 31.4.4 编写窗体初始化代码 568 31.4.5 实现输入器与工作表交互 570 31.4.6 设计帮助 572 31.4.7 定制菜单 575 31.4.8 测试并发布插件 575 31.5 利用VB 6.0编写COM加载项 576 31.5.1 COM加载项开发基础 576 31.5.2 安装VB 6.0企业版 576 31.5.3 开发COM加载项基本步骤 577 31.6 开发重复值控制器 579 31.6.1 确认插件所需功能 580 31.6.2 建立VB工程 580 31.6.3 编写菜单代码及响应事件 580 31.6.4 编写重复值控制主程序 581 31.6.5 发布加载项并安装调试 582 第 32章 开发“Excel百宝箱”(以下内容见光盘) 32.1 程序规划 584 32.1.1 了解终端用户需求 584 32.1.2 确认插件功能表 585 32.1.3 规划插件结构 585 32.2 财务工具箱 586 32.2.1 制作工资条头 586 32.2.2 根据工资计算所需钞票张数 588 32.2.3 小写金额转大写 591 32.2.4 工作簿与工作表合并 592 32.2.5 工作表拆分 602 32.2.6 工作簿拆分 605 32.2.7 复选框工具 609 32.2.8 文本与数据转换 612 32.3 合并工具箱 613 32.3.1 合并数据并居中及其还原 614 32.3.2 合并数据并复制 615 32.3.3 取消区域合并填充原合并值 617 32.3.4 可还原的合并居中 618 32.3.5 合并列中相同数据及还原 620 32.4 批注工具箱 621 32.4.1 批注管理器 622 32.4.2 添加个性化批注 625 32.4.3 建立图片批注 627 32.4.4 批量添加右列内容为批注 628 32.4.5 批量导入同名照片到批注 629 32.5 图片工具箱 631 32.5.1 将选区转换成图片 631 32.5.2 批量导入图片 633 32.5.3 批量导出图片到硬盘 635 32.6 开发函数 637 32.6.1 开发自定义函数 637 32.6.2 设计函数帮助 656 32.7 定制百宝箱帮助 659 32.7.1 定制百宝箱帮助 659 32.7.2 信息反馈 664 32.8 定制多级菜单并发布 666 32.8.1 定制菜单 666 32.8.2 发布 667 32.8.3 小结 668 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。