Excel 2010 VBA编程与实践

副标题:无

作   者:罗刚君,章兰新,黄朝阳编著

分类号:

ISBN:9787121120398

微信扫一扫,移动浏览光盘

简介

本书是“Excel疑难千寻千解”丛书之一,为读者展示VBA编程的实战技巧,包括工作中的疑难处理方案、自定义函数技术、代码封装技术、功能区设计技术,以及插件开发实战与原理分析。本书侧重于“解决问题”,主要展示诸多常见疑难的解决方案。阅读本书,可以解决工作中的诸多疑难杂症,大大提高工作效率,且有助于提升编程能力、拓展思路,将理论向实战迈进。 本书有一个贯穿全文的思想:让代码同时具备准确、纠错、兼容和效率四个特性,所以本书所有案例都在准确性与高效性的基础上提供完善的错误处理措施与思路讲解,且所有案例都通用于Excel 2003、2007和2010。作者使用Excel 2010界面写作,但代码在多个版本中都可以正常运行,不需要任何修改。 本书包括251个案例,最后一个是VBA的大型综合应用——开发工资管理系统。书中每个案例采取疑难描述、解决方案、操作方法、原理分析、知识扩展五个步骤进行讲解,力图解决问题之外还让读者可以通晓其思路和原理。 本书配合《Excel VBA程序开发自学宝典》学习会有更好效果,该书侧重于VBA的基础理论教学,而本书则侧重于解决实际问题,属于该书配套的进阶应用。前者学习理论与语法,而通过本书学习思路与技巧。 本书既适合Excel VBA用户参考学习,又可以作为大中专院校或者企业的培训教材,同时对于在数据处理与分析方面有实战经验的用户也有较高的参考价值。 序 一 在用Excel的人很多,会用Excel的人很少。类似的情况也同样出现在Excel图书上,介绍Excel的图书很多,真正对读者有用的书很少。 在浏览过琳琅满目、各种类型的Excel图书之后,在领略过百科全书式的详细解析和武功秘籍般的招式演绎之后,依然有这样一本“Excel疑难千寻千解”能够让人眼前一亮。令人刮目相看的原因在于,这部书真正把立场和视角建立在了读者的基础上——每一个问题都来源于Excel用户可能真实面对的疑惑和困扰,每一个解答可能正是许多坐在计算机前束手无策的朋友正在搜寻的目标。这样一部图书真正做到了理解读者在想些什么,体会到了读者正在面对怎样的困境,从而引领我们从四处碰壁的电子迷宫中轻松突围。而本书的作者,这些技术超群的Excel专家们,这些被称为电子世界的罗宾汉们,用他们的专业精神和实用技术,给众多受困于Excel无边苦海中的数据工作者们奉献了一部真正意义上的Excel生存手册。 如果你也正准备踏上征服Excel的旅程,不妨就把这本书也放进你的背包行囊里吧! 微软全球最有价值专家MVP 方骥

目录

第1章 基础理论 1

1.1 快速获取帮助 1

疑难1 如何获取所有控件的属性及属性值 1

前期绑定与后期绑定 4

疑难2 部分对象在输入时没有成员列表提示,如何解决 5

没有成员列表的对象 6

疑难3 如何找出错误语句及获取错误原因并发送到开发者邮箱 6

利用shellexecute函数调用程序的方式 8

1.2 程序防错要点 8

疑难4 程序出错有哪些原因 9

常见错误分析 9

疑难5 如何获取vba所有运行时错误的详细说明 10

通过error函数获取错误信息 12

疑难6 如何在执行完毕后报告出错次数及原因 13

捕捉所有错误信息 14

疑难7 如何开发完善的程序 15

数组区域对vba程序的影响 17

疑难8 防错语句在程序或者函数中应用有哪些优势 17

利用err.number属性判断错误类型 19

1.3 代码优化之道 19

.疑难9 如何优化过程“隐藏偶数行” 19

