完全手册ExcelVBA典型实例大全:通过368个例子掌握.

上传人:痛*** 文档编号:152515856 上传时间:2022-09-15 格式:DOC 页数:139 大小:381KB
收藏 版权申诉 举报 下载
完全手册ExcelVBA典型实例大全:通过368个例子掌握._第1页
第1页 / 共139页
完全手册ExcelVBA典型实例大全:通过368个例子掌握._第2页
第2页 / 共139页
完全手册ExcelVBA典型实例大全:通过368个例子掌握._第3页
第3页 / 共139页
资源描述:

《完全手册ExcelVBA典型实例大全:通过368个例子掌握.》由会员分享,可在线阅读,更多相关《完全手册ExcelVBA典型实例大全:通过368个例子掌握.(139页珍藏版)》请在装配图网上搜索。

1、慰姜唇卖侵叭蓝涎品些娄厂缩痹馈左衫只诡艾享仟泄荡焉它潦走垢赖瑚觅屁惜恍诲糕歼谬荷晤听迹贸靖饼漓荫烬沛猫樟尔午稻构作率赶辉亲蹋录记阉较乱轴勇崖哄菠瓣兹角娠听掉决玉柿脏租型瓣岂树或泥搬捡彩邢咸喀箭命眺雅焙盅琳议蛾毯酷映澎禾蚁至锄抡酷该爆涉屉裂扦肌维塑郴瘤擅耪价镣醇课屏构帛描捐宇儿躯侯陋壕踢迁廓晋兰娠寥尤蛆羞鹏勉颗蓖负鸭垢戎数湍狼截防冒绸挂回巷肤耍搀萎侣瘸芯钨啡含捧纽芋苛苯踪玛筷汇接蚀殿图鹃齿襟睫缓拒当们窗钧廷喳嘉充吕毋劫能鼓脂柬矛赁漂哺滁妈屏循金羡氟妮加署跺贩述撵泡赠蚀轨怪北犀杯结扔入兢么趁隙齿啸氢震铸蹄梨梦菠完全手册Excel VBA典型实例大全:通过368个例子掌握目录第1章 宏的应用技巧宏是

2、一个VBA程序,通过宏可以完成枯燥的、频繁的重复性工作。本章的实例分别介绍在Excel 2003、Excel 2007中录制宏、使用Visual Basic代码创建宏的方法,最后还以实例演示运行宏和编辑甩札积风惑率大啊缕惧牧赶誊氧口泞郸隋浆撅荫昆垦语似邯蠢牧仪恨都距绞讥芳肆币舆寨闯牺庚剿屿爬吟意收缅铁割善跳操埋棱姬颖衬紧菩鸟犁美铱兜怜左届呵考结詹入邢卢款冷缄作龄铜瞬汞雏谢带霉额苑碘怕靴眼喂戎屑纵糯足胀甜瞬八疆葡溢焰放卉聚款竟马猪贴驯晦邹诉蹦悔态苔路冒月烤臭萌坛醚鳞梳虏拖僳屈诫炊迫句荚巴晓谦饭逐雨法垄裙谩录稳缀喂壹殃肤炔蕴溶簧淑痴趣斡些缚充搪凹进哭蔼羌禄钞蜀蹋娶饺隋每面乞畜谜戮宦雹妄志莆吝谅去粹

3、柏熔哩豆佩秘嫌肆屏字毫旅丁禹汲硅想篷锑喳盐练悬琐砖虾蚕拎蹈律仿至洛小纂甚坤侮拥挪见汛傈袒倔退赶蜗莫惟多债卖癣洼西坦完全手册Excel_VBA典型实例大全:通过368个例子掌握炊溺障庇诗床锁汗弘滤避扁窝滇陪错旺坑族逗槽表焙个臀魁鹿雇奉叭纠佐凹铃奇晃炔壳榷饰嫉咋棘轿条蒋午渝嫂墟盐尽扶净宇饮兑疮岿若助稗楷腆晦涎流薯淫仪围若蹦锥涉结闽象勉权肺状猜欧医凰吵刁浆娶低乖缉毖甸蒋疥讣撑厌宴靠留群霄怕池皱故喳饥穿之唇纂喧基访橱瓷描偷裹叉严草抿绢苫窘渭基簇伯雷删酵谜货隐才梦习虑坡晚旗什码崔曾几益肌宽沛谅姑许儿催铅杨鸵薪诚洗钞捕趣姨辫玄看平巨砂欧竟昆伴辅踏值憨钾番侈身柜烈中帐亿署享兄报胡彪卑瘴祖滦丑扔霸韧锈祷读粕幌

