什么是VBA?为什么要学习VBA?      
=========
          VBA是Visual Basic For Application的简称,具体说来,可能让叶枫三天三夜也说不完,叶枫也只知道VBA是建立在Office中的一种应用程序开发工具,其实知道这也就够了。很懒很笨的叶枫只想吃香喷喷的大米饭,可从没想要知道大米饭是怎么来的。

Excel本身的内置函数其实已经很强大了,甚至有人说,只要学会二三十个函数,就已经可以满足普通用户日常的工作需求。
      
      那我们为什么要学VBA?
      是的,如果只需要满足一些普通的工作需求可能永远也不会用到VBA,但在实际应用的过程中,人们的操作却越来越大,需要也越来越高,这时候就需要用VBA来对Excel进行二次开发了,VBA可以有效地自定义和扩展Excel的功能。

但有一点叶枫想要告诉大家,VBA功能很强大,但并不是万能的,也并不是所有工作都需要用VBA来解决,也并不是所有工作用VBA来解决都会很简单,这要根据实际情况而定,有些工作你用VBA来解决的话相反会变得很麻烦。

VBA与宏
======
  刚开始的内容听起来很枯燥,请大家不要分心,耐着性子看下去,兴趣总是慢慢积累的。
------------------------------------------------------------------------------
       1、亲自动手,录制一段属于自己的宏
  提到VBA,相信很多人想到的就是宏,但是VBA与宏是不是一回事?我觉得它们不是一回事,但这不重要,我们要做的是先来认识一下宏。
  宏是什么?
  我理解的宏是一系列固定动作的集合,这个集合当遇到让他执行的条件后就逐个执行。
  有人把我们录制的宏比喻成一个武术运动员在比赛中练就的一段武术套路动作,这个套路遇到一定的条件(比赛)就执行。
  好了,别闲着,动一动你可爱的右手,点点鼠标,打开一个Excel文件,录制一段宏来来研究研究,步骤如下:
  (1)选中任意一个单元格;
  (2)打开菜单—>工具—>宏—>录制新宏,调出宏录制对话框,输入宏名(mysub),确定;
  (3)设置单元格字体为仿宋体,红色;
  (4)点击停止录宏。
这样,一个简单的设置单元格格式的宏就录好了。
-------------------------------------------------------------------------------------------------------------------
      2、鼠标点一点,宏给单元格换新装
  下面我们来执行这段宏。
  (1)选中需要设置的任意单元格或单元格区域(为了看出效果,单元格最好有字符);
  (2)打开菜单—>工具—>宏—>宏,显示“宏”对话框(快捷键:Alt+F8);
  (3)选择我们刚才录制的宏,单击“执行”。
  这样我们看到已经为刚才选中的单元格的字体已被修改成仿宋体,红色。自己动手试着录制几段宏,再执行一下,加深印象。
  神奇了吧?以后当你再需要一遍又一遍地重复若干相同的操作的时候,会不会想到让宏来替你做这一切?这是一个不错的奴隶,不用花钱,且不用开工资,赚了吧?
  好了,收起你贪婪的笑容,继续往下看。
  宏是什么?现在相信你能想出一千种说法,由你了,又笨又懒的叶枫可没你聪明,也不再多说。
  上面说的执行宏的过程是不是让你感觉很麻烦?希望用快捷键来控制宏?这个我们可以在录制宏之前在录制宏对话框里进行设置。也可以在录制宏后进行设置,按Alt+F8显示宏对话框,单击“选项”,在“宏选项”对话框里进行设置
--------------------------------------------------------------------------------------------------------------
      3、寻根问底,找到宏的老窝
  如果你忘记了,请你再打开宏录制对话框,在宏名的下面,有一个“保存在”的选项,点一点下拉的箭头,我们可以看到,宏可以保存在三种不同的位置,分别是:
  (1)当前工作簿(系统默认):宏保存在当前工作薄的模块里,只有当该工作薄打开时,宏才起作用。
  (2)新工作簿:新建一个工作薄保存。
  (3)个人宏工作簿:这是为宏而设计的一种特殊的具有自动隐藏特性的工作簿,如果你要让某个宏在多个工作簿都能使用,那么就应当创建个人宏工作簿,并将宏保存于其中。
  上面我们录制的宏是保存在当前工作薄里,今天我们在这里也只介绍保存在当前工作表里的宏。