关闭screenupdating提升程序效率 20

疑难10 如何优化过程“设置字体属性” 21

利用with简化对象引用 22

疑难11 如何优化过程“隔三行求和” 22

减少单元格的写入次数提升程序效率 23

疑难12 如何优化过程“b列所有图片右移” 23

有针对性地使用select方法 24

疑难13 如何优化过程“建工作表目录” 25

vba中数组的作用 26

疑难14 如何优化过程“成绩评语” 26

区分适合置于循环体中的语句 27

疑难15 如何优化过程“删除空单元格所在行” 27

不用循环而选择多个符合条件的单元格 28

疑难16 如何优化过程“批量修改批注背景色” 28

区分父对象与子对象 29

疑难17 如何优化过程“隔一行插入一行” 30

计算模式对程序效率的影响 31

疑难18 如何优化过程“获取外网ip地址” 31

使用变量的条件 32

1.4 提升代码的兼容性 32

疑难19 程序的兼容性体现在哪些方面 33

操作系统对vba的影响 33

疑难20 如何让程序适应不确定对象 34

使用动态区域引用让代码具有更强的通用性 37

疑难21 如何让程序兼容excel多版本 37

识别excel的版本号 39

疑难22 如何让程序兼容英文和中文系统 40

利用api函数识别简体、繁体中文与英文 41

疑难23 如何让程序兼容简体与繁体中文 41

让代码适应简体与繁体系统 42

1.5 练习与思考 42

第2章 查找引用 44

2.1 本表查找 44

疑难24 如何查找不及格学生姓名并突出显示 44

利用union方法合并多区域 46

疑难25 如何一次性罗列表中三省员工的姓名 47

find方法的使用技巧 49

疑难26 如何在输入时逐步查找 50

通过keyup事件自动执行查询 52

疑难27 如何按指定的格式查找 53

findformat的使用技巧 54

疑难28 如何实现字体格式替换 54

替换格式的条件 55

疑难29 如何查找所有“#”并标为上标 56

区分上标、下标的应用对象 57

疑难30 如何找出还款时间超过一年及未还款的客户信息 57

日期函数datedif的特性 59

疑难31 可以将查找到的所有数据串连并写入剪贴板中吗 59

引用“microsoft forms 2.0 object library”的两种方法 60

疑难32 可以创建一个工具栏来方便查找吗 61

设置lookat参数实现模糊查找 63

疑难33 如何快速罗列出每个产品最新报价 63

collection对象的应用技巧 65

疑难34 如何在具有合并单元格的区域中多条件逐步查找 65

通过“mergearea”属性返回合并区域 67

疑难35 如何查找成绩并分批发邮件 67

vba中发编写邮件正文时的换行符的表示法 68

2.2 跨表及多表查找 69

疑难36 如何引用数据表创建多级下拉菜单 69

?“actioncontrol”对象的功能与限制 72

疑难37 如何将所有表中查找的完成数汇总到总表 73

利用specialcells定位实现快速查找 74

疑难38 在窗体中罗列每月产量冠军名单 74

不采用循环,一次性找出最大值所在行 76

疑难39 如何将具有外部数据引用的单元格转换成值 76

通过“[]”和“’!”定位具有外部链接的公式 77

疑难40 如何让链接到其他表中隐藏单元格的超链接生效 77

通过xlsheetvisible属性切换工作表显示状态 78

疑难41 如何实现多部门电话资料模糊查询 79

target与activecell的区别 80

疑难42 如何实现所有未收货款者在状态栏随机显示 80

利用ontime定时执行程序 82

2.3 文件查找与转换 82

疑难43 如何判断指定文件是否存在 82

利用dir函数判断文件是否存在 83

疑难44 如何进行深度查找且创建文件目录 84

filedialog对象的应用 85

疑难45 如何查找并备份所有“3月生产表” 86

copyfile方法对文件复制 88