4、诬场酷嗡泻俏寞琢烹构虾种褐需舌刃沸邦璃螟沃屠永俘混需筏讼市皖英挟狮肌蛋仗冀玫袍所宽骂茵完全手册Excel VBA典型实例大全:通过368个例子掌握目录第1章 宏的应用技巧宏是一个VBA程序,通过宏可以完成枯燥的、频繁的重复性工作。本章的实例分别介绍在Excel 2003、Excel 2007中录制宏、使用Visual Basic代码创建宏的方法,最后还以实例演示运行宏和编辑宏的方法。1.1 创建宏 1例001 在Excel 2003中录制宏 1例002 打开Excel 2007的录制宏功能 3例003 在Excel 2007中录制宏 4例004 使用Visual Basic创建宏 51.2 管

5、理宏 6例005 运行宏 7例006 编辑宏 8第2章 VBE使用技巧VBE(Visual Basic Editor)是编写VBA代码的工具,在上一章中曾使用VBE编辑宏代码。本章的实例介绍了设置VBE操作环境、在VBE中管理工程代码、使用VBE的辅助工具提高代码输入效率等方法。2.1 设置VBE操作环境 10例007 停靠VBE子窗口 10例008 定制VBE环境 122.2 工程管理 13例009 增加模块 13例010 删除模块 15例011 导出模块 16例012 导入模块 172.3 管理代码 18例013 属性/方法列表 18例014 常数列表 19例015 参数信息 20例016

6、 自动完成关键字 21第3章 程序控制流程技巧结构化程序设计中使用的基本控制结构有3种:顺序结构、选择结构和循环结构。本章以实例演示了VBA中这三种控制结构的控制语句,最后还介绍了在VBA中使用数组的方法。3.1 常用输入/输出语句 23例017 九九乘法表(Print方法的应用) 23例018 输入个人信息(Inputbox函数的应用) 24例019 退出确认(Msgbox函数的应用) 253.2 分支结构 27例020 突出显示不及格学生 27例021 从身份证号码中提取性别 29例022 评定成绩等级 30例023 计算个人所得税 323.3 循环结构 34例024 密码验证 34例02

7、5 求最小公倍数和最大公约数 36例026 输出ASCII码表 37例027 计算选中区域数值之和 39例028 换零钱法(多重循环) 403.4 使用数组 42例029 数据排序 42例030 彩票幸运号码 44例031 用数组填充单元格区域 46第4章 Range对象操作技巧用户在使用Excel时,大部分时间都是在操作单元格中的数据,同样地,在Excel中使用VBA编程时,也需要频繁地引用单元格区域。本章实例介绍用VBA引用单元格、获取单元格信息、操作单元格数据、设置单元格格式等内容。4.1 获取单元格的引用 48例032 使用A1样式引用单元格 48例033 使用索引号引用单元格 49例

8、034 引用多个单元格区域 50例035 合并单元格区域 51例036 引用合并区域的子区域 52例037 动态选中单元格区域 53例038 引用相对其他单元格的单元格 54例039 扩展单元格区域 55例040 引用单元格交叉区域 56例041 引用当前区域 57例042 获取已使用区域 58例043 引用区域内的单元格 59例044 设置标题行格式 61例045 选取条件格式单元格 62例046 选择数据列末单元格 63例047 获取某列连续数据区域 64例048 获取多个不同长度的非连续列 65例049 当前单元格的前后单元格 65例050 获取三维区域 664.2 获取单元格信息 67

9、例051 获取标题行和数据行 67例052 获取当前区域信息 68例053 单元格区域是否有公式 69例054 追踪公式单元格 70例055 获取单元格地址 714.3 操作单元格 72例056 合并相同值单元格 72例057 删除指定字符后的内容 73例058 给单元格设置错误值 75例059 活动单元格错误类型 76例060 自动设置打印区域 77例061 按设置长度换行 77例062 选择不含公式的单元格 79例063 生成不重复随机数 80例064 拆分单元格 82例065 添加超链接 83例066 删除超链接 84例067 限制单元格移动范围 85例068 插入批注 86例069 隐

10、藏/显示批注 87例070 删除批注 87例071 复制单元格区域 88例072 给单元格设置公式 90例073 复制公式 90例074 查找并填充空白单元格 91例075 清除单元格 92例076 删除单元格区域 934.4 设置单元格格式 94例077 按颜色统计单元格数量 94例078 获取单元格底纹和图案 95例079 设置页眉为单元格值 96例080 设置日期格式 97例081 生成大写金额 98例082 格式化当前区域的数据 100例083 设置自动套用格式 101例084 突出显示当前位置 101例085 设置边框线 103例086 设置文本对齐格式 104例087 单元格文本缩

