《Excel VBA程序开发自学宝典》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:罗刚君编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121095856
  • 页数:583 页
图书介绍:本书从一个专业程序(VBA插件)的应用开始,逐步分析VBA程序的的优势,以及VBA的历史、概念、编辑器、语法规则、数组、函数、文件目录与磁盘管理等VBA语言的基础。然后讲述三类程序的开发思路与语法,包括VBE专用程序、VB编写的DLL插件,以及工作簿中通用的加载宏程序。最后通过大型的Excel百宝箱插件的设计来实践与提高程序开发理论,让读者对程序开发有进一步地认识,并实践本书所阐述的程序开发思想。

第01章从Excel插件认识VBA 1

1.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概述 8

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编辑器提升编程效率 17

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基本概念 36

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数据类型与变量、常量 49

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过程及开发自定义函数 61

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的对象模型与对象表示法 96

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事件 132

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程序常规则 144

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章常用语法剖析 163

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常见对象的应用技巧 238

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的事件应用案例 364

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章数组基础 386

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章 开发数组函数与数组应用 396

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章 认识窗体与控件 409

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章 窗体控件运用案例 426

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控件 441

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章 文件管理 451

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中的应用 459

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将Excel2003和Excel2007添加到右键“发送到”菜单 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章磁盘与系统信息管理 473

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的内置命令栏对象 476

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章 创建新工具栏 482

22.1创建与删除工具栏 482

22.1.1建立工具按钮基本语法 482

22.1.2自定义新工具栏案例:工作表目录 484

22.2弹出式工具栏 485

22.21创建弹出式工具栏语法结构 485

22.2.2创建一个弹出式工具栏 486

22.2.3创建三级工具栏 486

22.3特殊的工具栏 487

22.3.1创建可读写的弹出式工具栏 487

22.3.2利用工具栏文字框查找数据 488

第23章创建新菜单栏 490

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章操作快捷菜单 495

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章认识类和类模块 502

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的基本应用 509

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与注册表 521

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的对象模型与对象控制 526

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章程序开发思想 540

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插件 544

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加载项插件 558

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百宝箱”(以下内容见光盘) 582

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