疑难46 如何将所有excel文件转换成xps或pdf文件 88

利用printout方法将工作表转换成xps文件 90

疑难47 如何在网上邻居的共享盘中查找并打开“单价表” 91

利用fileexists方法判断文件是否存在 92

疑难48 如何实现全盘查找“上海滩.mp3”,有则自动翻放 92

播放音乐的三种方式 94

疑难49 如何在网上自动搜索与当前单元格同名的歌曲并播放 95

利用网页地址索引歌曲并自动播放 96

2.4 图片查找与引用 96

疑难50 如何瞬间删除当前表中所有图片 96

drawingobjects与shape对象的区别 97

疑难51 可以将签名图片复制到表中所有签名处吗 97

复制图形对象与复制数据的区别 98

selection代表什么 99

疑难52 如何像vlookup引用数据一样引用图片 99

对图片设置公式引用其他图片 101

疑难53 如何通过窗体预览指定目录中的所有图片 101

通过loadpicture函数加载图片 103

2.5 练习与思考 103

第3章 数据处理 104

3.1 定位的技巧 104

疑难54 如何选择当前表0~100之外的数据 104

使用定位技术减少循环语句的循环次数 105

疑难55 如何定位奇数行 105

mod配合specialcells定位奇数行 106

疑难56 可以瞬间定位并隐藏所有错误值吗 107

通过specialcells定位错误值 108

疑难57 如何在输入数据时自动定位下一行的目标单元格 109

限制删除单元格的数据时不触发工作表的change事件 110

疑难58 可以将标题以外的区域转换成“万”为单位吗 110

vba中如何处理双引号 111

疑难59 如何定位当前表最大值和最小值 112

调用工作表函数并配合find方法查找最大值 113

疑难60 能定位并标识高于平均值的单元格吗 113

vba中数字、汉字的大小关系 115

疑难61 如何反向选择工作表区域 115

辅助区的重要性 116

3.2 数据处理及格式转换 116

疑难62 如何将单词在大写、小写与首字母大写间任意切换 116

利用strconv函数对英文进行大写、小写和首字母大写转换 117

疑难63 如何将二维的入库表转换成一维排版方式 118

利用数组提升代码执行效率 119

疑难64 能否不用循环对选区进行横向与纵向汇总 120

?“r1c1”引用方式的优点 121

疑难65 如何批量地将字符串中的字母、数字和汉字分离出来 122

利用like运算符区别汉字、数字和字母 123

疑难66 可以将表达式转换成运算结果吗 124

通过evaluate计算表达式 125

疑难67 如何快速填充所有空单元格 125

利用intersect引用区域提升代码通用性 126

疑难68 如何将产品销售地区瞬间转换成下拉列表 126

利用代码设置有效性序列 127

疑难69 数据有效性可以设置三级关联下拉列表吗 128

利用dictionary对象获取唯一值 130

疑难70 可以对职员信息表按学历排序吗 130

新旧版本中sort的差异 131

疑难71 可以不打开工作簿而提取其数据吗 132

vba中调用公式实现从未打开的工作表中取值 133

疑难72 如何保护所有公式不能修改 134

切换locked 属性实现公式保护 135

疑难73 如何实现金额数据分解 135

mid取文本的特点 137

疑难74 vba可以破解工作表密码吗 137

表的分类 138

疑难75 如何对分段编号进行合并转换 138

减少数组变量空间分配次数的方法 140

疑难76 如何将5个大小相同选区的数据互换 141

areas与currentregion的区别 142

疑难77 如何取得1000之内的质数 142

质数的特性 143

疑难78 可以生成指定范围的不重复随机数吗 144

collection对象的优势 145

疑难79 如何利用vba对工作簿进行减肥 145

正确删除单元格,减少文件体积 146

疑难80 如何让数字在文本与数值之间快速切换 147

在文本与数值间切换的vba思路 148

疑难81 如何将“/”分隔的数据进行汇总 149