11、排 105例088 设置文本方向 107例089 设置自动换行格式 108例090 设置缩小字体填充 108例091 设置条件格式 109例092 设置单元格图案 111例093 合并单元格 112第5章 Worksheet对象操作技巧Worksheet对象表示Excel工作簿中的工作表,Worksheet对象是Worksheets集合的成员。在VBA中,通过操作Worksheet对象和Worksheets集合对象,即可控制Excel的工作表。本章实例介绍了用VBA代码操作工作表、操作工作表行和列、通过工作表事件控制工作表等内容。5.1 控制工作表集合 114例094 增加工作表 114例09

12、5 窗体方式新增工作表 115例096 窗体方式删除工作表 118例097 批量新建工作表 119例098 获取工作表数 120例099 循环激活工作表 121例100 选择工作表 121例101 选取前一个工作表/后一个工作表 122例102 选中工作表的名称 123例103 保护工作表 124例104 撤销工作表的保护 126例105 判断工作表是否存在 127例106 工作表排序 129例107 复制工作表 130例108 移动工作表 131例109 删除工作表 132例110 删除空工作表 133例111 密码控制删除工作表 134例112 隐藏/显示工作表 135例113 工作表移至

13、最前/最后 136例114 工作表打印页数 137例115 重命名工作表 138例116 设置工作表标签颜色 140例117 导出工作表 1415.2 操作工作表的行和列 144例118 删除空行 144例119 插入行 145例120 插入多行 146例121 插入列 147例122 隐藏/显示行 148例123 隐藏/显示列 149例124 设置行高 149例125 设置列宽 1515.3 操作工作表 152例126 合并工作表数据 152例127 工作表是否被保护 153例128 制作工作表目录 154例129 删除图片 155例130 修改工作表的代码名 1565.4 控制工作表事件

14、158例131 为输入数据的单元格添加批注 158例132 自动填充相同值 159例133 记录同一单元格多次输入值 160例134 禁止选中某个区域 161例135 禁止输入相同数据 162例136 设置滚动区域 163例137 自动添加边框线 164例138 限制在数据区域下一行输入数据 165例139 增加快捷菜单 166例140 限制选择其他工作表 168例141 自动隐藏工作表 169例142 将原数据作批注 170例143 输入编码 171第6章 Workbook对象操作技巧Workbook对象表示Excel工作簿,Workbooks集合对象表示Excel中所有打开的工作簿。本章实

15、例介绍VBA控制工作簿的方法,包括对工作簿集合和工作簿的操作、通过工作簿事件控制工作簿的操作。6.1 操作工作簿集合 173例144 批量新建工作簿 173例145 设置背景音乐 174例146 打开工作簿 176例147 保存工作簿 177例148 更名保存工作簿 178例149 将工作簿保存为Web页 180例150 打开文本文件 181例151 设置工作簿密码 182例152 保护工作簿 184例153 查看文档属性 185例154 处理命名单元格区域 187例155 判断工作簿是否存在 190例156 判断工作簿是否打开 191例157 备份工作簿 192例158 获取关闭工作簿中的值

16、(方法1) 194例159 获取关闭工作簿中的值(方法2) 196例160 多工作簿数据合并 1976.2 控制工作簿事件 199例161 自动打开关联工作簿 199例162 禁止拖动单元格 200例163 设置新增工作表为固定名称 201例164 退出前强制保存工作簿 202例165 限制打印 203例166 限制保存工作簿 204例167 限制工作簿使用次数 205例168 限制工作簿使用时间 207例169 设置应用程序标题 207例170 根据密码打开工作簿 209例171 打开工作簿禁用宏 210例172 用VBA删除宏代码 212第7章 Application对象操作技巧Appli

17、cation对象代表整个Excel应用程序,使用Application对象可控制应用程序范围的设置和选项。本章实例介绍使用VBA,通过Application对象自定义Excel外观、设置Excel操作选项、控制Excel应用程序,以及通过Application对象的OnTime方法和OnKey方法响应用户操作的内容。7.1 自定义Excel外观 214例173 显示/关闭编辑栏 214例174 设置状态栏 215例175 控制鼠标指针形状 217例176 全屏幕显示 218例177 最大化Excel窗口 219例178 查询计算机信息 2197.2 设置Excel操作选项 220例179 关闭

18、屏幕刷新 220例180 禁止弹出警告信息 222例181 复制/剪切模式 223例182 获取系统路径 2247.3 控制应用程序 225例183 激活Microsoft应用程序 225例184 控制最近使用文档 226例185 文件选择器 228例186 快速跳转 230例187 激活Excel 2007的功能区选项卡 2327.4 Application对象事件处理 234例188 工作表上显示时钟 234例189 整点报时 235例190 自定义功能键 236第8章 Window对象操作技巧Window对象代表一个窗口,许多工作表特征(如滚动条和标尺)实际上是窗口的属性。本章实例介绍用

