Excel VBA宏

一、宏与VBA

什么是宏与VBA

  • VBA(Visual Basic for Applications)是[Visual Basic](https://baike.baidu.com/item/Visual Basic)的一种语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展Windows的应用程序功能,特别是[Microsoft Office](https://baike.baidu.com/item/Microsoft Office)软件。它也可说是一种应用程式视觉化的 Basic 脚本。

  • 宏在计算机科学里是一种抽象(Abstraction),它根据一系列预定义的规则替换一定的文本模式。解释器编译器在遇到宏时会自动进行这一模式替换。对于编译语言,宏展开在编译时发生,进行宏展开的工具常被称为宏展开器。

    宏这一术语也常常被用于许多类似的环境中,它们是源自宏展开的概念,这包括键盘宏和宏语言。绝大多数情况下,“宏”这个词的使用暗示着将小命令或动作转化为一系列指令。

  • 在这里,我们通过VBA编写的一系列列指令组成的程序,称之为宏。通过学习VBA编写宏,有利于我们高效完成重复性的数据任务。

二、录制第一个宏

1、环境准备:

1.打开Excel,进入开始页面,点击选项
Excel VBA宏
2.在选项里面启用开发者工具选项
Excel VBA宏
3.在Excel最上边一栏中就出现了开发者工具,里面就有宏
Excel VBA宏

2、开始录制第一个宏

1.源数据准备,准备两份相同的数据方便后面检验宏的效果,在Sheet2里准备和Sheet1相同的数据。

区域 省份 1月 2月 3月 4月 5月 6月
华中 湖南省 4124578 2219791 2312553 2733342 2077356 1622397
华中 湖北省 3836901 2724075 822557 3696787 1949455 3271464
华中 安徽省 734152 2043402 1873927 2623462 2442073 678309
华中 江西省 652988 719675 758785 2298703 629380 359503
华南 福建省 2402120 859073 2222589 2482702 1372642 4364248
华南 广东省 1192215 4386766 948114 3399607 4488676 2834708
华南 海南省 2390163 3669796 1337083 4198628 1924993 3153451
华东 上海市 3771948 3611844 899594 1452958 3036240 1405649
华东 浙江省 2124820 4915076 2362902 1829293 1727879 2422167
华东 山东省 3592079 4491830 226058 1123985 4655060 4122184
华东 江苏省 4206888 2106160 1580212 3051050 440935 1229652
华北 北京市 4513520 2510656 2930520 3385216 2517223 4488737
华北 河北省 2953720 212384 2151415 2084952 869312 395011
华北 天津市 1368565 657230 3501192 746629 2380856 1161643

2.然后点击 “开始录制宏”
在这里插入图片描述
Excel VBA宏
确定后宏录制就已经开始
Excel VBA宏
4.宏操作
Excel VBA宏
1)对这个表格的第一行进行底色和字体颜色的处理

选中之后在开始里面选择填充颜色和字体颜色

2)在表格中间随便选择一格数据 Ctrl+A 选择全体数据进行居中处理

3)准备的数据里面的数字是销售额,所以我们选择这里的数字格式设置为货币格式,调整小数点后面的数字的个数,减少,只要整数

设置完成后的效果图

Excel VBA宏
5.停止录制,至此,宏已经录制完毕

6.然后可以用我们自己定义好的快捷键Ctrl+Shift+A启用宏,检验宏的效果

3、查看宏背后的VBA代码

单击Visual Basic查看VBA窗口,这个窗口是编写VBA代码的一个环境
Excel VBA宏

提示:

如果看不见代码文件的列表就单击视图,选择工程资源管理器即可。
Excel VBA宏
列表里面有两项,一个是Excel对象,一个是模块

双击模块1就可以看见代码窗口,就是我们刚才录制的宏的代码
Excel VBA宏

4、怎么保存带有宏程序的Excel

为了保证Excel的安全性,防止有VBA病毒植入,所以保存的时候要另存为 xlsm格式
Excel VBA宏
再次打开我们保存的带有宏程序的文件
Excel VBA宏
启用即可

5、宏文件的安全设置

Excel 开始 --> 选项 --> 信任中心
Excel VBA宏
在受信任位置处选择添加新位置,将我们平时存放学习宏的文件夹添加进去。这样再打开的时候就不会有启用提示了。
Excel VBA宏

三、使用相对引用录制宏

1、宏功能说明:

​ 隔行变色

2、先录制一个普通的宏

Excel VBA宏

步骤:

1.选中一行

2.填充颜色

3.隔一行选择

在Sheet2里测试宏,确定生效。

但是再次执行的时候不会有新的变化,就是只能实现变色一次,这是为什么?

3、查看VBA代码

Excel VBA宏

4、使用相对引用录制宏

还是先录制宏,给宏命名之后在开始操作前单击 使用相对引用

宏规则和步骤如上所示,录制完成后在Sheet4使用,发现可以隔行变色的功能可以重复实现。

5、查看两个宏的VBA代码

Excel VBA宏

6、通过表单控件运行宏

在开发者工具里面选择

插入 --> 表单控件 --> 在空白处点击 --> 关联要使用的宏
Excel VBA宏
按我们使用宏的规则,点击按钮就可以看到使用效果

Excel VBA宏

注意:

宏的使用是不可撤销的,所以对宏的操作一定要慎重

按钮的移动是鼠标右键选中移动

7、快速访问工具栏运行宏

在Excel选项里面点击快速访问栏

选中我们要的添加到 自定义快速访问工具栏
Excel VBA宏
还可以修改自定义快速访问工具栏里的图标
Excel VBA宏
使用宏的时候在这里点击即可
Excel VBA宏

8、保存宏到个人工作簿

保存到个人工作簿里的宏在全局都可见。

因为要想用当前工作簿中的宏的时候需要把这个宏文件打开,这样才可以在其他文件中使用。定义到个人工作簿中的宏则不受这个限制。

操作方式:

录制宏的时候保存在选择为个人工作簿

剩下的过程如上所示,用隔行变色的功能即可

确定宏可用之后检查宏
Excel VBA宏
可以看见和以前的宏不同的是出现了PERSONAL.XLSB这样的新格式

在当前Excel的视图里点击取消隐藏,就可以看见这个文件,它默认是隐藏的。

Excel VBA宏
我们的保存在个人工作簿中的宏程序就是保存在PERSONAL.XLSB这个文件中的。

我们再打开其他的Excel文档,找到宏,查看就可以发现隔行变色这个宏
Excel VBA宏

上一篇:自己花了2天时间,重新整理了个全面的vue2的模板


下一篇:Uipath调用VBA脚本,处理excel文档格式