以“/”为分隔符取其左右字符的思路优化 150

疑难82 可以对指定区域进行自动更正吗 150

利用replace方法实现限定区域的自动更正 151

疑难83 可以对包括“星期”的所有工作表同时添加公式吗 151

vba在单表和多表中输入公式的区别 152

疑难84 在vba中如何控制字符朗读 153

利用speech朗读字符 153

疑难85 能实现粘贴数据时跳过隐藏区吗 154

如何确定单元格是否隐藏 156

疑难86 如何对相同值进行标识着色 156

疑难87 如何根据工资计算零钞数量 159

获取选区第一列及已用区域的交集 160

疑难88 如何批量实现区域数据真正四舍五入 161

通过round解决数据显示的假象 162

疑难89 如何优化具有大量公式引用的数据计算 163

公式与vba在计算上的区别 164

clearcontents与clear的区别 164

3.3 单元格合并技巧 164

疑难90 可以在表格中合并同类项吗 165

利用displayalerts属性关闭合并单元格的提示及加快执行速度 166

疑难91 如何实现按产品合并产量数据表 166

利用变量暂存数据,代替辅助区 168

疑难92 如何实现合并时保留所有数据,而拆分时可以还原 168

看不见的特殊字符的应用 171

疑难93 可以选择当前表所有合并单元格吗 171

定位合并单元格 172

疑难94 如何取消所有合并区域并且对所有单元格填充数据 172

合并区域的赋值方式 174

疑难95 合并单元格后仍然可以正常引用区域中的所有值吗 174

复制合并属性 175

疑难96 如何将指定单元格合并链接到一个选区 175

对一个区域追加链接 177

疑难97 跨页合并单元格可以重新合并从而适应分页打印吗 178

判断合并单元格是否跨页 179

疑难98 可以让合并单元格自动换行吗 180

工作表事件代码与普通过程的区别 181

3.4 报表合并与拆分 181

疑难99 如何合并所有工作表到一个表中 182

让复制数据时既去除公式又不影响数值的显示状态 183

疑难100 如何实现多表合并汇总 184

利用相对引用公式批量合并数据,避免使用循环 185

疑难101 如何将多个工作簿中的所有工作表合并到一个工作表中 186

通过禁用工作簿重算提升代码效率 189

疑难102 如何将多个工作簿数据合并到一个工作簿中 189

利用变量作为辅助进行条件判断 193

疑难103 如何实现报表拆分 193

利用复制格式和复制数值实现完美复制,避免复制后显示错误 195

疑难104 如何将工作簿中每个工作表转换为独立工作表 197

根据版本号决定文件格式 198

3.5 单元格颜色的综合应用 199

疑难105 excel不同版本在颜色处理方面有分别吗 199

不同版本中颜色差异对程序的影响 200

疑难106 可以对excel 2010的按颜色筛选再做扩展吗 201

currentregion与usedrange对程序的影响 204

疑难107 如何让按颜色排序可以在excel 多版本间通用 204

借用辅助和调用老版本的sort功能提升程序的通用性 206

疑难108 如何将颜色分类重排且通用于excel多个版本 206

将颜色属性转换成数据,辅助程序执行 208

疑难109 可以按颜色对选区数据分类汇总吗 208

修改数据源与修改颜色在vba事件中的差异 211

疑难110 如何用函数对数据背景和字体按颜色汇总 212

通过volatile让函数声明为易失性函数 213

3.6 重复数据处理 213

疑难111 如何清空重复值单元格并标识 214

countif函数在去重复值中的应用 215

countif函数的限制 216

疑难112 可以对重复出现的数据进行圈释吗 216

利用circleinvalid对单元格加圈,以及circleinvalid的限制 217

疑难113 如何筛选唯一值 218

使用错误处理语句配合collection取唯一值 219

疑难114 可以在输入重复值时提示用户吗 219

通过enableevents提高程序的执行效率 220