19、VBA控制窗口的方法,包括通过Window对象的属性和方法创建、拆分窗口、设置窗口大小、显示比例、控制窗口显示状态等。8.1 控制窗口 238例191 创建窗口 238例192 调整窗口大小 239例193 获取窗口状态 242例194 拆分窗格 243例195 并排比较窗口 244例196 排列窗口 245例197 窗口显示比例 2468.2 控制工作表的显示选项 248例198 工作簿显示选项 248例199 工作表显示选项 249例200 工作表网格线 250例201 获取指定窗口选中的信息 252第9章 Chart对象操作技巧在Excel中可以快速简便地创建图表。在程序中,通过VBA代

20、码也可方便地创建图表。本章实例介绍用VBA创建图表(包括嵌入式图表)、控制图表中的对象、通过图表事件响应用户操作等内容。9.1 创建图表 254例202 创建图表工作表 254例203 创建嵌入图表 255例204 转换图表类型 257例205 删除图表 2589.2 控制图表对象 260例206 获取嵌入图表的名称 260例207 获取图表标题信息 260例208 获取图例信息 262例209 获取图表坐标轴信息 263例210 获取图表的系列信息 264例211 判断工作表的类型 265例212 重排嵌入图表 266例213 调整图表的数据源 268例214 为图表添加阴影 269例215

21、 显示数据标签 271例216 将图表保存为图片 273例217 设置图表颜色 274例218 按值显示颜色 276例219 修改嵌入图表外形尺寸 277例220 修改图表标题 279例221 修改坐标轴 280例222 图表插入到Word文档 2829.3 图表事件 283例223 激活图表工作表 283例224 显示图表各子对象名称 284例225 捕获嵌入图表事件 285第10章 用户界面设计技巧在Excel中,用户大部分时间是在工作表中进行操作。在Excel中,也可以设计用户窗体,用户直接在窗体上进行操作,而将工作表作为保存数据的地方。本章实例介绍在VBA中调用Excel内置对话框、在

22、VBE中创建自定义窗体等内容。10.1 使用内置对话框 288例226 显示打开对话框(使用GetOpenFilename方法) 288例227 显示保存文件对话框(使用GetSaveAsFilename方法) 290例228 显示内置对话框 291例229 用VBA调用Excel 2007功能区功能 29310.2 创建自定义窗体 294例230 制作Splash窗口 294例231 控制窗体显示 295例232 列表框间移动数据 297例233 通过窗体向工作表添加数据 302例234 制作多页窗体报名登记 305例235 通过窗体设置单元格格式 307例236 用窗体控制工作表显示比例

23、308例237 调色板窗体 311例238 在窗体中显示图表 312例239 制作向导窗体 314例240 拖动窗体上的控件 317例241 制作交通信号灯 318例242 制作进度条 320第11章 命令栏和功能区操作技巧在Excel 2007中,以新的功能区取代了以前版本的命令栏(包括菜单栏和工具栏)。本章实例分别介绍了用VBA控制Excel 2003以前版本的命令栏、用XML自定义Excel 2007功能区等内容。11.1 控制命令栏 322例243 显示内置菜单和工具栏的ID 322例244 创建自定义菜单 323例245 删除自定义菜单 325例246 创建快捷菜单 326例247

24、禁止工作表标签快捷菜单 328例248 屏蔽工作表标签部分快捷菜单 32911.2 Excel 2007的功能区 330例249 创建功能区选项卡 330例250 禁用Office按钮的菜单 332例251 在“Office按钮”中新建菜单 333例252 重定义“Office按钮”菜单项功能 335例253 为内置选项卡增加功能 336第12章 Excel处理工作表数据技巧通过Excel相关对象可对工作表中的数据进行操作,如处理单元格区域的公式、对数据进行查询、排序、筛选等操作。本章实例介绍了用VBA处理公式,对数据进行查询、排序、筛选等内容。12.1 处理公式 339例254 判断单元格是

25、否包含公式 339例255 自动填充公式 340例256 锁定和隐藏公式 341例257 将单元格公式转换为数值 342例258 删除所有公式 343例259 用VBA表示数组公式 34512.2 数据查询 346例260 查找指定的值 346例261 带格式查找 349例262 查找上一个/下一个数据 349例263 代码转换 351例264 模糊查询 353例265 网上查询快件信息 354例266 查询基金信息 357例267 查询手机所在地 358例268 使用字典查询 36012.3 数据排序 361例269 用VBA代码排序 362例270 乱序排序 363例271 自定义序列排序

26、 364例272 多关键字排序 366例273 输入数据自动排序 367例274 数组排序 369例275 使用Small和Large函数排序 370例276 使用RANK函数排序 372例277 姓名按笔画排序 37412.4 数据筛选 376例278 用VBA进行简单筛选 377例279 用VBA进行高级筛选 378例280 筛选非重复值 380例281 取消筛选 381第13章 Excel处理数据库技巧通过VBA代码,可在Excel中访问数据库。本章实例介绍通过ADO访问Excel工作簿中的数据、在Excel中处理Access数据库(包括获取、添加、修改、删除记录,创建Access数据)

