出版时间:2013-5 出版社:电子工业出版社 作者:伍云辉
内容概要
本书适用于多个版本,Excel 2000/2003/2007/2010/2013版本的用户,都可以通过本书学习VBA。本书包括8部分共35章,分别介绍了Excel应用程序设计概述、VBA程序设计基础、Excel对象模型、用户界面设计、应用程序扩展、Excel应用程序的调试与优化等方面的内容,最后综合应用前面的知识设计了两个经典实例。本书在涉及大段源代码的同时,给出了详细的流程图,让读者先看清流程,做到心中有数后,再逐行阅读代码。另外,本书配套DVD光盘中包括13个小时的精彩教学视频,以及书中案例所涉及的源文件及素材,方便读者学习。
书籍目录
第1部分Excel应用程序设计简介 第1章VBA与Excel应用程序2 1.1VBA概述2 1.1.1Basic语言2 1.1.2VisualBasic简介2 1.1.3VBA3 1.2Excel应用程序简介3 1.3ExcelVBA应用程序结构4 1.3.1ExcelVBA应用程序的构成4 1.3.2事件驱动4 1.4Excel应用程序开发流程5 1.4.1需求分析5 1.4.2界面设计5 1.4.3代码设计6 1.4.4帮助系统6 1.4.5系统测试6 1.4.6应用程序发布7 第2章使用Excel的宏8 2.1什么是宏8 2.2创建宏8 2.2.1显示“开发工具”选项卡8 2.2.2录制宏10 2.2.3使用VisualBasic创建宏11 2.3运行宏12 2.3.1使用“宏”对话框运行宏12 2.3.2使用键盘快捷键运行宏13 2.3.3使用快速工具栏运行宏13 2.3.4通过按钮运行宏14 2.3.5通过图形对象运行宏15 2.3.6打开工作簿自动运行宏16 2.3.7在VBE环境中运行宏17 2.4编辑宏18 2.4.1分析宏代码18 2.4.2清理宏代码19 2.4.3编辑宏的步骤20 2.5宏的安全性23 2.5.1宏安全性概述23 2.5.2打开包含宏的文档24 2.5.3数字签名简介24 第3章VBE开发环境28 3.1VBE概述28 3.1.1VBE简介28 3.1.2VBE的组成29 3.2工程资源管理器31 3.2.1工程资源管理器的组成31 3.2.2管理工程资源31 3.3“属性”窗口33 3.3.1属性窗口的组成33 3.3.2设置属性的方法34 3.4“代码”窗口35 3.4.1代码窗口的组成35 3.4.2编辑代码36 3.4.3编辑代码快捷助手37 3.5定制VBE环境40 3.5.1设置“编辑器”选项卡40 3.5.2设置“编辑器格式”选项卡41 3.5.3设置“通用”选项卡41 3.5.4设置“可连接的”选项卡41 第4章第1个VBA程序42 4.1应用程序分析42 4.2设计窗体42 4.3编写VBA代码44 4.3.1编写窗体代码44 4.3.2编写模块代码46 4.4测试VBA程序47 第2部分VBA程序设计基础 第5章VBA基本概念50 5.1VBA的数据类型50 5.1.1基本数据类型50 5.1.2枚举类型52 5.1.3用户定义数据类型53 5.2常量和变量53 5.2.1标识符命名规则53 5.2.2常量54 5.2.3变量55 5.2.4强制声明变量56 5.2.5变量的作用域57 5.2.6变量的存活期58 5.3运算符和表达式58 5.3.1算术运算符59 5.3.2比较运算符59 5.3.3连接运算符59 5.3.4逻辑运算符60 5.3.5表达式60 第6章VBA常用语句61 6.1语句61 6.1.1自动格式化61 6.1.2复合语句与语句断行61 6.2赋值语句和注释语句62 6.2.1赋值语句62 6.2.2注释语句63 6.3数据输入/输出63 6.3.1数据输入——InputBox函数63 6.3.2数据输出——Print方法64 6.3.3数据输出——MsgBox函数65 6.4程序暂停和退出语句67 6.4.1暂停语句67 6.4.2退出语句68 第7章程序控制结构69 7.1算法的概念及表示69 7.1.1算法简介69 7.1.2流程图69 7.2程序结构概述70 7.3分支程序结构71 7.3.1If 7.3.2If 7.3.3IIf函数72 7.3.4If 7.3.5SelectCase语句74 7.3.6分支结构的嵌套76 7.4循环程序结构77 7.4.1Do 7.4.2While 7.4.3For 7.4.4循环的嵌套82 7.4.5Goto语句83 第8章数组85 8.1数组简介85 8.2声明数组85 8.2.1定义一维数组85 8.2.2定义二维数组87 8.2.3默认数组87 8.3动态数组88 8.4数组的基本操作89 8.4.1数组的初始化89 8.4.2数组元素的复制90 8.4.3数组的清除91 8.4.4数组函数92 第9章Sub过程93 9.1过程的分类93 9.2定义Sub过程94 9.2.1添加过程94 9.2.2使用代码创建Sub过程95 9.3调用Sub过程96 9.3.1使用VBA代码调用Sub过程96 9.3.2以宏方式调用Sub过程97 9.4传递参数97 9.4.1形参与实参的结合98 9.4.2传地址98 9.4.3传值99 9.4.4传递数组参数100 9.5可选参数和可变参数100 9.5.1可选参数101 9.5.2可变参数101 第10章Function函数103 10.1函数与过程103 10.2定义函数103 10.2.1创建函数103 10.2.2调用函数104 10.3Function函数实例106 10.3.1大写金额转换函数106 10.3.2生成彩票号码107 第3部分Excel对象模型 第11章对象概述110 11.1对象和类的概念110 11.1.1什么是对象110 11.1.2类的概念110 11.2对象的属性、事件和方法111 11.2.1对象属性111 11.2.2对象事件112 11.2.3对象方法112 11.3对象变量和对象数组113 11.3.1对象变量113 11.3.2对象数组115 11.4集合概述115 11.4.1集合的概念115 11.4.2集合的方法和属性116 11.4.3访问集合中的对象116 11.5处理对象和集合117 11.5.1使用With 11.5.2使用ForEach 第12章Excel对象模型120 12.1Excel对象模型120 12.1.1Excel对象简介120 12.1.2Excel对象模型图120 12.1.3使用隐含对象122 12.1.4Excel常用对象122 12.2使用对象浏览器123 12.2.1对象浏览器简介123 12.2.2用对象浏览器查看对象成员125 12.2.3用对象浏览器查看VBA函数126 12.2.4用对象浏览器查看过程127 第13章Excel常用对象128 13.1Application对象128 13.1.1Application对象的用途128 13.1.2设置Excel主窗口标题栏128 13.1.3显示或关闭编辑栏129 13.1.4关闭屏幕更新129 13.1.5设置状态栏130 13.1.6查看模板文件的路径130 13.1.7最大化Excel窗口131 13.1.8获取对象的引用131 13.1.9重新计算132 13.1.10将R1C1转换为A1样式133 13.1.11快速跳转133 13.1.12定时执行过程133 13.1.13合并区域134 13.2Workbook对象134 13.2.1新建工作簿134 13.2.2打开工作簿135 13.2.3查看文档属性135 13.2.4处理工作簿文件名138 13.2.5处理命名单元格区域138 13.2.6设置工作簿密码139 13.2.7更名保存工作簿140 13.2.8关闭前自动保存工作簿141 13.3Worksheet对象141 13.3.1新建工作表141 13.3.2管理批注142 13.3.3设置工作表滚动区域143 13.3.4在工作表中绘制图形144 13.3.5隐藏工作表144 13.3.6在工作表中校验数据145 13.3.7自动生成下拉数据145 13.4Range对象147 13.4.1获取Range对象147 13.4.2设置边框线149 13.4.3设置单元格部分字符格式150 13.4.4操作当前区域151 13.4.5修改列宽151 13.4.6定义条件格式151 13.4.7设置单元格格式152 13.5Chart对象153 13.5.1图表分类153 13.5.2添加图表工作表153 13.5.3添加嵌入式图表154 13.6Window对象155 13.6.1创建窗口155 13.6.2命名活动窗口156 13.6.3控制窗口状态156 13.6.4激活窗口157 13.6.5控制工作表显示选项157 第14章常用的VBA代码159 14.1引用单元格区域159 14.1.1引用A1样式159 14.1.2引用行列编号160 14.1.3引用整行/整列160 14.1.4引用命名区域161 14.2处理单元格区域161 14.2.1选定单元格区域162 14.2.2处理活动单元格162 14.2.3处理三维区域163 14.2.4复制单元格区域163 14.2.5复制动态区域164 14.2.6处理合并区域165 14.2.7保护单元格166 14.3处理工作簿和工作表167 14.3.1将工作簿保存为Web页167 14.3.2保护工作簿168 14.3.3判断工作簿是否存在168 14.3.4判断工作簿是否打开169 14.3.5备份工作簿170 14.3.6获取关闭工作簿中的值171 14.3.7设置数字精度172 14.4处理工作表173 14.4.1判断工作表是否存在173 14.4.2管理工作表174 14.4.3操作行和列176 14.4.4保护工作表178 14.4.5工作表排序179 14.4.6删除空工作表180 14.5控制窗口180 14.5.1设置窗口大小181 14.5.2动态改变窗口大小181 14.5.3设置显示比例182 14.5.4排列窗口182 14.5.5并排比较窗口183 14.5.6拆分窗格184 第15章Excel的事件186 15.1了解事件186 15.1.1事件分类186 15.1.2编写事件程序187 15.2工作簿事件187 15.2.1工作簿事件简介187 15.2.2Open事件188 15.2.3BeforeClose事件189 15.2.4Activate事件189 15.2.5Deactivate事件190 15.2.6SheetActivate事件190 15.2.7NewSheet事件190 15.2.8BeforeSave事件191 15.2.9BeforePrint事件191 15.3工作表事件192 15.3.1工作表事件简介192 15.3.2Activate事件192 15.3.3BeforeRightClick事件192 15.3.4Change事件193 15.3.5SelectionChange事件194 15.4OnTime和OnKey事件195 15.4.1OnTime事件195 15.4.2OnKey事件196 15.5事件的产生顺序196 15.5.1工作簿事件产生顺序196 15.5.2工作表事件产生顺序197 第4部分用户界面设计 第16章自定义Excel2010功能区200 16.1功能区简介200 16.1.1认识Excel2010的功能区200 16.1.2自定义功能区的方法201 16.2使用XML自定义功能区201 16.2.1了解Excel2010文件格式201 16.2.2创建功能区选项卡202 16.3使用UI编辑器206 16.3.1认识UI编辑器206 16.3.2使用UI编辑器的步骤207 16.4UI界面元素209 16.4.1基本控件209 16.4.2容器控件211 16.4.3控件属性212 16.5自定义UI实例213 16.5.1组合内置控件213 16.5.2添加组到内置选项卡215 16.5.3创建新选项卡216 第17章创建工作表窗体218 17.1工作表窗体的概念218 17.2认识控件219 17.2.1控件分类219 17.2.2向工作表添加控件220 17.2.3操作工作表控件220 17.3使用表单控件221 17.3.1按钮控件221 17.3.2组合框控件222 17.3.3复选框控件224 17.3.4数值调节钮控件225 17.3.5列表框控件225 17.3.6单选框控件226 17.3.7分组框控件227 17.3.8标签控件228 17.3.9滚动条控件229 17.4设计读者意见卡230 17.5使用ActiveX控件232 17.5.1添加ActiveX控件232 17.5.2操作ActiveX控件233 17.5.3设置ActiveX控件属性234 17.6ActiveX控件实例234 第18章自定义窗体236 18.1用户窗体概述236 18.1.1认识用户窗体236 18.1.2用户窗体的相关概念236 18.2新建窗体237 18.2.1新建窗体的步骤237 18.2.2向窗体添加控件237 18.2.3设置控件属性238 18.2.4编写事件代码239 18.2.5调试运行窗体240 18.3控制窗体240 18.3.1设置窗体的属性240 18.3.2窗体的方法242 18.3.3窗体的事件243 18.4“工具箱”控件简介243 18.4.1控件工具箱243 18.4.2控件的共有属性244 18.5调整窗体中的控件245 18.5.1设置控件大小245 18.5.2设置控件布局246 18.5.3设置Tab键顺序247 第19章使用标准控件248 19.1命令按钮248 19.1.1命令按钮常用属性248 19.1.2命令按钮常用事件248 19.1.3按钮实例——更换标题文字249 19.2标签249 19.2.1标签常用属性250 19.2.2标签事件251 19.3文本框251 19.3.1文本框常用属性251 19.3.2文本框常用事件252 19.3.3文本框实例——登录窗体252 19.4复选框253 19.4.1复选框属性254 19.4.2复选框事件254 19.4.3复选框实例——设置字型254 19.5单选框255 19.5.1单选框常用属性255 19.5.2单选框常用事件255 19.5.3单选框实例——设置窗体背景图片255 19.6列表框256 19.6.1列表框常用属性257 19.6.2列表框常用方法258 19.6.3列表框常用事件259 19.6.4列表框实例——商品选择窗体259 19.7组合框261 19.7.1组合框常用属性261 19.7.2组合框常用方法261 19.7.3组合框常用事件261 19.7.4组合框实例——菜单分类显示261 19.8图像263 19.8.1图像控件属性263 19.8.2图像控件事件264 19.8.3图像实例——红绿灯264 19.9滚动条266 19.9.1滚动条常用属性266 19.9.2滚动条常用事件266 19.9.3滚动条实例——调色器267 19.10数值调节钮268 19.10.1数值调节钮常用属性268 19.10.2数值调节钮常用事件268 19.10.3数值调节钮实例——彩票选号269 19.11多页270 19.11.1多页控件常用属性271 19.11.2多页控件常用事件272 19.11.3多页实例——旅客登记272 19.12RefEdit275 19.12.1RefEdit常用属性275 19.12.2RefEdit实例——设置指定区域背景色275 19.13TabStrip276 19.13.1TabStrip控件的组成277 19.13.2TabStrip控件实例277 第20章使用ActiveX控件279 20.1添加ActiveX控件279 20.2使用图像列表控件280 20.2.1ImageList的构成280 20.2.2ImageList的属性和方法280 20.2.3添加图像到ImageList控件281 20.2.4改进的红绿灯窗体282 20.3使用树形视图控件283 20.3.1TreeView的构成283 20.3.2TreeView常用属性283 20.3.3TreeView常用方法285 20.3.4TreeView常用事件286 20.3.5改进的菜单分类显示286 20.4使用列表视图控件291 20.4.1列表视图的构成291 20.4.2ListView常用属性291 20.4.3设置ListView控件的属性292 20.4.4ListView常用事件293 20.4.5模拟控制面板界面293 第21章使用内置对话框296 21.1使用输入框296 21.1.1使用InputBox方法296 21.1.2使用GetOpenFilename方法297 21.1.3使用GetSaveAsFilename方法299 21.2使用内置对话框300 21.2.1显示内置对话框300 21.2.2设置内置对话框的参数302 21.2.3获取内置对话框的选择303 第22章使用VBA控制图表304 22.1图表对象304 22.1.1图表位置304 22.1.2Chart对象模型305 22.1.3图表对象常用属性和方法305 22.2录制图表宏308 22.2.1录制创建图表的宏309 22.2.2查看宏代码311 22.3使用VBA创建图表311 22.4常用图表事件313 22.4.1图表工作表事件314 22.4.2嵌入图表事件314 22.5认识数据透视表316 22.5.1创建数据透视表316 22.5.2查看数据透视表宏代码318 22.6了解数据透视表对象318 22.6.1缓存对象318 22.6.2数据透视表对象319 22.6.3字段对象319 22.6.4数据项对象320 第5部分扩展应用程序 第23章Excel加载宏322 23.1加载宏的概念322 23.1.1加载宏的用途322 23.1.2加载宏的类型322 23.2管理加载宏323 23.2.1载入加载宏323 23.2.2卸载加载宏324 23.3创建加载宏324 23.3.1创建表格324 23.3.2编写代码325 23.3.3测试宏功能328 23.3.4保存为加载宏328 23.4使用加载宏330 23.4.1加载自定义加载宏330 23.4.2调用加载宏的功能331 第24章使用类模块333 24.1类的概念333 24.1.1了解类333 24.1.2类的作用333 24.1.3类的预备知识334 24.2创建类334 24.2.1建立对象类335 24.2.2建立属性335 24.2.3创建PropertyGet过程336 24.2.4创建PropertyLet过程337 24.2.5创建对象类的方法338 24.2.6类模块的事件338 24.3使用类模块创建对象339 24.3.1设计新增员工窗体339 24.3.2设计调整员工部门窗体341 24.3.3设计调整工资窗体341 24.3.4测试程序功能342 第25章调用API344 25.1API概述344 25.1.1API简介344 25.1.2API基础344 25.2在Excel中使用API345 25.2.1API函数声明345 25.2.2查找API函数346 25.2.3使用API函数349 25.3操作注册表350 25.3.1注册表结构350 25.3.2使用VBA函数访问注册表351 25.3.3使用API函数创建注册表键352 25.4获取系统信息354 25.4.1获取内存状态354 25.4.2获取键盘信息356 第6部分应用程序整合 第26章数据库编程360 26.1数据库概述360 26.1.1数据库的构成360 26.1.2访问数据库361 26.2使用MSQuery检索外部数据362 26.2.1了解MSQuery362 26.2.2连接数据源362 26.2.3使用查询向导定义查询364 26.2.4在Excel中处理数据365 26.3结构化查询语言365 26.3.1结构化查询简介366 26.3.2SQL查询数据366 26.3.3SQL更新数据369 26.4ADO数据访问370 26.4.1数据访问方法370 26.4.2ADO对象模型370 26.4.3使用ADO存取数据371 26.5数据库编程实例374 第27章使用文件对象模型379 27.1文件对象模型简介379 27.2创建FSO对象379 27.2.1添加FSO对象模型引用380 27.2.2创建FSO对象的方法380 27.3操作驱动器381 27.3.1Drive对象的属性381 27.3.2查询磁盘信息381 27.3.3查询各硬盘的剩余空间382 27.4操作文件夹383 27.4.1操作文件夹的方法383 27.4.2获取文件夹信息383 27.4.3创建和删除文件夹384 27.4.4列出文件夹名称384 27.4.5删除空文件夹385 27.5操作文件387 27.5.1操作文件的方法387 27.5.2创建文本文件387 27.5.3添加数据388 27.5.4读取数据389 27.5.5复制文件389 27.5.6列出文件名称389 第28章控制Office其他程序391 28.1自动化技术简介391 28.2使用自动化技术391 28.2.1引用服务程序391 28.2.2浏览对象库的内容392 28.2.3创建自动化对象实例393 28.3自动生成通知书393 28.3.1准备数据393 28.3.2调用自动化服务395 28.3.3使用代码生成通知书398 第7部分Excel应用程序的调试与优化 第29章Excel应用程序的安全400 29.1用户身份认证400 29.2源代码安全403 29.2.1保护工程404 29.2.2使用动态链接库405 第30章VBA程序调试411 30.1使用VBE调试程序411 30.1.1VBA程序的运行方式411 30.1.2设置断点412 30.1.3监视表达式413 30.1.4使用“本地”窗口415 30.1.5使用“立即”窗口415 30.2条件编译416 30.2.1什么是条件编译416 30.2.2条件编译语句416 30.2.3使用条件编译417 第31章VBA程序优化419 31.1程序优化的概念419 31.2代码优化419 31.2.1代码优化的作用420 31.2.2优化变量420 31.2.3优化循环423 31.2.4优化对象引用424 31.2.5其他代码优化方法426 第32章VBA错误处理428 32.1理解VBA错误428 32.1.1错误分类428 32.1.2错误处理过程428 32.2错误捕获及处理428 32.2.1可捕获的错误429 32.2.2OnError语句429 32.2.3Resume语句431 32.2.4错误处理层次结构432 32.3错误处理实例433 第33章制作帮助系统435 33.1简单的帮助信息435 33.1.1用批注显示帮助信息435 33.1.2使用文本框显示帮助信息436 33.2制作帮助文件436 33.2.1计划帮助文件437 33.2.2创建项目文件437 33.2.3创建目录文件438 33.2.4创建索引文件440 33.2.5编译生成帮助文件441 33.2.6打开帮助文件442 33.3为应用程序设置帮助文件442 第8部分综合应用程序设计 第34章制作人事管理系统446 34.1系统描述446 34.1.1设计思路446 34.1.2关键技术:用户窗体的创建和控制446 34.1.3关键技术:使用高级筛选查找数据447 34.1.4关键技术:自定义功能区448 34.2设计人事管理表格448 34.3设计登录窗体450 34.3.1设计登录界面450 34.3.2设计登录窗体的代码450 34.3.3测试登录窗体的步骤453 34.4设计人事信息窗体454 34.4.1设计窗体界面454 34.4.2设计人事信息管理代码454 34.4.3测试人事信息管理窗体461 34.5设计员工信息查询462 34.5.1设计数据有效性代码462 34.5.2设计查询代码465 34.6自定义功能区466 34.6.1创建“人事信息”选项卡466 34.6.2设计功能区按钮代码471 34.6.3测试自定义功能区472 第35章制作库存管理系统(2010版)474 35.1系统描述474 35.1.1设计思路474 35.1.2关键技术:设置工作表滚动区域475 35.1.3关键技术:End属性475 35.1.4关键技术:Names集合对象476 35.2设计基础设置模块476 35.2.1商品信息管理476 35.2.2部门信息管理480 35.2.3供应商信息管理481 35.3设计库存管理模块483 35.3.1设计商品清单列表483 35.3.2设计入库单484 35.3.3设计出库单491 35.3.4设计入库/出库明细表496 35.3.5设计库存汇总497 35.4设计账务处理模块499 35.4.1设计库存明细账499 35.4.2设计应付账管理505 35.4.3设计盘点表507 35.4.4设计库存报警508 35.5用功能区集合各模块510 35.5.1创建“库存管理”选项卡511 35.5.2设计功能区按钮代码514 35.6设计主界面及工作簿事件516 35.6.1设计主界面517 35.6.2设计工作簿的Open事件代码518 35.6.3设计工作簿的BeforeClose事件代码518 附录在Excel2003中使用宏519
章节摘录
版权页: 插图: 各关键字含义如下。 Declare关键字:在模块级别中声明对动态链接库(DLL)中外部过程的引用。 Function关键字:紧随Function的函数名是从VBA中调用该函数时要使用的名称。该名称可以与APl函数本身的名称相同,也可以使用Declare语句中的Alias关键字,表示要在VBA中使用不同的名称(“别名”)调用该函数。 Lib关键字:指明包含所声明过程或函数的动态链接库。它说明的是函数或过程从何而来的问题。例如在上例中,SetFocus Lib”user32”说明函数SetFocus来自“user32.dll”文件。 Alias关键字:用于指定APl函数的别名,如果调用的APl函数要使用字符串(参数中包含Strin9类型),则Alias关键字是必需的。这是因为在ANSl和Unicode字符集中同一API函数的名称可能是不一样的。为了保证不出现声明错误的情况,必须使用Alias关键字指出API函数的别名。 2.参数传递 很多参数通过赋值来传递给APl函数。默认情况下,VBA中的参数通过引用来传递。因此,当APl函数要求通过赋值来传递参数时,必须在该函数定义中包含关键字ByVal。如果在函数定义中省略了关键字ByVal,则有些情况下可能会导致页面无效的错误。在另外一些情况下可能会发生VBA运行时错误。 以引用方式传递参数会将该参数的内存地址传递给被调用的过程。如果被调用的过程改变了参数的值,则将改变该参数的唯一版本,因此当执行过程返回到主调过程时,该参数将变为更改后的值。 以赋值方式向APl函数传递参数只传递该参数的一个副本,函数将使用该副本来代替参数进行操作。这样可以避免函数更改真实参数的内容。当执行进程返回到主调过程时,参数包含的值与调用之前相同。 由于以引用方式传递参数可以在内存中修改参数值,因此如果不正确地以引用方式传递参数,APl函数可能会改写它不应该写入的内存,从而导致错误或其他一些难以预料的结果。Windows中有很多不应该被改写的值。例如,Windows给每个窗口分配一个唯一的称为“句柄”的32位标识符。 3.使用常量 有些API函数还需要定义它用到的常量及类型。应将常量、用户自定义类型的定义与要使用它们的函数的Declare语句一起放在模块的声明部分。从API的相关文档可以找到各函数需要使用的常量和用户自定义类型。 有时可能需要向函数传递常量,以指明要求该函数返回何种信息。例如,GetSystemMetrics函数可以接受75个常量,每个常量都指定操作系统的不同方面。函数返回什么信息取决于向它传递什么常量。为了能够调用GetSystemMetrics函数,在程序中不必包含所有的75个常量,包含要使用的那些常量即可。
编辑推荐
《精通Excel VBA(视频精讲版)》在涉及大段源代码的同时,给出了详细的流程图,让读者先看清流程,做到心中有数后,再逐行阅读代码。另外,《精通Excel VBA(视频精讲版)》配套DVD光盘中包括13个小时的精彩教学视频,以及书中案例所涉及的源文件及素材,方便读者学习。
图书封面
评论、评分、阅读与下载