疑难115 如何对两列数据提取相同项与不同项 221

利用transpose函数实现区域转数组 222

疑难116 如何将多行多列相同者保留最后一个数据 223

双层transpose配套join实现横向区域转字符串 224

3.7 数据透视 224

疑难117 如何按职务或部门进行工资数据的透视分析 225

利用excel 2003的透视表代码提升程序兼容性 226

疑难118 如何实现多重数据透视 227

利用array嵌套创建多重透视 228

疑难119 如何实现同时透视多工作簿中的多工作表数据 229

解决vba创建透视表名称冲突的两种方法 230

3.8 练习与思考 231

第4章 报表打印 232

4.1 打印设置 232

疑难120 如何一次性设置“总表”以外工作表的页脚 232

选择工作表数量对页脚的影响 233

疑难121 如何设置所有工作表的已用区域为打印区域 233

设置打印区域对数据打印的影响 234

疑难122 可以记录工作簿的打印次数吗 235

借用文件自定义属性记录打印次数 235

4.2 特殊打印格式设计 236

疑难123 如何设计工资条打印格式 237

借用辅助列提升程序的容错性 240

疑难124 如何打印工资卡 240

引用普通工作簿和加载宏工作簿的区别 243

疑难125 vba可以实现对工作表分页小计吗 243

利用宏表函数get.document(50)获取工作表页数 246

疑难126 如何同时打印顶端标题和底端标题行 246

计算第一个分页符的所在行号 253

疑难127 可以借用图片实现底端标题打印吗 253

export与api方式将区域转换成图片的差异 255

疑难128 如何制作针式多联打印机打印格式的报表 256

利用hpagebreaks.add实现手动分页 258

疑难129 如何实现双面打印 259

中断与禁止中断程序 260

疑难130 可以仅仅打印活动单元格所在页吗 260

利用location计算分页符位置,配合循环判断当前页序号 261

4.3 练习与思考 262

第5章 函数开发 263

5.1 自定义函数基础 263

疑难131 如何开发自定义函数 263

office版本对自定义函数参数的影响 267

疑难132 函数与参数名规则如何 267

自定义函数命名规则 267

疑难133 自定义函数在不同版本中有何差异 269

颜色对自定义函数的影响 271

5.2 开发自定义函数 271

疑难134 如何对区域内混杂字符串中的数字求和 271

excel公式对连续“+”的处理方式 273

疑难135 如何分离字符串中的数值、英文和汉字 273

正则表达式在字符处理中的优势 274

疑难136 如何将文本混杂字符串及表达式转换为值 274

正则表达式中数字、汉字的表达方式 276

疑难137 如何按时间段计算汇总金额 277

根据计算对象的规范性决定函数参数的个数 278

疑难138 如何对具有分隔符的数据分类汇总 279

split函数产生的数组的特点 280

疑难139 可以取姓名的汉语拼音首字母吗 280

汉字与拼音首字母的对应关系 282

疑难140 超过15位的数字如何求和 282

excel对数据计算的长度限制 284

疑难141 可以扩展vlookup函数实现返回多个结果吗 284

利用find替代vlookup实现多个数据查找 285

疑难142 如何利用函数创建文件目录 286

自定义函数中如何表示活动单元格 287

疑难143 可以用函数连接内存数据和区域中所有文本吗 288

利用paramarray声明不确定个数的函数参数 290

疑难144 如何根据身份证号码获取出生日期、年龄和性别 290

身份证号码所包含的个人信息 292

疑难145 如何将多个单元格中的人民币数字合并且转为大写金额 293

声明正确的类型优化函数效率 294

疑难146 如何计算两个区域的不同项 294

自定义函数对大区域运算的限制 296

疑难147 如何突破rank函数排名的限制 296

去重复值的3个方法 297

疑难148 如何实现按数据出现次数排序 298

collection与字典的区别 300

疑难149 可以用一个函数将人民币大小写相互转换吗 300

通过拆分法理解代码 302

疑难150 可以用函数改变引用区域的值吗 303

利用自定义函数修改引用区域的值的两种方法 305

疑难151 如何对两个以逗号分隔的乱序字符串比较异同 306

split函数嵌套应用从字符串中分别获取品名与数量 307

疑难152 可以利用函数添加数据监控吗 308

借用函数的易失性实现自动执行,类似于工作表事件 309

疑难153 可以让函数的两个参数全是可选参数吗 310

将单个参数声明为可选参数的方法 311

疑难154 可以利用函数批量对工作表命名吗 312

借用类模块将工作簿级事件提升为应用程序级事件 314

疑难155 如何让自定义函数运算结果是一个数组 314

函数返回数组的条件 316

5.3 自定义函数的管理 316

疑难156 如何对自定义函数添加说明 316

通过macrooptions定义函数的帮助信息 318

疑难157 如何对自定义函数的参数添加帮助 318

借用register为自定义函数添加参数说明及分类 321

疑难158 可以将加载宏中的自定义函数复制到活动工作簿吗 322

判断用户的设置是否允许访问vba工程 325

疑难159 如何封装自定义函数,使其代码不可查看 325

利用vb 6.0企业版封装自定义函数 328

5.4 练习与思考 328

第6章 文件目录 329

6.1 文件管理 329

疑难160 可以实现文件双向备份吗 329

利用savecopyas备份文件 330

疑难161 如何让文件使用一次后即自我销毁 331

文件“自杀”的条件 331

疑难162 文件有哪些属性,如何控制它们 332

getattr函数搭配and运算符判断文件是否具备某属性 333

疑难163 如何删除指定目录中一年前创建的文件 334

疑难164 可以删除18个月没有使用的文件吗 335

用datedif计算文件闲置时间的技巧 336

疑难165 如何对文件批量重命名 336

获取文件名的方法 338

疑难166 可以在收藏夹中对当前工作簿创建快捷方式吗 338

获取收藏夹地址的方法 339

疑难167 文本文件与excel如何批量转换 341

文本文件与工作表的相互转换 342

疑难168 如何实现将指定文件作为附件发送邮件 343

outlook的前期绑定与后期绑定 344

6.2 目录管理 345

疑难169 如何瞬间删除d盘中所有空文件夹 345

将代表磁盘的字符串转换成磁盘对象的方法 346

疑难170 如何获取c盘以外所有磁盘的文件目录列表 346

通过fso对象判断某磁盘是否存在 347

疑难171 如何让多版本excel可以随心所欲选择打开方式 348

将excel快捷方式导入“sendto”文件夹 349

疑难172 如何批量创建以本月每日日期命名的文件夹 350

利用dateserial的纠错功能计算本月天数 351

6.3 练习与思考 351

第7章 图表设计 352

7.1 图表编辑 352

疑难173 如何利用快捷键对选区创建图表 352

对宏指定组合键的方式及特点 355

疑难174 如何批量修改图表标签 355

操作图表标签的条件 359

疑难175 如何批量移位标签 359

移位图表标签的限制 362

疑难176 如何对图表系列设置条件格式 362

填充图表系列的两种方法 365

7.2 多表管理 366

疑难177 如何将所有图表大小调整一致且对齐 366

图表名称的特点 367

疑难178 如何将所有图表转换成jpg文件保存到文件夹 368

将图片转换为图片的思路 369

7.3 练习与思考 369

第8章 图形对象 370

8.1 图形对象的基本操作 370

疑难179 可以仅仅删除e列存放的图表以外的图形对象吗 370

通过topleftcell和bottomrightcell定位图片位置 371

疑难180 如何将工作簿所在路径的图片全部导入工作表 371

pictures.insert与shapes.addpicture的分别 373

疑难181 如何让所有图形对齐所在单元格左边框 374

通过统一topleftcell属性对齐图片 374

疑难182 如何实现所有图片刚好适应所在单元格大小与边距 375

行高与列宽的特点 376

疑难183 如何将选区转换成图片并保存到桌面 377

借用图表中介实现区域转图片 379

8.2 批注的高级应用 379

疑难184 如何利用快捷键在单元格插入当前日期的批注 379

通过设置autosize属性使批注框自动调整大小 380

疑难185 如何将指定列的数据批量追加到批注中 381

强制返回选区第一列的3种方法 383

疑难186 如何实现指定区域批量创建历史记录于批注中 383

让代码应用于所有工作簿的方法 386

疑难187 如何批量导入图片到单元格的批注中 386

对批注框设置背景的条件 388

疑难188 可以对批注进行替换吗 388

? “unload me”、“end”和“exit sub”的区别 391

疑难189 如何在所有批注末尾追加当前日期 391

利用isdate判断批注最后一行是否为日期 392

疑难190 如何批量修改批注的外观 392

声明正确的变量类型及防错 394

疑难191 可以改造默认的插入批注功能吗 394

正确引用右键菜单 395

8.3 图形对象综合应用 396

疑难192 可以让图片跟随鼠标移动吗 396

利用doevents函数展示动画过程 398

疑难193 如何创建图片目录与批量插入图片 398

单元格的行高与列宽限制 401

疑难194 如何利用窗体预览图片 402

控件背景图片的3种显示方式 404

疑难195 vba中的窗体能否转换成图片保存在工作表中 404

调用api函数调用截图的快捷键 405

疑难196 可以在工作表中导入gif动画吗 406

播放gif文件时不能将文件嵌入工作表 408

疑难197 如何实现输入品名时查看当前路径中的同名图片 408

利用api计算图片文件的长与宽 409

疑难198 可以让鼠标指定图片时放大图片吗 410

利用api函数获取鼠标指针坐标 413

疑难199 如何实现图片批量导入并自动排版打印 413

利用fso技术中的getextensionname获取文件后缀名 417

8.4 练习与思考 417

第9章 窗体控件 418

9.1 activex控件应用 418

疑难200 可以利用列表框强化数据有效性吗 418

列表框相较数据有效性的灵活性 420

疑难201 如何利用复合框引用区域的唯一值 421

复合框调用数据的两种方法及各自优势 423

疑难202 利用复合框和列表框实现二级列表 423

mousemove事件获取列表框的值的技巧 426

9.2 窗体设计技巧 426

疑难203 如何实现利用快捷键启用和关闭窗体 426

keypress事件可以检查的按键及例外项目 428

疑难204 如何用一个窗体展现多个不同内容 429

分页显示的两种方法 432

疑难205 如何用一个按钮执行多个功能 433

利用passwordchar属性隐藏敏感字符 435

疑难206 如何让日期输入器窗体紧跟活动单元格 435

影响窗体left、top属性的因素 436

疑难207 如何设计五角星窗体 437

显示五角星窗体的方法 440

疑难208 vba可以设计彩蛋吗 440

mouseup事件中shift参数的作用 442

疑难209 如何通过窗体控制实现工作表隔行插入行 442

通过shift参数控制insert方法的单元格移动方向 446

疑难210 如何在窗体中开发右键快捷菜单 446

创建自定义菜单的基本思路 448

疑难211 窗体可以利用鼠标自由调整大小吗 449

利用api让窗体可以自由拖动的思路 449

疑难212 在窗体show状态下可以调整控件大小吗 450

mousemove事件中各参数的作用 452

疑难213 在窗体show状态下如何批量设置控件格式 452

可修改控件字体格式的几种对话框 454

疑难214 在窗体show状态下如何调整控件位置 455

mousemove事件中button参数的应用技巧 456

疑难215 如何检测窗体中文本框的数据有效性 456

对文本框设置数据有效性检验的优势 457

疑难216 如何设计悬浮感应式窗体 458