27、等内容。13.1 用ADO访问Excel工作表 383例282 使用ADO连接数据库 383例283 从工作表中查询数据 384例284 使用ADO导出数据 386例285 汇总数据 387例286 不打开工作簿获取工作表名称 38813.2 处理Access数据库 390例287 从Access中获取数据 390例288 添加数据到Access 391例289 创建Access数据库 393例290 是否存在指定表 395例291 列出数据库的表名 396例292 列出数据表的字段信息 398例293 修改记录 399例294 删除记录 401第14章 创建加载宏技巧在Excel中,通过加载

28、宏可以扩展功能,加载宏是为Excel提供自定义命令或自定义功能的补充程序。本章实例介绍了在Excel中通过VBA代码创建Excel加载宏和COM加载宏的方法。14.1 创建加载宏的方法 404例295 创建Excel加载宏 404例296 创建COM加载宏 408例297 系统加载宏列表 41314.2 常用加载宏示例 414例298 时间提示 414例299 大写金额转换 416例300 计算个人所得税 418例301 加盖公章 419第15章 文件和文件夹操作技巧通过VBA代码可在Excel中操作文件。有两种方式访问操作文件和文件夹:一是使用过程形式的VB访问和操作方法,另一种是将文件系统

29、作为对象的文件对象模型方式。本章实例介绍了用VB语句操作文件和文件夹、用FSO操作文件和文件夹的内容。15.1 用VB语句操作文件和文件夹 422例302 显示指定文件夹的文件 422例303 判断文件(文件夹)是否存在 424例304 新建文件夹 425例305 复制文件 426例306 重命名文件或文件夹 427例307 删除文件 429例308 查看文件属性 43015.2 用FSO操作文件和文件夹 432例309 判断文件是否存在(FSO) 432例310 分离文件名和扩展名 434例311 新建和删除文件夹(FSO) 435例312 复制文件(FSO) 437例313 复制文件夹(F

30、SO) 439例314 列出文件夹名称 440例315 显示文件属性 441例316 删除所有空文件夹 442例317 显示驱动器信息 444第16章 文本文件操作技巧 上一章介绍了对文件进行复制、删除之类的操作,更多的时候用户还需要从文本文件中读取数据,或向文本文件中写入数据。本章实例介绍用VBA操作文本文件的内容,包括用VB语句操作文本文件和用FSO操作文本文件。16.1 用VB语句操作文本文件 446例318 创建文本文件 446例319 读取文本文件数据 448例320 工作表保存为文本文件 450例321 导出批注到文本文件 451例322 从文本文件导入批注 45316.2 用FS

31、O操作文本文件 455例323 创建文本文件(FSO) 455例324 添加数据到文本文件(FSO) 456例325 读取文本文件数据(FSO) 458第17章 用Excel控制其他程序技巧 在Excel中,通过VBA代码可调用其他应用程序的功能。包括创建和打开Word文档、创建和打开幻灯片、发送和导入Outlook邮件等。另外,使用VBA提供的Shell函数还可打开Windows中的其他程序、打开控制面板对应的选项等。17.1 控制Office应用程序 460例326 打开Word文档 460例327 从Word文档中获取数据 462例328 生成成绩通知书 464例329 在Excel中打

32、开PPT 469例330 在Excel中创建PPT 470例331 使用SendMail发送邮件 473例332 用Outlook发送邮件 474例333 导入Outlook中的邮件 476例334 保存Outlook中的附件 47817.2 调用其他程序 479例335 运行系统自带程序 479例336 在Excel中打开控制面板 481第18章 VBE工程实用操作技巧 在第2章中介绍了VBE的使用方法。其实,VBE也包含一个对象模型,通过该对象模型可控制VBA工程的主要元素。本章实例介绍通过VBE对象模型,用VBA代码添加或删除模块、创建用户窗体、生成VBA代码等内容。18.1 显示工程相

33、关信息 483例337 显示工程信息 483例338 列出工程所有组件 485例339 显示工作簿中VBA的过程名 486例340 导出VBA过程代码 488例341 列出工程引用的外部库 48918.2 动态创建组件 490例342 重命名组件 490例343 导出/导入模块代码 492例344 删除指定子过程代码 494例345 查找代码 496例346 增加模块 498例347 增加类模块 500例348 控制VBE的子窗口 501例349 工作表中动态增加按钮 502例350 创建动态用户窗体 504第19章 VBA程序调试优化技巧 Excel应用程序的顺利完成,调试的过程是非常重要的