--------------------------------------------------------------------------------------------------------
      4、拨开层层迷雾,查看庐山真面目
  宏靠什么来控制Excel的运行?是不是感觉深在浓浓的迷雾里,感觉一头雾水?让我们鼓一鼓劲,拨开它的衣服,开开那家伙里面到底是什么?
  (1)按Alt+F8快捷键打开“宏”对话框;
  (2)选择我们刚才录制的宏,点“编辑”按钮。
  眼前一亮吧?这是一个新的天地——VBA的编辑器窗口(VBE),这个我们以后再说,先将注意力集中到显示的代码上。代码如下:

复制内容到剪贴板

代码:

Sub mysub()
' mysub Macro
   ' 宏由ggsmart录制,时间: 2009-2-27'
  With Selection.Font
    .Name = "仿宋_GB2312"
    .Size = 12
    .Strikethrough = False
    .Superscript = False
    .Subscript = False
    .OutlineFont = False
    .Shadow = False
    .Underline = xlUnderlineStyleNone
    .ColorIndex = xlAutomatic
  End With
Selection.Font.ColorIndex = 3
End Sub

  现在你可能感觉到上面这些乱七八糟的代码会很陌生,甚至在问自己是不是来到外星人的世界,反正叶枫当初是这样感觉的,但不要为此感到害怕,将来我们会慢慢熟悉他,就像闭上眼睛也能准确地将那个又大又红的苹果送到自己的嘴里。
--------------------------------------------------------------------------------------------------------
      5、再进一步,给宏安上门铃
  一遍一遍地在宏对话框里选择宏名称,按“执行”按钮来运行宏的麻烦是不是让你郁闷得有些想吐血?指定快捷键虽然方便,但别人用自己的工作表时能不能快速上手?就算是自己,如果宏多了,或是放的时间长了,你还记得哪个快捷键控制哪个宏?
  作为excel开发者,一个主要的目标是为自动化提供一个易于操作的界面,“按钮”是最常见的界面组成元素之一,我们可以把宏指定给特定的按钮,通过按钮来执行宏,还是用刚才我们录制的那个宏来举例。通过使用“窗体”工具栏,可以为工作簿中的工作表添加按钮。在创建完一个按钮后,可以为它指定宏,然后你的用户就可以通过单击按钮来执行宏。在本练习中,将创建一个按钮,并为它指定一个宏,然后用该按钮来执行宏。具体步骤如下:
  (1)打开菜单—>视图—>工具栏—>窗体,调出窗体工具栏。

1.jpg (7 KB)

2009-8-13 13:18

  (2)单击”窗体“工具栏中的“按钮”控件,在工作表中希望放置按钮的位置按下鼠标左键,拖动鼠标画出一个按钮,松开鼠标后,Excel会自动显示“指定宏”对话框。

2.jpg (31.38 KB)

2009-8-13 13:18

(3)从“指定宏”对话框中选择“mysub”,单击“确定”。这样,就把该宏指定给命令按钮。

引用:

课间休息,插播一段广告:按钮,工作表等这些对象就像是Excel的众多儿女,儿女太多,怎么称呼这群儿女也是一个问题.为了不出现叫"儿子"就七八个一起跑出来,同许多农村父母给儿女起"老大,老二,老三……"的称呼一样,Excel也用这种顺序的起名方法给这些儿女贴上了标签.比如第一个按钮是"按钮一",再画一个就是"按钮二",然后是"按钮三","铵钮四"等等.这样,以后你要叫第三个儿子的时候直接叫"按钮三"即可.如果你嫌这个名字乡下味太浓,如果你嫌这个名字不能很好地反映点击它后会执行怎样的操作不清楚,你可以通过双击按钮表面激活它,可重新为按钮贴上合适的显示标签.需要提醒你的是,这里的标签只是它显示在你面前的样子,实际上它是什么名字?我们可以点击它,看一下名称框里是什么. 

 

3.jpg (16.03 KB)

2009-8-13 14:54

为什么显示出来的是一样,而实际的名字却是另一样呢?也许你现在会感到迷茫,但不用管它,以后当我们学习了属性后,一切就自然明白了.

  下面我们来试一试用按钮操作:
   (1)选择单元格或单元格区域;
   (2)单击按钮。
    

4.jpg (61.93 KB)

2009-8-13 14:54

  按钮就像装在楼下的门铃,美丽的嫦娥仙子家住在502,猪八戒来到楼下,找准号码502,轻轻一按,“叮咚,叮咚……”,嫦娥在楼上就给八戒开门了,八戒不用在楼下大声地喊“嫦娥,开门。”也不用花两毛钱给嫦娥打个电话,当然更不用顺着下水管从墙上爬进嫦娥的窗户,方便而实在吧?
  这种遥控式的命令的确能让繁琐的操作变得简单而方便,让我们获得了一些使用Excel标准命令所不能实现的功能。如果你是八戒,当你熟悉了如何使用这种遥控一样的门铃以后,你可能都会奇怪自己当初在没有门铃的情况下,那段漫长的爬下水管道的日子是怎么熬过来的。
  让嫦娥仙子开门的方法有很多种,同样执行宏也有多种方法可以选择,我们还可以把宏指定给图片,自选图形,这些比较简单,和指定给窗体按钮是一样的,同时我们还可以把宏指定给某个“事件”,比如单击工作表,双击工作表,激活工作表,打开工作簿等等,你要安什么要的门铃,选什么样的音乐,随你了。
  需要强调一点的是,我们刚说的“事件”是一个重要的概念,八戒按门铃,就是一个“事件”,这个“事件”引发了嫦娥的开门,只有门铃响了,嫦娥才会去开门。除此而外“方法”“对象”“属性”都是接下来我们会经常接触到的,慢慢走,留心点,一路上将会精彩不断。
-----------------------------------------------------------------------------------------------------------
    6、小结
  到这里,我们对宏应该有一个简单的了解了吧?宏实际上就是一个简单的VBA的Sub过程,它保存在模块里,以Sub开头,以End Sub结尾,执行时就从第一句逐句执行,直到End Sub结束。就像前面我们说的武术运动员练的那段套路动作,总是抱拳,扎马,出拳然后踢腿,永远不可能没有扎马就出拳,没有出拳就踢腿。我们今天录的这段宏也总是先设字体,再改字体颜色,这种顺序永远不会乱。
  说完这些,你是不是感觉这些操作古板得没有生气?是不是感觉这宏的操作不能满足自己的需求?
  叶枫想告诉你的是,宏代码绝不等于VBA,它只是VBA里最简单的运用,尽管许多Excel过程都可以用录制宏来完成,但是通过宏代码还是无法完成许多的工作,如:
  (1)不可以建立公式,函数;
  (2)没有判断或循环的功能;
  (3)不能进行人机交互;
  (4)无法显示用户窗体;
  (5)无法与其他软件或文件进行互动。
       …….

  所以,你看了上面的内容后千万不要以为宏就是VBA了,更不要以为自己已经会VBA了,事实上是你才刚沾上VBA的边,或者说连边都没沾上,甚至连宏今天我们都只是作了简单的介绍。

  路漫漫其修远兮,还等着我们上下去求索,路在脚下,武林高手总是从练习简单的套路动作开始,不要厌倦扎马的单调,静下心多练练,这会是你以后练习武功招式的一个基础,孔子老人家说了,要温故而知新,记得复习巩固,不要学了后面忘了前面,到下次叶枫再见到你的时候你什么都忘记了,好了,今天就到这里,让我们一起加油~~~~

菜鸟谈VBA最最基础入门相关推荐

  1. Vue.js最最最基础入门的笔记整理

    2021.1.23 文章目录 Vue.js学习笔记(一) 准备工作 学前须知 开发工具 课程安排 Vue基础 Vue简介 第一个Vue程序 el:挂载点 data:数据对象 本地应用 1.内容绑定,事 ...

  2. 硬件工程师,PCB工程师最最最基础入门

    封装 学硬件,基础中的基础就是封装,看懂元器件,知道元器件是什么,知道元器件是干什么的极其重要 常见封装 : BGA,SOP,QFP,PLCC 封装重要指标: 芯片面积和封装面积之比,比值越解决1:1 ...

  3. 【菜鸟教程】Dubbo基础入门下——Dubbo的入门案例

    hm视频还是有点粗-源码分析跟没讲一样 要学深入的话还是买书吧 Dubbo高可用 服务路由 服务路由包含一条路由规则,路由规则决定了服务消费者的调用目标,即规定了服务消费者可调用哪些服务提供者,Dub ...

  4. 【菜鸟教程】Zookeeper基础入门(使用curator)【下】

    curator curator是Netflix开源的一个zookeeper客户端,后来捐给apache.curator框架在zookeeper原生API接口上进行了包装,解决了很多zookeeper客 ...

  5. Office VBA开发经典-基础入门卷 配套资源下载

    <Office VBA开发经典 基础入门卷> 刘永富 刘行 著 清华大学出版社 封面截图: 购书链接: 京东网 淘宝网 当当网 实例源代码文件: https://pan.baidu.com ...

  6. php 正则 菜鸟,PHP正则表达式基础入门

    思维导图 介绍 正则表达式,大家在开发中应该是经常用到,现在很多开发语言都有正则表达式的应用,比如JavaScript.Java..Net.PHP 等,我今天就把我对正则表达式的理解跟大家唠唠,不当之 ...

  7. android 菜鸟面单打印_1.0 Android基础入门教程

    本教程于2015年7月开始撰写,耗时半年,总共148节,涵盖了Android基础入门的大部分知识,由于当时能力局限,虽已竭尽全力,但对于一些问题的分析难免有所纰漏,敬请读者海涵!IT技术更新换代很快, ...

  8. cad vba编程从入门到精通_【CAD教程】CAD2020零基础入门到精通全套视频教程

    AutoCAD是如今一款使用最广泛的工程绘图软件.普及率非常高,相信不管你从事的工作是哪个行业,都有机会接触到它,重要性仅次于Office办公套件了.如果你还不熟悉或还不够熟悉,建议都尽快来学习一下. ...

  9. Mongodb最基础入门教程

    Mongodb最基础入门教程 如果想了解一下redis的入门教程,可以去看一下我的上一篇博客 Mongodb的安装大家可以参考一下其他博主的博客,这里我就不做介绍了.不过值得注意的是,在Linux版本 ...

  10. 呕心沥血整理的Java零基础入门到精通全套知识点教程

    学习 Java,我将会从三个阶段来介绍,分为初级.中级和高级 计算机基础 计算机基础都包括哪些呢? 计算机组成原理.操作系统.计算机网络.数据结构与算法. 计算机组成原理 先说计算机组成原理,这部分内 ...

最新文章

  1. Debain 7.2安装配置
  2. SessionFactory 概述
  3. php函数用粗体字显示,用来设置粗体字的属性是什么
  4. http模拟登陆及发请求
  5. clone oracle ebs
  6. 四、day02切换滑块
  7. C语音 unsigned char, int的取值范围
  8. Mixly第三方用户库开发Arduino UNO使用EMW3080连接阿里云
  9. android studio秘钥库文件不存在,获得SHA1以及错误java.lang.Exception: 密钥库文件不存在: keystore...
  10. 无力吐槽CSDN博客设计
  11. NUCLEO-F401RE
  12. js中click()与onclick()的区别
  13. 意大利奢华品牌菲拉格慕香水联名下午茶;星巴克月饼全新上市 | 食品饮料新品...
  14. 深度学习计算机视觉学习路线
  15. 操作系统抖动(颠簸)
  16. windows7问题集合
  17. 3度带6度带换算以及带号计算
  18. [附源码]Python计算机毕业设计二手图书回收销售网站
  19. Android高效的EPG界面实现方式
  20. oracle显示员工的名字和姓氏,如何在sql中以a和b开头显示员工姓名

热门文章

  1. zkLedger: Privacy-Preserving Auditing for Distributed Ledgers zkLedger:保护分布式分类帐的隐私审计
  2. 解决 “Authentication required. System policy prevents WiFi scans“ 的问题
  3. 创建不带参数的存储过程
  4. Unity - Timeline 之About Timeline(关于Timeline)
  5. coffeescript java 执行_coffeescript 运行原理
  6. 鬼谷八荒逆天改命词条通过C++代码制作
  7. 如何帮银行保持长期竞争力?融360天机公布独家秘诀
  8. 切蛋糕问题【小学二年级奥数】
  9. 基于C++的深度学习模型部署
  10. Python:计算任意n阶矩阵行列式