通过调整边距控制窗体的动态效果 460

疑难217 可否瞬间备份所有窗体 460

vba工程中的子对象分类 461

疑难218 能否对窗体中所有控件同步缩放 462

窗体的zoom属性的特点 464

疑难219 能否通过代码生成窗体及控件 464

用代码操作代码、窗体和模块的优缺点 466

9.3 窗体与工作表之数据交互 467

疑难220 可以实现多工作表筛选并将结果导入窗体吗 467

列表框的columnheads属性的特点 469

疑难221 多工作表数据输入窗体如何设计 469

利用setfocus方法控制焦点的转移 472

疑难222 如何开发日历工具箱 472

excel对日期计算的限制 476

疑难223 如何实现多条件电话查询 476

? “textbox1_change”事件与“textbox1_exit”事件的异同 478

疑难224 如何开发复选框批量管理工具 478

认识复选框 481

疑难225 如何让窗体控件自适应工作表数据变化 481

用代码创建新控件 483

疑难226 可以让列表框具有拖放功能吗 484

控件拖放相关的事件 485

本例仅支持一次拖放一行数据 486

疑难227 如何开发四则运算自动出题机 486

通过rnd函数产生指定范围的随机数 488

9.4 开发动画窗体 489

疑难228 如何让窗体中的文本框循环滚动 489

控制动画速度的两种方式 491

疑难229 窗体中可以播放gif和flash动画吗 491

excel播放gif的原理 493

疑难230 如何让窗体产生百叶窗动画 493

疑难231 如何设计精美边框且带动感的窗体 495

网页设计与vba 496

疑难232 如何设计动态的启动画面 497

网页动画的基本语法 499

疑难233 如何让窗体中产生跟随鼠标指针的文字动画 500

vba设计动画的限制 501

9.5 练习与思考 501

第10章 插件开发 502

10.1 定制菜单与工具栏、功能区 502

疑难234 如何定制新菜单、工具栏与功能区 502

加载宏的特性与安装方法 506

疑难235 可以任意组合内置命令吗 507

commandbars对象的id参数的作用 508

疑难236 如何改造内置命令的功能 509

修改onaction属性替换内置功能 510

疑难237 可以提取所有内置图标及其编号吗 511

actioncontrol属性的作用 513

疑难238 可利用菜单控制分页符、零值和批注的显隐吗 513

excel不同版本的自启动路径 515

疑难239 如何仅仅利用菜单创建工作表目录 516

让一个过程执行多个菜单执行多个功能的方法 518

疑难240 如何让菜单具有感应功能 518

state属性的特点与应用 520

疑难241 如何让菜单和功能区中显示自己的照片 521

控制功能区中图片库分布方式的4个参数 524

疑难242 如何设计可单选与复选的新工具栏菜单 525

具有单选与复选特效的图标组合 528

10.2 开发通用插件 528

疑难243 如何开发定位工具箱扩展excel定位的功能 528

excel定位的限制 533

疑难244 如何开发通用的多区域复制插件 534

疑难245 如何开发单元格批量合并插件 535

操作大面积区域时利用警告框提示用户 538

疑难246 可以利用插件输入常用vba代码吗 538

计算当前代码行的行号 542

疑难247 如何利用插件删除当前工作簿所有代码 543

activeworkbook与thisworkbook的分别 544

疑难248 如何利用treeview控件打造工作簿浏览器 545

imagelist控件的特点与作用 547

10.3 封装dll插件 548

疑难249 如何封装数值与文本互换的dll插件 548

使用vb 6.0封装dll的4个重点 554

疑难250 如何设计字符串分离与表达式计算插件 555

利用vb开发功能区的优势 563

10.4 练习与思考 563

第11章 工资管理系统 564


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Excel 2010 VBA编程与实践
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    亲爱的云图用户,
    光盘内的文件都可以直接点击浏览哦

    无需下载,在线查阅资料!

    loading icon