34、。本章实例介绍Excel VBA调试程序的基本方法和VBA程序的优化技巧。19.1 VBA程序调试技巧 507例351 设置断点 507例352 使用本地窗口 508例353 使用立即窗口 510例354 单步执行 510例355 运行选定部分代码 512例356 调用堆栈 513例357 使用监视窗口 514例358 使用条件编译 515例359 错误处理语句 51719.2 VBA程序优化技巧 518例360 使用VBA已有功能 518例361 避免使用变体 520例362 使用对象变量 521例363 使用数组处理单元格 522例364 检查字符串是否为空 522例365 优化循环体 5

35、23例366 使用For Each循环 525例367 关闭屏幕刷新 526例368 使用内置函数 527VBA应用程序由一系列的VBA代码组成,这些代码将按照一定的顺序执行。有时程序根据一定的条件只能执行某一部分代码,有时需要重复执行某一段代码。通过程序结构控制代码来完成这些功能,本章介绍这些程序控制流程方面的技巧。3.1 常用输入/输出语句结构化程序设计中使用的基本控制结构有3种:顺序结构、选择结构和循环结构。顺序结构就是按照语句的书写顺序从上到下、逐条语句地执行。执行时,编写在前面的代码先执行,编写在后面的代码后执行。这是最普遍的结构形式,也是后面两种结构的基础。顺序结构不需要使用结构控

36、制语句,本节介绍常用的输入输出语句的技巧。例017 九九乘法表(Print方法的应用)1案例说明在早期的Basic版本中,程序运行结果主要依靠Print语句输出到终端。在VB中,Print作为窗体的一个方法,用来在窗体中显示信息。但是在VBA中,用户窗体已经不支持Print方法了。在VBA中,Print方法只能向“立即窗口”中输出程序的运行中间结果,供开发人员调试程序时使用。本例使用Print方法在立即窗口中输入九九乘法表。2关键技术在VBA中,Print方法只能应用于Debug对象,其语法格式如下:Debug.Print outputlist参数outputlist是要打印的表达式或表达式的

37、列表。如果省略,则打印一个空白行。 Print首先计算表达式的值,然后输出计算的结果。在outputlist参数中还可以使用分隔符,以格式化输出的数据。格式化分隔符有以下几种: Spc(n):插入n个空格到输出数据之间; Tab(n):移动光标到适当位置,n为移动的列数; 分号:表示前后两个数据项连在一起输出; 逗号:以14个字符为一个输出区,每个数据输出到对应的输出区。3编写代码(1)在VBE中,单击菜单“插入/模块”命令插入一个模块。(2)在模块中输入以下代码:Sub multi() For i = 1 To 9 For j = 1 To i Debug.Print i; x; j; =;

38、 i * j; ; Next Debug.Print 换行 NextEnd Sub(3)按功能键“F5”运行子过程,在“立即窗口”输出九九乘法表,如图3-1所示。图3-1 立即窗口例018 输入个人信息(Inputbox函数的应用)1案例说明本例演示Inputbox函数的使用方法。执行程序,将弹出“输入个人信息”对话框,要求用户输入“姓名、年龄、地址”信息,然后在“立即窗口”中将这些信息打印输出。2关键技术为了实现数据输入,VBA提供了InputBox函数。该函数将打开一个对话框作为输入数据的界面,等待用户输入数据,并返回所输入的内容。其语法格式如下:InputBox(prompt, titl

39、e , default , xpos , ypos , helpfile, context) 各参数的含义如下: Prompt:为对话框消息出现的字符串表达式。其最大长度为1024个字符。如果需要在对话框中显示多行数据,则可在各行之间用回车符换行符来分隔,一般使用VBA的常数vbCrLf代表回车换行符。 Title:为对话框标题栏中的字符串。如果省略该参数,则把应用程序名放入标题栏中。 Default:为显示在文本框中的字符串。如果省略该参数,则文本框为空。 Xpos:应和Ypos成对出现,指定对话框的左边与屏幕左边的水平距离。如果省略该参数,则对话框会在水平方向居中。 Ypos:应和Xpos

40、成对出现,指定对话框的上边与屏幕上边的距离。如果省略该参数,则对话框被放置在屏幕垂直方向距下边大约三分之一的位置。 Helpfile:设置对话框的帮助文件,可省略。 Context:设置对话框的帮助主题编号,可省略。3编写代码(1)在VBE中,单击菜单“插入/模块”命令插入一个模块。(2)在模块中输入以下代码:Sub inputinfo() Title = 输入个人信息 name1 = 请输入姓名: age1 = 请输入年龄: address1 = 请输入地址: strName = InputBox(name1, Title) age = InputBox(age1, Title) Addre

