您的位置:新葡亰496net > 新葡亰496net > 新葡亰496net已可从第二书店订购,excel的宏该如何

新葡亰496net已可从第二书店订购,excel的宏该如何

发布时间:2019-07-15 06:41编辑:新葡亰496net浏览(146)

    问题:如何快速学习Excel VBA?

    上午出版社打电话告知书已经正式出版,刚刚看了第二书店,目前已可以订购,但状态是缺货,需要的可以去订购,各个书店估计个把月也可以看到了。

    问题:excel的宏该如何使用?编程零基础应该怎么开始学习?

    VBA概述

    “宏”,是指一系列EXCEL能够执行的VBA语句,学写宏先从录制宏开始。以下将要录制的宏非常简单,只是改变单元格颜色。完成以下步骤:

    回答:

    订购:

     
    新葡亰496net 1

    回答:

        VBA(Visual Basic For Application)是VB语言在Office产品中的应用,它基于Visual Basic For Windows发展而来,Visual Basic For Windows是Microsoft于1992年推出的开发Windows应用程序的程序设计语言,由于语言简单,易用易学,所以深受用户的欢迎。而VBA的语法结构与Visual Basic For Windows基本相似,但它们之间是有本质区别的,Visual Basic For Windows是一种编程语言,它可以创建独立的应用程序,而VBA是一种语法结构类似于Visual Basic For Windows的脚本语言,一般来说,它都是被嵌入在Microsoft的Office产品中来执行的。

    1)打开新工作薄,同时确认其他工作薄已经关闭

    目前,VBA大多应用在EXCEL中,但VBA不仅仅局限在EXCEL中,整个Microsoft Office套件都可以使用VBA进行功能的关联与扩展。

    <Excel VBA应用开发从基础到实践>目录

    个人是零基础学习的VBA,目前在琢磨整体过去工作中的经验和技巧分享给大家。

        在Office 2000之前,VBA在Word、Excel、Access等Office系统软件中的运用是不一样的(那个时候Office家族中的产品为数不多),但是到Office 2000就统一起来了。Excel是第一个包含有VBA的Office产品,也是至今应用VBA最广泛的软件之一。自Office 2000之后,Excel、Word、PowerPoint、Access中已经有了统一标准的宏语言VBA,其中Excel和Access的VBA最为成熟(从Office 2000开始,Office家族中的产品开始多起来)。

    2)选择A1单元格。调出“常用”工具栏。

    我认为十分有必要学习VBA。

    第1章  Excel和VBA简介 1
    1.1  关于Excel和VBA 1
    1.2  Excel作为数据处理平台 3
    1.3  Excel作为开发平台 4
    1.4  宏、加载宏和VBA 5
    第1部分  入 门 篇
    第2章  Excel与宏 8
    2.1  宏 8
    2.2  录制宏 9
    2.2.1  宏的录制步骤 9
    2.2.2  录制宏的一个小例子 11
    2.3  运行宏 11
    2.3.1  运行录制的宏 11
    2.3.2  将宏加入菜单或工具栏 11
    2.4  查看和编辑宏 14
    2.5  加载宏 16
    第3章  VBA初步 19
    3.1  VBA简介 19
    3.2  VBA快速入门 20
    3.2.1  VBA开发环境 20
    3.2.2  VBA工程及其组成 21
    3.2.3  编写代码 23
    3.2.4  模块、过程和函数 25
    3.2.5  创建过程和函数 27
    3.2.6  过程调用 28
    3.2.7  变量 29
    3.2.8  程序流程 33
    3.2.9  条件语句 33
    3.2.10  循环语句 37
    3.2.11  数组 41
    3.2.12  善用工具及其他 42
    3.3  应用VBA操作Excel 45
    3.3.1  Excel对象模型 45
    3.3.2  Excel对象模型中的常用对象 46
    3.4  应用实例 48
    3.4.1  使用VBA合并列 48
    3.4.2  自动隐藏或显示表格中无数据的行 48
    3.4.3  使用VBA操作工作表单元格 49
    3.4.4  查找工作表的第一个空行 50
    3.4.5  改变Excel界面的标题 51
    3.4.6  隔行格式化工作表 52
    3.4.7  批量修改数据 52
    第4章  应用VBA自定义函数 54
    4.1  公式和函数 54
    4.1.1  公式及其组成 54
    4.1.2  引用 54
    4.1.3  名称和常量 58
    4.1.4  运算符和运算次序 58
    4.2  Excel工作表函数 59
    4.2.1  常用函数 60
    4.2.2  统计函数 60
    4.2.3  数组公式 61
    4.3  自定义函数 62
    4.3.1  创建自定义函数 62
    4.3.2  创建数组公式 65
    4.4  应用实例 65
    4.4.1  成绩统计辅助函数 65
    4.4.2  身份证号码处理函数 68
    第2部分  进 阶 篇
    第5章  VBA语言 72
    5.1  VBA程序的组成 72
    5.1.1  模块 72
    5.1.2  过程 73
    5.1.3  函数 76
    5.1.4  过程和函数调用 77
    5.1.5  注释 78
    5.2  数据类型 79
    5.2.1  常量和变量 79
    5.2.2  数据类型 80
    5.2.3  运算符 82
    5.2.4  数组 83
    5.2.5  自定义数据类型 84
    5.2.6  枚举类型 85
    5.2.7  变量的作用域(生存周期) 86
    5.2.8  字符串 87
    5.2.9  日期和时间 89
    5.3  控制程序流程 90
    5.3.1  条件语句 90
    5.3.2  循环语句 93
    5.3.3  With语句 96
    5.3.4  Exit语句 97
    5.4  简单的用户交互 97
    5.5  用户窗体 99
    5.5.1  设计用户窗体 99
    5.5.2  事件驱动 101
    5.5.3  使用控件 102
    5.6  调试VBA代码 103
    5.6.1  错误的类型 103
    5.6.2  使用Debug对象 104
    5.6.3  VBA的调试工具 105
    5.7  错误处理 106
    5.7.1  设置错误捕获 106
    5.7.2  编写错误处理实用程序 107
    5.7.3  提供从错误处理程序跳出的出口 107
    5.7.4  错误处理的简单示例 107
    5.8  类模块和面向对象 108
    5.8.1  面向对象开发 108
    5.8.2  对象变量和对象 109
    5.8.3  创建类模块 110
    5.9  COM对象的使用 113
    5.10  集合对象 115
    第6章  Excel的对象模型 116
    6.1  Excel对象模型简介 116
    6.2  Application对象 118
    6.2.1  控制Excel状态和显示 118
    6.2.2  返回对象 120
    6.2.3  执行操作 122
    6.2.4  Window对象和Windows集合 126
    6.2.5  Application事件 126
    6.3  Workbook对象 130
    6.3.1  Workbooks集合 130
    6.3.2  Workbook的属性 130
    6.3.3  Sheets集合 132
    6.3.4  Workbook的方法 133
    6.3.5  Workbook的事件 135
    6.4  Worksheet对象 136
    6.5  Range对象 138
    6.5.1  返回或获得Range对象 138
    6.5.2  Range对象的常用属性和方法 141
    第3部分  专 题 篇
    第7章  数据处理 148
    7.1  概述 148
    7.2  Excel数据处理的方式和流程 149
    7.2.1  方式和流程 149
    7.2.2 “表格驱动”的数据处理 151
    7.2.3  基于“过程”方法的数据处理 152
    7.2.4  基于“面向对象”方法的数据处理 154
    7.3  操作数据文件 156
    7.3.1  使用Excel对象操作数据文件 156
    7.3.2  使用VBA语句操作文件 163
    7.3.3  FileSystemObject对象模型 174
    7.3.4  Excel的数据导入功能 183
    7.4  操作数据库 183
    7.4.1  使用Excel工具导入数据库的数据 183
    7.4.2  使用VBA来操作查询表 184
    7.4.3  使用ADO操作数据库 185
    7.5  操作Web数据 188
    7.6  操作数据 190
    7.6.1  工作表数据引用 190
    7.6.2  操作文本 194
    7.6.3  操作数值 198
    7.6.4  操作日期和时间 201
    7.6.5  Excel工作表函数 205
    7.6.6  数据类型的判断和转换 211
    7.7  应用实例 217
    7.7.1  格式化数据 217
    7.7.2  在Excel中使用VBA来筛选数据 220
    7.7.3  批量重命名文件 224
    7.7.4  文本信息处理实例 226
    第8章  Excel图表 230
    8.1  Excel图表及其对象 230
    8.2  创建Excel图表 232
    8.2.1  创建图表工作表 232
    8.2.2  创建嵌入式图表 233
    8.2.3  通过录制宏来创建图表 236
    8.3  操作Excel图表 237
    8.3.1  激活图表 238
    8.3.2  修改图表的数据系列 239
    8.3.3  图表的格式 244
    8.3.4  图表的输出 246
    8.4  Excel图表的事件 247
    8.5  Excel图表的对象模型 250
    8.6  应用实例:Excel下三角图解的绘制 251
    8.6.1  问题描述 251
    8.6.2  解决思路 251
    8.6.3  使用宏代码绘制三角图 253
    8.6.4  总结 257
    第9章  界面设计 258
    9.1  界面的类型和选择 258
    9.1.1  Excel VBA程序的界面类型 258
    9.1.2  界面类型的选择 259
    9.2  应用电子表格作为界面 260
    9.3  自定义菜单和工具栏 263
    9.3.1  命令栏对象模型 263
    9.3.2  CommandBars集合对象 264
    9.3.3  CommandBar对象 266
    9.3.4  命令栏控件 269
    9.3.5  自动创建和删除Excel命令栏 281
    9.4  用户窗体 282
    9.4.1  设计用户窗体 282
    9.4.2  用户窗体控件 286
    9.4.3  控制用户窗体 294
    9.4.4  使用其他ActiveX控件 298
    9.5  Excel内置对话框 299
    第4部分  实 例 篇
    第10章  应用实例:批量数据导入工具 304
    10.1  问题描述 304
    10.2  从录制宏开始 305
    10.3  修改宏代码 306
    10.3.1  设计窗体 306
    10.3.2  指定要导入的文件 307
    10.3.3  修改录制的宏代码 308
    10.3.4  窗体调用 308
    10.3.5  修改Bug 309
    10.4  进一步完善系统 309
    10.4.1  指定要导入的位置 309
    10.4.2  增加其他文件类型 309
    10.5  保存为加载宏 310
    10.5.1  增加工具栏按钮 310
    10.5.2  工作表操作 312
    10.5.3  保存为加载宏操作 313
    10.6  总结 314
    第11章  应用实例:基于Excel的查询工具 258
    11.1  问题描述 315
    11.2  解决思路 315
    11.3  关键技术 316
    11.3.1  调用外部程序 316
    11.3.2  文件操作 317
    11.3.3  查询操作的实现 318
    11.3.4  程序界面 318
    11.4  主要代码 319
    11.4.1  解压和转换文件 319
    11.4.2  内容查找 320
    11.4.3  界面及以上代码的整合 321
    11.5  总结 321
    第12章  应用实例:GCDPlot 322
    12.1  GCDPlot简介 322
    12.1.1  什么是GCDPlot 322
    12.1.2  GCDPlot的使用 324
    12.1.3  为什么使用Excel VBA来开发GCDPlot 325
    12.2  GCDPlot的设计和结构 326
    12.2.1  设计思路 326
    12.2.2  程序结构 327
    12.3  图解定义文件及其解析模块 328
    12.3.1  Windows INI文件格式 328
    12.3.2  GCDPlot的图解类型定义文件 329
    12.3.3  GCDPlot的图解定义文件 329
    12.3.4  图解解析模块 332
    12.4  图解绘制模块 334
    12.4.1  图解绘制流程 334
    12.4.2  直角坐标图解的绘制 335
    12.4.3  三角坐标图解的绘制 336
    12.5  界面设计 337
    12.5.1  添加GCDPlot工具栏 337
    12.5.2  GCDPlot的用户窗体 338
    12.6  集成其他工作表程序 342
    12.7  总结 343
    第5部分  高 级 篇
    第13章  高级话题 346
    13.1  调用Windows API 346
    13.1.1  在VBA中使用API 346
    13.1.2  简单的API调用 346
    13.1.3  封装API调用为函数 350
    13.1.4  封装API调用为类模块 352
    13.2  自动化其他Office组件 354
    13.2.1  启动其他Office组件 355
    13.2.2  与其他Office组件交互 358
    13.3  使用Office助手 360
    13.4  Excel VBA程序的类型和部署 364
    13.4.1  Excel VBA程序的类型 364
    13.4.2  加载宏和一般电子表格程序的优缺点 364
    13.4.3  部署 365
    13.5  VBA程序的安全性和保护 366
    13.6  通过其他程序自动化Excel 366
    13.6.1  创建Excel对象 366
    13.6.2  Excel自动化中的事件 367
    13.6.3  使用Excel完成业务逻辑 369
    13.7  Excel数据导入导出的几种方式 369
    13.7.1  使用自动化传输数据 369
    13.7.2  使用ADO操作Excel数据 372
    13.7.3  使用第三方类库 374
    13.8  关于Excel工程的引用 375
    13.9  提高效率的一些建议 375
    13.9.1  尽量使用Excel的工作表函数 376
    13.9.2  尽量减少使用对象引用 376
    13.9.3  高效使用Range对象 377
    13.9.4  减少对象的激活和选择 378
    13.9.5  关闭屏幕更新 379
    13.9.6  提高关键代码的效率 379
    13.9.7  代码执行时间的测算 379
    第6部分  附    录
    附录A  VBA命名规则 382
    A.1  变量、常量、自定义类型和枚举 382
    A.2  过程和函数 383
    A.3  模块、类模块和用户窗体 384
    A.4  VBA工程 384
    附录B  VBA代码规范 385
    B.1  代码的排版 385
    B.2  注释 386
    B.3  程序版本 387
    B.4  一些基本原则 387
    附录C  可用于VBA代码的工作表函数列表 389
    C.1  可用于Visual Basic的工作表函数列表(按字母顺序) 389
    C.2  可用于Visual Basic的工作表函数列表(按类别排序) 392
    附录D  VBA语言参考 396
    D.1  VBA语法参考 396
    D.1.1  变量 396
    D.1.2  数据类型 397
    D.1.3  运算符 399
    D.1.4  数组 401
    D.1.5  程序流程控制 402
    D.1.6  日期与时间 405
    D.1.7  目录和文件 406
    D.1.8  文件读写 407
    D.1.9  类模块和ActiveX、COM对象 410
    D.1.10  注册表操作 411
    D.1.11  错误处理 411
    D.1.12  其他函数、关键字 412
    D.2  对象 413
    D.2.1  Collection(集合)对象 413
    D.2.2  Dictionary(字典)对象 413
    D.2.3  Err对象 414
    D.2.4  Debug对象 414
    D.2.5  FileSystemObject对象 415
    D.3  常用函数 415
    D.3.1  数学函数 415
    D.3.2  字符串函数 416
    D.3.3  财务函数 417
    D.3.4  数据类型转换函数 417
    D.3.5  数据类型检查函数 418
    D.3.6  交互函数 419
    D.3.7  注册表函数 419
    D.4  常用常量 419
    D.4.1  颜色 419
    D.4.2  文件输入/输出 420
    D.4.3  用户窗体 420
    D.4.4  Keycode(键代码) 420
    D.4.5  MsgBox参数和返回值 421
    D.4.6  日期格式 422
    D.4.7  其他 422

    1.宏应该怎么使用?

        从Office 2003开始,Microsoft在Office家族中逐渐增加了很多产品,如OneNote、Publisher、InforPath、Visio等,但是除了对VBA中的对象进行了扩充外,在VBA的应用推广上并没有特别大的改变,而且有些产品由于使用上的问题也没有提供对VBA的扩展。

    3)选择“视图”-“宏"-"录制新宏”。

    VBA并不复杂,重要的是积累。以我的经验刚开始学习VBA主要从两个方面入手:

    分两种情况,

        如今,Office 2007已经到来,并且在对VBA的支持上也出现了一些变化,随着Microsoft .NET产品系列的不断扩大和深入,.NET也嵌入到Microsoft的各个不同的产品中,而其中VSTO就是专门针对VBA在Office产品中应用的一个升级方案,我会在接下来的一些文章中向读者介绍它。不过Excel仍然是Office家族中使用VBA最广泛的产品,因此,我会以Excel为例来介绍VBA的使用,并在Office 2007软件基础上做一些示例。

    4)输入“改变颜色”作为宏名替换默认宏名,以便于分别宏。并在如下框内自定义执行宏的快捷键,以便更快的执行宏。

    Visual Basic语法

    第一,别人的宏自己怎么用?这个简单,直接打开宏运行即可:在视图下面宏按钮;

        首先来看看我们使用VBA在Excel中可以做些什么事情。

    新葡亰496net 2

    Excel中的对像模型

    第二,自己录制宏;

        Excel是一款功能很强大的用于处理表格数据的软件,它可以被用来做很多不同的工作,如记录客户的名字和学生的考试分数、进行收支预算、分析实验数据、制作发货单和表格、通过给定的数据统计图表等等,Excel的各种不同的功能被应用到各行各业,但有一点是相同的,那就是当要处理的数据量很大时,所有的用户都期望让Excel可以非常聪明地自己处理一些事情,“让Excel动起来”正是VBA可以办到的!

    宏名最多为255个字符,必须以字母开始,可用字符为字母、数字、下划线,不允许出现空格,可用下划线代替空格。

    然后,就是在使用VBA的过程中不断总结,多看看别人是如何处理相同的问题。

    2.零基础学宏:

        例如我们可以写一个VBA程序来格式化报表,并把它打印出来,经过开发和测试,我们最终可以只用一个命令就完成所有的工作,而不用自己动手去一个个地敲命令、点击鼠标查找菜单…Excel可以在一瞬间完成所有的工作,何乐而不为呢?

    5)在工具栏中,选择“格式化”-“格式化单元格”,将单元格颜色设置为红色,单击确定。

    想要快速学习VBA,推荐先学习Visual Basic基本语法,同时掌握EXCEL中的“录制宏”。试着使用“录制宏”将你的操作录下来,然后再分析录制的代码。 “录制宏”很实用,对学习VBA也有很大的帮助。

    只要稍微有点英语基础是没任何问题,可以从录制宏开始;

     

    6)在录制宏处单击“停止录制”。此时宏录制完毕,可以开始执行了。

    回答:

    只要会用录音机就可以会录制宏。

    VBA在Excel中的几种习惯用法

    二.执行宏

    新手学习Excel VBA的几点建议,你不妨过来

    新葡亰496net 3回答:

        先看看我们在Excel中经常会用到的VBA:

    当执行一个宏时,EXCEL按照宏语句执行的情况就像VBA代码在对EXCEL进行“遥控”。但VBA的“遥控”不仅能使操作变得便捷,还能使你获得一些使用EXCEL标准命令所无法实现的功能。接下来执行刚才录制的宏:

    1:调试

    Excel 的宏有录制功能,可以先试着用;另外想深入地去学习,可以找相关书籍。

        1. 反复插入文本。如果你经常需要在表格里插入一段文本,如公司的名称、版权信息等,你就可以写一个VBA程序来代替你做这件事。当然这再简单不过了,类似的情况会有很多,例如你还可以让VBA帮助你插入公司所有员工的姓名(这些信息也许来源于一个网站或者数据库)。

    1)选择任何一个单元格,比如A3。也可试着选择其他单元格或者几个单元格组成的区域

    经常看到新手学习了很长时间的VBA之后仍然不会使用调试功能,一遇到问题马上就请教他人,这样不利于自身的成长。调试非常重要,是学习代码本身

    新葡亰496net 4回答:

        2. 自动完成反复的工作。如果你是一名销售经理,需要经常写一份“月底销售报告”递交给老板,如果这些表格里的数据来源于同一个地方,并且表格的样式没有特别大的变动,那么你完全可以通过VBA编写一个逻辑,让Excel自己去搜集这些信息然后生成一张漂亮的表格,而这个时间里你要么去做其它更重要的事情,要么在一边舒舒服服地喝一杯咖啡看着电脑为你干活儿。而老板也会为你有如此高的工作效率而对你另眼相看。

    2)选择“工具”-“宏”-“宏”,显示“宏”对话框。

    不可或却的一部分。是诊断,梳理代码逻辑的过程,可以避免逻辑错误的重复性发生。善用调试新手很多的问题都可以得到解决,即可摆脱对他人的依赖性,自身又得到长足的进步,一举两得。

    首先学会数字电路原理、模拟电子技术、计算机系统结构、算法与数据结构、计算机组成原理、计算机操作系统、计算机网络基础、计算机编译原理、计算机数据库原理。有了这些基础知识以后,VBA不用学,看看就懂了。

        3. 录制宏完成相同的动作。Excel中的宏其实也是VBA应用的一种,它是由Excel自动根据你所指定的命令生成的VBA代码,执行这些代码就相当于执行了这些命令。在Excel中,我们在一个表格里做完一项工作,同时录制了一个宏,然后可以在其它的表格里反复执行这个宏,Excel可以毫无保留地帮我们将这项工作“复制”在所有的表格里。

    3)选择“改变颜色”,选择“执行”,则A3单元格的颜色变为红色。

    三个窗口,三个功能键:

    回答:

        4. 自定义命令。在Excel中,我们可以把反复要使用的一系列操作写到一个宏里,然后绑定到快捷键或按钮上,以后只需要使用一个快捷键或点击一个按钮就可以迅速地完成一系列命令。

    新葡亰496net 5

    地方窗口,立即窗口,观察窗口,F1(帮助),F2(属性方法),F8(分步执行)

    如果你从事的工作经常需要用到Excel这类的Office办公软件,那么不用犹豫,VBA是你必学的。不懂VBA,Office用的再熟也只是用到了全部功能的20%,掌握了VBA才是真正用到了Office的精髓。学习VBA可以先从宏开始,用熟练了再通过分析宏的VBA代码进行提高学习。当然也可以购买一些VBA的书籍学习。

        5. 自定义工具栏。听起来有些不可思议!我们可以通过VBA编写的代码在Excel的工具栏上放置自己的按钮,随时点击它。

    或者如上所自定义的快捷方式,按CTRL SHIFT L便可以执行宏。

    途中诊断:

    回答:

        6. 自定义菜单。不仅可以定制工具栏,我们甚至可以通过VBA将自己的命令放到Excel的菜单上,是不是很强啊?

    新葡亰496net 6

    断点,stop等等。

    通过VBA实现宏功能,但不建议学这个,如果有可能,直接学python。

        7. 制作数据表模板。通过制作数据表模板来帮助那些Excel初学者更快地完成工作,以减少他们所浪费的时间。

    执行结果

    2:分拆

    从易学和好用来说,python无疑是必须的开发工具。

        8. 自定义工作表函数。虽然Excel拥有很多的功能函数(如Sum何Average等),但总是在实际的应用中显得不够,我们可以通过VBA添加自己的功能函数,用来完成一些特定的计算,从而简化计算过程。

    三. 查看并修改录制的宏代码

    (1)语句分拆

    回答:

        9. 开发完全由宏来驱动的应用。花点时间,VBA还可以让你做很多大型的应用程序,包括定制对话框、OnScreen Help、数据同步、数据搜集工具,以及其它更多的功能组件。

    录制宏只是简单的开始,修改宏代码来实现需要实现的功能才能起到宏的真正作用。

    长而难懂的句子分拆成基本单元,利用调试功能一个个解决,很容易就理解了它的含义。

    vba好处

        10. 打造完全属于自己的Excel插件。Excel本身的插件已经很多了,通常情况下都够用,不过我们还是可以通过VBA开发属于自己的专有插件。Excel中用来生成统计图表的功能就是一个插件,叫Analysis ToolPak。

    1)选择如上图中“执行“下面的”编辑“按钮。此时,会打开VBA的编辑器窗口(VBE)。代码如下:

    如:intRow=Range("A"&Rows.Count).end(xlup).row

    1.可以通过录制来学习代码

        通过VBA可以开发Excel的很多功能,甚至于访问网络资源、遍历Windows域、访问远程机器上的文件等,只要去认真研究VBA语言本身提供的对象,我们还可以发现更多令人惊奇的东西。VBA真的很强大!

    Sub 改变颜色()

    立即窗口:?Rows.Count

    2.excel应用非常广泛

     

    '

    Range("A"&Rows.Count).Select

    3.容易掌握

    VBA的优缺点

    ' 改变颜色 Macro

    Range("A"&Rows.Count).End(xlup).Select

        前面说了那么多VBA可以做的事情(尽管还远远不止这些),那么VBA到底好在哪些地方呢?Excel几乎能自动完成所有你想做的事,只要能写出Excel命令,它就可以完成功能,所以VBA的自动化就体现了下面这些优点:

    '

    ?Range("A"&Rows.Count).End(xlup).row

        1. Excel在自动化具体任务时代码执行的顺序不变(有的时候这看起来倒是一件好事)。

    ' Keyboard Shortcut: Ctrl Shift L

    用眼睛都可以看到每一步Excel选中的哪个单元格,那么自然就不难理解了。这个小范例同时揭示了学习程序过程中一个非常重要的方面:动手尝试。

        2. 可以肯定的是,让Excel自动化一项工作肯定比手动去完成要快得多(我想没有人愿意手动去完成那些繁琐而重复性的工作)。

    '

    (2)子程序分拆

        3. 如果拥有近乎完美的宏代码,Excel会永远无故障地运行(不过任何代码都是有缺陷的)。

    With Selection.Interior

    把一个冗长的程序按照功能拆分成一个个相对独立的子程序来调用,使得程序具有一定程度的组织性,结构性,规整性大大提高了代码的可维护性,扩展性,重用性。这是贯穿程序语言发展的一条主线,因为它直接指向了程序开发的终极目的之一:开发效率。

        4. 任何人都可以用Excel自动化一项具体工作,即使他根本不懂计算机编程(Excel的宏录制功能帮了很大的忙)。

    .Pattern = xlSolid

    3:耐心

        5. 很多看似不太可能做到的事情都可以用Excel做得漂漂亮亮的(前段时间我刚用Excel为一个网站做了一个前台数据录入工具)。

    .PatternColorIndex = xlAutomatic

    学习目的明确≠急于求成。无论学习目的如何直接和明确,学习的过程仍然不是一蹴而就的,"捷径"只能是建立在扎实的阶梯式基础上。有些新手基本代码还没写利落就开始用界面写"系统",甚至还没学会调试,结果是步履维艰,一步一问,三步一错,无以为继。还有的朋友学习VBA是为了研究彩票,还没学习一星期就开始写各种计算方法,自然处处遇"难",大挫学习兴趣,随之放弃。抱着明确的目的学习是好事,不管目的是否"明智"(这是另外一个话题),但明确的目的不等于"急功近利"。学习的进程总是遵循渐进式的规律,跳跃式的一夜暴富只能是空中楼阁,所以耐心在学习过程中就显得尤为重要。

        6. 对于那些既花时间又费精力的事儿,你再也不用坐在电脑前郁闷了,调用一个VBA编写的命令,剩下的事情你就不用管了,出去放松一下吧。

    .Color = 255

    单独说说效率和速度的问题。程序的效率大致包含两层含义

        当然,就像所有的编程语言一样,VBA也会有一些缺点,从应用的角度来看有以下几点(其它不好的地方应该也都从Visual Basic For Windows那里继承过来了):

    End With

    (1):执行效率;

        1. Excel的宏虽然可以为你自动生成一些VBA代码,但大多数时候还是需要你自己去编写代码将这些功能组织起来,如果你没有一点编程经验的话,这个对你来说恐怕有点棘手。不过还好,VBA学起来还是很容易的。

    End Sub

    (2)开发效率。

        2. 想要运行VBA必须要事先安装Office软件,尤其是Excel。它不可能像Visual Basic For Windows程序那样只需要双击一个exe文件就能执行起来(这看来也是脚本语言的局限性)。

    Sub 改变颜色():这是宏的名称。中间以 ’ 开头的五行称为“注释”,它在录制宏时自动产生。

    执行效率又可分为时间效率和空间效率,空间效率不在本贴讨论范围内,所以执行效率简化为速度来讨论。之所以单独拿出来说这个问题是因为论坛很多帖子在"速度"追逐上所表现出的"热忱"比较极端,走的路比较偏执,希望初学者能够以一个相对平和的心态来看待效率。

        3. VBA是变化的,在不同的Office版本中,VBA都有一些细微的变化,这将导致你在Office 2000中编写的VBA代码在Office 2003中无法正确执行,反过来也一样。

    以With开头到End with结束的结构是With结构语句,这段语句是宏的主要部分。With Selection.Interior:意思是“选择区域的内部”。接下来的整段语句便是设置该区域内部的一些“属性”。

    执行效率与开发效率,从字眼上分析就知道,程序的最优目标是两者并重。遗憾的是兼顾并非常态,凸出一者的同时往往伤害到另一者。当两者出现矛盾时,职业代码工人较为普遍接受的原则是:"只有在必须考虑速度的时候才优化执行效率,否则以开发效率为重"。

     

    .Pattern =xlSolid:设置该区域的内部图案。由于是录制宏,所以你未曾设置宏也仍然将其记录下来。(因为在“图案”选项中有此一项,只是你未曾设置而已),xlSolid表示纯色。

    换句话说,只有在不得不考虑优化速度的时候执行效率的目标高于开发效率因为要保证功能性,有效性。否则只考虑开发效率不考虑执行效率。职业程序员和职业"玩家"在这个问题的认识上经常会产生分歧。

    在Excel中开始VBA程序

    .PatternColorIndex =xlAutomatic:表示内部图案底纹颜色为自动配色。

    注重效率的程序员

        我所演示和开发测试的环境都是建立在Excel 2007上,读者如果想演练,最好也在相同的软件环境下。

    .Color = 255:将该区域内部设置为红色。此句为录制的关键句。

    设身处地的想一下,职业程序员在意的是什么?他们在意的是快速,顺利的完成工作,在意的是软件的稳定性,有效性尽量避免老板和客户找他们的麻烦,最终目的就是挣钱,吃饭,养家。花费几个小时来提速几个程序模块,工资没多一分钱,延误了进度,工期老板肯定不干。基于这样的原因,他们顺理成章的注重与可维护性,稳定性,扩展性,重用性相关的开发效率。

        首先打开Excel,默认安装配置下Excel 2007没有显示“开发工具”菜单,我们需要打开它。点击窗体左上角的“Office按钮”,选择“Excel选项”,在对话框中选择“常用”选项卡,勾选“在功能区显示‘开发工具’选项卡(D)”,确定。现在我们在Excel的菜单区就可以看到“开发工具”了,点击它,就可以开始我们的VBA程序了。

    End With:结束With语句。End Sub:整个宏的结束语。

    追逐"手筋"的"玩家"~

    新葡亰496net 7 新葡亰496net 8 新葡亰496net 9

    修改录制的宏,从上面分析可以看到有两句代码并没有起到起到上面作用,删除这两行后重新运行会发现结果跟修改前的状况一样。

    相比较而言,职业"玩家"写代码并非为了工作,没有项目压力,无需考虑开发时间,开发成本,追逐的是华丽的"手筋",以及速度飙升所带来的愉悦。其次,速度本身的属性决定了它是一把极其规范,可量化的标尺。基于速度为标准的代码具有极强的博弈性和竞技性,不仅可以独乐还可以众乐。

        为了让你的VBA程序或者宏代码能够顺利运行,你需要确认一下宏的执行安全设置。点击“宏安全性”,在对话框中选择“启用所有宏”,并勾选“信任对VBA工程对象模型的访问”。现在我们可以完全自由地去编写我们的VBA程序了。

    在With语句前加一行:Rang(“A4").select。再试着运行该宏,则无论开始时选择哪个单元格,宏运行结果都是使A4单元格变宏。此语句起到固定的作用。最终代码如下:

    "有意义"和"无意义"

    新葡亰496net 10     点击Visual Basic,可以打开VB编辑器(简称VBE),我们的几乎所有的VBA代码都是在这里编写的。当然,如果你曾经是一位VB程序员,那么你会对这个编辑界面再熟悉不过了,它几乎就和VB 6的编辑界面一样,也有工程窗口、属性窗口和代码窗口,在这里我们同样可以添加控件、引用、模块以及Excel对象等元素。另外,通过选择代码编辑窗口上方的两个下拉列表,我们可以为不同对象的不同事件编写代码。所谓事件,就是我们在点击或选择控件时所完成的一系列动作,如命令按钮的点击事件,下拉列表下拉项的选择,复选框或单选框的选择等。

    Sub 改变颜色()

    前边我们就曾提过"有意义的快"和"无意义的快","有意义的快"可以包括两种情况分别称作"根本性速度提升"和"规模型速度提升"。

    新葡亰496net 11     有关如何编写VB代码以及VB代码的基本特性已经不是本文要讨论的内容(事实上这些内容大家在学习计算机编程基础知识时也已经都了解过了),这里只对在Excel中使用VBA的一些情况做一下介绍。

    ' 改变颜色 Macro

    插播小故事:"这事儿不赖我"

        1. VBA中将Excel录制的宏写到一个VBA模块中(先了解了解什么叫做VB模块),它已经包含了一系列独立的命令,可以作为一个VBA过程被调用。

    '

    某日一油漆工找到一份新工作:刷马路中间的白线。

        2. 一个VBA模块有很多“子过程”组成,它执行了“对象”上的一些操作,可以独立运行。例如我们在Excel Sheet上添加一个Active控件(注意大多数时候我们在VBA中所使用的都是Active控件而不是表单控件),比如添加一个命令按钮,双击它,在代码编辑窗口中就可以添加相应的命令了。下面的代码是当用户点击命令按钮后提示1 1的结果。

    ' Keyboard Shortcut: Ctrl Shift L

    于是油漆工把一个油漆桶放到了起点上开始工作了。

    新葡亰496net 12

    '

    第一天,油漆工刷了300米,老板大喜,夸奖油漆工:"工作很出色!"

    Private Sub CommandButton1_Click()
        Dim sum As Integer
        sum = 1   1
        MsgBox "The answer is " & sum
    End Sub

    Range("A4").Select

    第二天,油漆工刷了150米,老板不露声色,鼓励油漆工:"工作干的不错!"

        Excel中可以使用的Active控件不是特别多,这也表示了在VBA中用户对UI的控制没有特别多的选择,当然,如果你的电脑上注册了其它可用的Active控件,只要允许,你完全也可以把它们引用到Excel中,只要点击“Active控件”中的最后一个图标,在对话框中选择要引用的Active控件即可。VBA中控件的使用和VB中相同,这里就不再一一介绍了。回到Excel主界面,退出设计模式(只需要再次点击“设计模式”按钮即可),点击我们刚才添加的命令按钮,屏幕上出现了我们刚才在代码中添加的对话框。

    With Selection.Interior

    第三天,油漆工刷了30米,老板大怒,吼道:"今天只刷了第一天的1/10,到底怎么回事?"

    新葡亰496net 13    3. VBA模块中有很多的函数,函数一般返回单一值,它既可以被别的模块调用,也可以当做工作表函数来使用。

    .Color = 255

    油漆工回答:"这事儿不赖我呀!我每天距离油漆桶越来越远了啦!"

        4. VBA提供了很多的已有对象,其中包括了WorkBook、WorkSheet、Cell Range、Chart以及Shape等重要对象。

    End With

    这个小故事形象的描绘了这样一个事实:改变工作方式可以带来根本性的效率提高。在遇到类似于上述情况时,初学者可考虑优化代码提升速度。

        5. Excel对象有其自身的层次结构。一个对象可以包含其它的对象,占据层次结构最顶端的是Excel,而它本身就是一个对象,在代码中叫做Application,它包含了WorkBook和CommandBar等重要对象,WorkBook则又包含了WorkSheet和Chart等对象,WorkSheet又包含了Range和PivotTable等对象…这些层次结构的对象组成了我们VBA代码的基本部分。

    End Sub

    在VBA中当遇到速度慢的不可忍受的情况时,粗略的说可从以下几点入手:

        6. 同类对象组织在一起就形成了集合,如WorkBook中包含的所有WorkSheet被称之为WorkSheet集合,而Chart集合则由全部的Chart对象组成。

    录制宏存在一定的局限性,编辑宏可以删除宏中多余的语句,提高宏的运行速度。还可以增加宏的功能,比如加入判断或循环等无法录制的语句。

    (1)合理化数据源的结构;

        7. 凡是层次结构中的对象都可以在VBA中使用,跟大多数面向对象语言一样(虽然VB和VBA还不能被称之为完全意义上的面向对象语言),我们使用“.”运算符来调用。如Application.WorkBooks(“Book1.xls”),它表示WorkBooks集合中的一个名称为Book1.xls的对象(该对象为一个Excel文件),然后我们可以在这个对象中引用Sheet对象,如Application.WorkBooks(“Books.xls”).WorkSheets(“Sheet1”)。如果想进一步指定一个具体的单元格,就可以这样Application.WorkBooks(“Books.xls”).WorkSheets(“Sheet1”).Range(“A1”)。

    四.保存宏

    (2)用数组一次读写单元格内容,避免频繁操作单元格对象;

        8. Excel中的当前活动对象可以让我们在代码中使用一种简便的方式来调用对象。如果Book1.xls就是当前正在编辑的工作表,那么刚才我们引用对象的方式就可以简写为WorkSheets(“Sheet1”).Range(“A1”)。当然,如果当前编辑的工作表就是Sheet1,可以直接写成Range(“A1”)。

    将写有宏的excel表格另存为 Excel Macro-Enabled Workbook格式的文件,如下图所示。再次打开便可以运行所保存的宏。

    (3)查询搜索改用Collection或字典。

        9. Excel中各种对象都有其自身的属性。对象的属性可以理解为对象的设置项,即便是一个单元格(Range),也有它自己的属性,如Value(单元格的当前值)和Address(单元格在工作表中的地址)等。HasTitle(是否包含标题)和Type(图表类型)则是Chart对象的属性。VBA允许用户判断或更改对象的属性值。

    新葡亰496net 14

    所谓"规模型速度提升"是指对于应用频次高的问题,可以考虑一次优化速度,应用无数次,追求规模效应降低开发效率损失。至于"非根本性速度提升"

     

    的例子可以在论坛看到很多,诸如循环是用指数索引快?还是ForEach索引快?等等,这里就不一一列举了。

        10. 在使用对象属性时,必须用“.”运算符来连接对象名和属性名,如WorkSheets(“Sheet1”).Range(“A1”).Value可以查看当前工作表Sheet1中单元格A1的当前值。

    用一句话来总结:"程序的本质是用机器来解放劳动力,而不是用劳动力解放机器!"

    新葡亰496net已可从第二书店订购,excel的宏该如何使用。    11.

    本来想写很多内容,一来由于没什么初学者看所以无收获可言;二来如果深入的话恐会戕害一些坛友的感情;三来目前此帖已有万余字,再多就不像帖子了。再深入展开下去实属下下策,故此楼略显单薄,但基本意思都点到了。剩下关于算法和数据结构的认识和态度在本楼没有提及。

    变量赋值。同VB代码一样,在VBA代码中允许使用变量来存储数值、文本和对象,如interest

    WorkSheets(“Sheet1”).Range(“A1”).Value将工作表Sheet1的单元格A1的值赋值给一个interest变量。

        12. 对象还包括了可以在其上调用的方法。所谓方法,就是Excel在对象上可以执行的动作,如ClearContents被用来清除Range内的内容。

        13. 方法的调用和属性的获取类似,也需要使用“.”运算符,如WorkSheets(“Sheet1”).Range(“A1”).ClearContents。

        14. VBA包含了现代编程语言的所有语言结构,如数组、分支结构、循环结构、集合对象等。

        通过以上一些简单的介绍,相信读者已经对VBA有了一个大致的了解,我在后面的章节中将会陆续介绍VBA中的一些对象和用法。

     

    Excel简史

        我觉得还是有必要在这里介绍一下Excel的发展历史,因为不同版本的Excel对VBA的支持是不一样的。

        1. Excel 2:在Windows平台上,Excel最开始的版本号是2,这是为了和Mac平台上的Excel保持版本一致。Excel 2诞生于1987年,不过后来几乎没有人再用它。

        2. Excel 3:于1990年末发布,其中XLM宏语言也随之一起发布。

        3. Excel 4:于1992年初面试,继续包含了XLM宏语言。

        4. Excel 5:1994年上半年问世,VBA第一次在这个版本中露面。

        5. Excel 95:从技术角度讲应该是Excel 7(其中没有Excel 6这个版本),该版本于1995年夏天开始问世,是一个32位的版本,运行在Windows 95和NT平台上,其中增强了一些VBA的功能,并继续支持XLM。不过,Excel 95的文档格式和Excel 5相同。

        6. Excel 97:也可以被称为Excel 8,诞生于1997年元月,需要Windows 95和NT的支持。在此版本中,VBA在功能上有了很大的增强,其接口几乎全部被重新设计过,同时它还采用了全新的文件格式(之前的版本不能打开这种格式)。

        7. Excel 2000:即Excel 9,于1999年6月发布,仅增强了一点点功能,不过在用户体验方面改善了很多,尤其是网络用户。

        8. Excel 2002:也叫Excel 10或Excel XP,于2001年下半年发布。在这个版本中最大的特性就是数据恢复(即Excel崩溃之后可以自动恢复崩溃之前的数据),同时它也是第一个使用版权保护的版本。

        9. Excel 2003:Excel 11,这应该是目前来说使用人数最多的版本,也是最为成熟的版本,不过较前一版本而言它并没有增加什么新特性。

        10. Excel 2007:随Office 2007产品同时发布,这个版本有了很大的改变,除了界面风格的改变外,还增加了按颜色筛选和排序的功能(这可是个很有用的功能,我在Excel 2003的时候还曾经用VBA开发过类似于这样的功能),同时,Office 2007的系列产品在文件格式上也有了很大的改变,Excel 2007的文件后缀为xlsx,它是一种完全公开的支持XML可扩展的文件格式,这里有一篇文章介绍了Excel 2007的这种新文件格式。

        了解Excel的发展历史和各个版本的不同是非常重要的,因为我们需要确保不同版本的Excel对VBA的支持情况,避免别人在使用我们编写的VBA程序时出现莫名其妙的错误,如VBA的Split函数是在Excel 2000中才引入的,如果在Excel 2000之前的版本中使用含有Split函数的VBA程序,则会出现编译错误。

     

    结语

        VBA在Excel中的应用非常广泛,深入了解并应用VBA,可以大大提高我们在使用Excel时的工作效率,达到意想不到的效果。另外,顺便还要说一句,Excel在针对不同的数据类型时可以保存为不同类型的文件,在含有VBA的Excel文件中,为了保证今后能够顺利打开文件并执行其中的VBA代码,建议读者将Excel文件保存为xlsm类型(它表示一种启用宏的工作簿)。

        本文只是一个开篇,简单介绍了VBA的发展历史和应用范围,并举例说明了一下如何在Excel中编写并运行自己的VBA程序,接下来我会详细向大家介绍VBA中形形色色的对象的使用方法,其中大家也会看到一些难以想象的功能,不过这都很简单,毕竟VBA只是脚本,它并不复杂!

     

    (在此感谢好友杨智——Jeffrey R. Young提供的帮助)

    到该结束的时候了,想必大家能理解本贴的态度:不褒不贬。你用,或者不用它,你喜欢,或者不喜欢它,它就在那里,不远不近,无所谓“强"无所谓”弱"。

    一致性,对称性是匹配的原则。对称匹配,你收获你想要的,Excel,VBA发挥应有的效力;反之,错位匹配引发牵强附会,捉襟见肘。既然谈过了VBA的定位,自然不可避免的要谈一下对其宿主Excel的认识。话题就从这里开始吧......

    灵活是把双刃剑

    相比VBA而言,Excel的边缘性更强。相信大家都积累了多年的使用经验,是Excel的行家里手,提及某某功能如何实现均可娓娓道来。如果问一个这样的问题:"Excel到底是什么?"一言以毕之,"电子表格工具"。这种定义只是给Excel起了个别名(alias),不是一种理解,认识和定位。曾经问过自己这个问题,我发现自己答不上来或者说自己的能力不足以回答这个问题。

    边缘性强主要表现在使用范围广泛,尤其它还是一款不断升级的产品并且有诸多第三方插件对其进行功能扩展,这时候你会发现无论怎么回答这个问题都是错的,难免给初学者造成"Excel无所不能"的错觉。但如果不能予以概念上的定位,就无法回答"适度"使用的问题,结果就是一切和表格有关的工作都用Excel来做。

    Excel简单易用,功能强大,所见即所得(这可是个不得了的特点),这些都是耳熟能详的特点。个人认为Excel最大的特点来自于灵活:

    (1)自由设计用户自己的蓝图,天马行空,个性十足;

    (2)Excel分享了数据库的一些特点,具有一定程度的记录和数据存储的功能。虽然可以说Excel缺乏关系结构,但由于灵活的特点,可以用工作表打造出关系结构;

    (3)通过各种计算和图表功能,提供多视角数据体验;

    (4)腾挪空间广阔,运用水平差异大。

    然而灵活性并非是无成本的,灵活的同时就意味着规范性差,同样功能的表格10个人设计出12样儿来,格式,表头,结构,实现方式等等花样百出。

    规范性差导致用户交流困难,随着逻辑业务设计复杂程度不断提高,有效性控制繁杂,错误几率增大,急剧加重了设计者的负担。逻辑业务关系越复杂设计成本的增长幅度就越大(呈非线性增长态势)。前些日子看到一位坛友希望把一套表格封装,表格集成了一套用公式表达的复杂逻辑业务关系。其实这套关系本身就是一道加密壁垒,把其中的逻辑梳理清楚比破解还费劲。

    个人的一点看法:既然很难在概念上抽象化Excel的定位,只好用一条条描述性的特征来概括Excel,但这种列举是无法穷尽的。

    从正面说:

    (1)Excel"适用"于:逻辑业务关系相对简单,数据规模不大,一锅端式的集成应用;(可惜无法量化定义"简单","规模")

    (2)对于业务逻辑复杂,规模较大的数据,Excel"适合"充当数据库和用户之间的缓冲层(buffer)。致力于数据的展示,整理,综合,"分析"等体现灵活性的职责。

    从反面说:(表象)

    (1)避免用Excel设计大规模业务关系复杂的"系统";

    (2)避免大量数据存储造成Excel文件尺寸过大;(动辄几十上百M的Excel文件经常能够看到)

    (3)避免大量公式集成,重算可以导致文件打开速度过慢,运行速度过缓;

    (4)避免搭建Excel文件系统;(几十上百Excel文件组成的文件集也是屡见不鲜)

    (5)......

    上述情况可以适当考虑使用数据库的功能,毕竟他们之间是有本质区别的。这里只是以我的观点来看待Excel,“不适合"不代表Excel不能做到,最终的评判要交给用户,谁用谁有话语权而不是设计者和所谓规范的探索者。在能意识到"隐患"的条件下,如果您觉得好用,完全可以避免庸人自扰式的思考,坚持走自己的路。

    既然Excel的特点是灵活,我们就以一个灵活的态度来认识和对待它好了。

    至此关于Excel和VBA的话题就告一段落了,最后再补充一句:

    对于业务部门职员来说,Excel,VBA解决工作中的问题真的是够用了,也是很好的选择。如果不够用说明您的工作应该是由IT部门来完成的工作。业务部门的员工扛着VBA去干IT部门的工作,无论是工具和还是工作内容都错位的离谱。

    最后收录一些经典语录。既然是收集,就是一个开放和相对漫长的过程,先把帖子的架子搭完,对观众有个交代,

    <评>:理解"合理"的着眼点才能正确的认识,对待,运用好这种存在。一言以毕之不是试图掩盖存在本质的借口就是盲信。

    <评>:方向决定"成"是否有意义。

    <评>:愤~青的态度抹杀客观存在的差异性。

    只要听到"不管....只要....就...."的句子就是错的?

    新葡亰496net 15回答:

    找一本好书,要有目标,有耐心去学习,假如您的工作和数据处理非常相关,可以好好用心地研究一下,之前我刚开始学习excel vba的时候,用的是被称做Mr.Excel的这位兄台的书,他写的书比较简单易懂,大名Bill Jelen,记得当时还是2003版本的,虽然刚开始很难,还是庆幸自己坚持了下来,事实证明这也是正确的决定。后来在工作中真的是帮了我大忙了,因为每天要处理数万个不同的数据,分类汇总,整理成想要的格式等等,效率飞快,也有更多的时间忙别的事情并提升自己了。最近看的他写的书是Excel 2007 VBA与宏完全剖析,你可以看一下有没有最新版的版本的,这个也可以参考学习一下。

    回答:

    ----57132899----

    学是为了用,所以挑几实用的学吧。

    以我多年答题总结的经验,学会循环结构和数组就基本可以处理大部分问题了。

    循环结构通常For Next,Do Loop,利用的是机器在做重复工作的高效性。

    数组是将对象值写入内存,减少经常接触对象造成计算耗时。数组的维度张度很大,常规用二维就可以了。

    具体学习方法可以关注我,接下来会用各案例边做边学。

    回答:

    想要快速学会VBA,可以先熟悉VBA的最基础的语法,怎么录制宏。例如,学会录制宏,学习循环结构,学习判断语句等,之后就是修改自己录制的宏,学习批量处理。

    之后要带着问题去学习,学会自己解决问题,网上有非常多的教程可以看,也有很多公众号在分享VBA常用代码,可以关注,下载案例自己调试。

    回答:

    带着问题学习是最快的,如果要从头开始学,花费的时间必然不少。可以在百度中输入自己的问题描述,再在问题后加上vba,一般不麻烦的问题都有百度结果可以参考了。比如搜索,多工作表汇总 vba。

    vba中很重要的一步是要学会调试,别人写的代码有时候不明白为什么这么写,或者自己改的代码运行出错,通过调试才能发现数据异常而后改正。

    本文由新葡亰496net发布于新葡亰496net,转载请注明出处:新葡亰496net已可从第二书店订购,excel的宏该如何

    关键词: