上周,我发了关于Excel VBA的第一篇文章后,社群里就砸开了锅
看到辣么多小伙伴们,辣么喜欢,我的干劲儿就更足了。
于是,我准备把Excel VBA写成一个系列免费教程,撸完这个系列你也是VBA界的黑山老妖了。
今天是这个系列的第2篇,我们用「如何利用VBA加减乘除运算」的例子,帮助大家理解VBA的一些基础概念。
基础很重要,正所谓“基础不牢,地动山摇”。好了,闲话不多说,直接上硬菜(大家看图自己跟着实操)
1. 准备案例
(1)新建一个Excel工作簿,随意命名
(2)单元格A4输入「10」,单元格B4输入「+」,单元格C4输入「8」,单元格D4输入「=」
2. 如何计算上述运算,并写入单元格E4里?
(1)青铜小白-符号运算
(2)铂金老鸟-公式运算
(3)王者大牛-代码运算
有经验的同学,看到这里,肯定嘴角上扬45度,“我用公式就能轻松实现,何必用VBA呢?”
不错,用公式确实能够实现上述案例的结果,但是,VBA拥有公式无可比拟的优越性:
第一,公式无法使用「按钮控件」;
第二,日常的工作场景一般会涉及加减乘除等综合运算,如果我们使用公式就会格外的复杂而难以控制。
按钮控件:大家可以将其类比我们常见的“保存”、 “预览” 、“确定”等按钮,当然了还有需要输入文本的“文本框”、“下拉列表”、“复选框”等
3. 那VBA如何操作呢?
(1)点选「开发工具」-「插入」-「按钮(窗体控件)」
(2)鼠标变为「黑色+号」,按住鼠标「左键」,向右拖动
(3)松开,自动弹出一个窗口
指定宏:是指按下某个按钮,运行哪一段VBA小程序
宏(Macro):简单理解就是一段用VBA编写的小程序
(4)修改宏名「加减法」,点击「新建」
(5)自动弹出界面,进入了VBA代码编辑器
上次介绍了什么是VBA以后,我们知道多数代码放置在标准代码「模块」中。刚刚的操作自动在左边的「工程」窗口插入「模块1」,而右边是「模块1」的代码区域
(6)系统自建的代码解释
sub和End sub:VBA系统保留字,具有特殊含义。
大白话就是“看到这些单词系统就去执行指定的动作”,比如:sub代表一个程序的开始,End sub代表该程序的结束。
做减法:这段小程序的名字。
要点注意:
a. sub和小程序之间有1个空格,切记别忘了
b. 程序名称尽量采用英文
c. 1对圆括号为输入法「英文模式下」的输入内容
(7)题目分析
我们将题目翻译为白话就是:计算「单元格A4」和「单元格C4」的和,将结果写入「单元格E4」中
(8)开始写代码
我们按照正常的思考思路,在代码块区域输入“单元格E4 等于 单元格 A4 加上 单元格C4”,按下键盘「Enter」,发现立刻报错,我们看到:
a. 弹窗提示「编译错误」
b. 出错的内容自动变为红色
c. 以「蓝色」模糊定位到出错的位置
出错的主要原因是我们采用了“人类语言”,而不是计算机能够识别的语言,Excel只能识别VBA的语法。
那么,VBA语法是什么呢?别急,接着往下看~
(9)题目过渡
既然,我们知道怎样等价变换「加号」和「等号」,那么关于「单元格」就必须要引入一个重要的概念【cells属性】
(10)Cells属性
要点注意]:
a. Cells属性中是先行后列的次序,别颠倒了;
b. 字母的数字代表在26个英文字母中的位置,比如:A=1,B=2,C=3.....以此类推.
(11)书写代码
我们输入“Cells(4, 4) = Cells(4, 1) + Cells(4, 3)”,发现程序没有报错,然后删除上方错误的代码
(12)保存代码
点击右上方「保存」,VBA弹窗出现提示,我们点击「否」,在「保存类型」中选择「Excel启用宏的工作簿(*.xlsm)」
要点注意:
a.文件报错为「.xlsm」,而不是「.xlsx」
(13)点击「按钮1」,我们就可以查看结果
(14)鼠标右键 「编辑文字」,然后将「按钮1」变为「查看结果」
4. 总结
好了,最后,画一下知识点。
(1)什么是宏?
一段用VBA编写的小程序。
(2)宏的结构
(3)cells属性以及cells操作Excel单元格
(4)如何在Excel放置按钮,并关联宏
通过5步实现:
点选「开发工具」-「插入」-「按钮(窗体控件)」--->
鼠标变为「黑色+号」,按住鼠标「左键」,向右拖动 --->
松开,自动弹出一个窗口 --->
修改宏名「加减法」,点击「新建」
---> 编辑代码即可
要点注意:
在案例Excel文件中,附赠有日常工作中常用的「指定区域英文首字母自动转换为大写」小程序,大家可以直接拿去用,也可以分析一下那个代码。
最后,留个课后小练习:如何在Excel中其做他运算,并且各种运算符号能够随着按钮自动变换呢?