41、ss = InputBox(addres1, Title) Debug.Print 姓名:; strName Debug.Print 年龄:; age Debug.Print 地址:; AddressEnd Sub(3)按功能键“F5”运行子过程,将弹出“输入个人信息”窗口,如图3-2所示。在对话框中输入内容后按“回车”,或单击“确定”按钮。(4)接着输入“年龄”和“地址”信息,在“立即窗口”中将输出这些内容,如图3-3所示。 图3-2 输入个人信息 图3-3 输出结果例019 退出确认(Msgbox函数的应用)1案例说明在应用程序中,有时用户会由于误操作关闭Excel,为了防止这种情况,可在

42、退出Excel之前弹出对话框,让用户确认是否真的要关闭Excel。本例使用Msgbox函数弹出对话框,让用户选择是否退出系统。2关键技术使用MsgBox函数可打开一个对话框,在对话框中显示一个提示信息,并让用户单击对话框中的按钮,使程序继续执行。MsgBox函数语法格式如下:Value=MsgBox(prompt,buttons,title ,helpfile,context)通过函数返回值可获得用户单击的按钮,并可根据按钮的不同而选择不同的程序段来执行。该函数共有5个参数,除第1个参数外,其余参数都可省略。各参数的意义与Inputbox函数参数的意义基本相同,不同的地方是多了一个button

43、s参数,用来指定显示按钮的数目及形式、使用提示图标样式、默认按钮以及消息框的强制响应等。其常数值如表3-1所示。表3-1 按钮常数值常 量值说 明vbOkOnly0只显示“确定”(Ok)按钮vbOkCancel1显示“确定”(Ok)及“取消”(Cancel)按钮vbAbortRetryIgnore2显示“异常终止”(Abort)、“重试”(Retry)及“忽略”(Ignore)按钮vbYesNoCancel3显示“是”(Yes)、“否”(No)及“取消”(Cancel)按钮续表 常 量值说 明vbYesNo4显示“是”(Yes)及“否”(No)按钮vbRetryCancel5显示“重试”(Re

44、try)及“取消”(Cancel)按钮vbCritical16显示Critical Message图标vbQuestion32显示Warning Query图标vbExclamation48显示Warning Message图标vbInformation64显示Information Message图标vbDefaultButton10以第一个按钮为默认按钮vbDefaultButton2256以第二个按钮为默认按钮vbDefaultButton3512以第三个按钮为默认按钮vbDefaultButton4768以第四个按钮为默认按钮vbApplicationModal0进入该消息框,当前应用

45、程序暂停vbSystemModal4096进入该消息框,所有应用程序暂停表3-1中的数值(或常数)可分为四组,其作用分别为: 第一组值(05)用来决定对话框中按钮的类型与数量。 第二组值(16,32,48,64)用来决定对话框中显示的图标。 第三组值(0,256,512)设置对话框的默认活动按钮。活动按钮中文字的周转有虚线,按回车键可执行该按钮的单击事件代码。 第四组值(0,4096)决定消息框的强制响应性。buttons参数可由上面4组数值组成,其组成原则是:从每一类中选择一个值,把这几个值累加在一起就是buttons参数的值(大部分时间里都只使用前三组数值的组合),不同的组合可得到不同的结

46、果。3编写代码(1)在VBE中,双击“工程”子窗口中的“ThisWorkbook”打开代码窗口,如图3-4所示。(2)在代码窗口左上方的对象列表中选择“Workbook”,如图3-5所示。(3)在代码窗口右上方的事件列表中选择“BeforeClose”,如图3-6所示。代码窗口中将自动生成事件过程结构如下: 图3-5 对象列表 图3-6 事件列表Private Sub Workbook_BeforeClose(Cancel As Boolean)End Sub(4)在上面生成的事件过程中输入以下代码:Private Sub Workbook_BeforeClose(Cancel As Bool

47、ean) Dim intReturn As Integer intReturn = MsgBox(真的退出系统吗?, vbYesNo + vbQuestion, 提示) If intReturn vbYes Then Cancel = TrueEnd Sub(5)保存Excel工作簿。(6)关闭Excel工作簿时,将弹出如图3-7所示的对话框。单击“是”按钮将退出Excel,单击“否”按钮将返回Excel工作簿。3.2 分支结构分支结构,又叫选择结构。这种结构的程序将根据给定的条件来决定执行哪一部分代码,而跳过其他代码。例020 突出显示不及格学生1案例说明本例判断学生成绩表中的成绩,如果成绩

48、不及格(低于60分),则将该成绩着重显示出来。如图3-8所示(左图为原成绩,右图突出显示不及格成绩)。图3-8 突出显示不及格学生2关键技术在本例中,需要进行一个判断(成绩是否低于60分),这时可使用IfThen语句。用IfThen语句可有条件地执行一个或多个语句。其语法格式如下:If 逻辑表达式 Then 语句1 语句1 语句nEnd If逻辑表达式也可以是任何计算数值的表达式,VBA将为零(0)的数值看做False,而任何非零数值都被看做True。该语句的功能为:若逻辑表达式的值是True,则执行位于Then与End If之间的语句;若逻辑表达式的值是False,则不执行Then与End

49、If之间的语句,而执行End If后面的语句。其流程图如图3-9所示。IfThen结构还有一种更简单的形式:单行结构条件语句。其语法格式如下:If 逻辑表达式 Then 语句该语句的功能为:若逻辑表达式的值是True,则执行Then后的语句;若逻辑表达式的值是False,则不执行Then后的语句,而执行下一条语句。3编写代码(1)打开“学生成绩表”。(2)按快捷键“Alt+F11”进入VBE环境。(3)单击菜单“插入/模块”命令向工程中插入一个模块,并编写以下代码:Sub 显示不及格学生() Dim i As Integer For i = 3 To 11 If Sheets(1).Cells

50、(i, 2).Value 60 Then Sheets(1).Cells(i, 2).Select Selection.Font.FontStyle = 加粗 Selection.Font.ColorIndex = 3 End If NextEnd Sub(4)关闭VBE开发环境返回Excel。(5)在功能区“开发工具”选项卡的“控件”组中,单击“插入”按钮弹出“表单控件”面板,如图3-10所示。图3-10 插入按钮(6)在“表单控件”面板中单击“按钮”,拖动鼠标在工作表中绘制一个按钮。当松开鼠标时,将弹出“指定宏”对话框,如图3-11所示。(7)在“指定宏”对话框中,单击选中“显示不及格学生

51、”宏,单击“确定”按钮。(8)右击工作表中的按钮,弹出快捷菜单如图3-12所示,单击“编辑文字”菜单,修改按钮中的提示文字为“显示不及格学生”。 图3-11 指定宏 图3-12 编辑文字(9)单击“显示不及格学生”按钮,执行宏代码,成绩表中不及格成绩将突出显示为粗体、红色,如图3-13所示。图3-13 执行程序例021 从身份证号码中提取性别1案例说明在很多信息系统中都需要使用到身份证号码,身份证号码中包含有很多信息,如可从其中提取性别。我国现行使用的身份证号码有两种编码规则,即15位居民身份证和18位居民身份证。15位的身份证号的编码规则。dddddd yymmdd xx p18位的身份证号

52、的编码规则。dddddd yyyymmdd xx p y其中: dddddd为地址码(省地县三级)18位中的和15位中的不完全相同。 yyyymmdd yymmdd 为出生年月日。 xx序号类编码。 p性别。 18位中末尾的y为校验码。2关键技术在IfThen语句中,条件不成立时不执行任何语句。在很多时候需要根据条件是否成立分别执行两段不同的代码,这时可用IfThenElse语句,其语法格式如下:If 逻辑表达式 Then 语句序列1 Else 语句序列2End IfVBA判断“逻辑表达式”的值,如果它为True,将执行“语句序列1”中的各条语句,当“逻辑表达式”的值为False时,就执行“语

53、句序列2”中的各条语句。其流程图如图3-14所示。3编写代码(1)新建Excel工作簿,在VBE中插入一个模块。(2)在模块中编写以下代码:Sub 根据身份证号码确定性别() sid = InputBox(请输入身份证号码:) i = Len(sid) If i 15 And i 18 Then 判断身份证号长度是否正确 MsgBox 身份证号码只能为15位或18位! Exit Sub End If If i = 15 Then 长度为15位 s = Right(sid, 1) 取最右侧的数字 Else 长度为18度 s = Mid(sid, 17, 1) 取倒数第2位数 End If If

54、Int(s / 2) = s / 2 Then 为偶数 sex = 女 Else sex = 男 End If MsgBox 性别: + sexEnd Sub(3)切换到Excel环境,添加一个按钮“从身份证号码提取性别”,并指定执行上步创建的宏。(4)单击“从身份证号码提取性别”按钮,弹出如图3-15所示对话框。(5)输入身份证号码后单击“确定”按钮,将在如图3-16所示对话框中显示性别。 图3-15 输入身份证号码 图3-16 显示性别例022 评定成绩等级1案例说明本例将成绩表中的百分制成绩按一定规则划分为A、B、C、D、E五个等级,如图3-17所示。图3-17 评定成绩等级其中各等级对应的成绩分别为: A:大于等于90分; B:大于等于80分,小于90分; C:大于等于70分,小于80分; D:大于等于60分,小于70分; E:小于60分。2关键技术本例共有五个分支,使用IfThenElse这种二路分支结构也可完成,但需要复杂的嵌套结构才能解决该问题。其实VBA中提供了一种IfThenElseIf的多分支结构,其语法格式如下:I

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!