分享

教程 | 如何有效的学习VBA

 逐梦经典 2022-03-11

写在前面

用好VBA的话确实可以让你的工作效率带来质的提升。如果有人跟你说可以用Python什么的语言处理Excel,你可以无视他了。毕竟大部分人并不是计算机专业人员,只不过是为了提升自己的效率而已,说白了只是为了实用的目的学的。

那么VBA应该怎么学呢?当然VBA可以有很高级的用法,其实VBA主要有两部分的内容:Visual Basic的语法Excel的对象模型体系。如果这两部分都搞懂了,实践中遇到问题,上网搜搜就可以了,或者关注公众号URItker多模仿学习。

首先你需要了解的其实只是一个中心—“变量”,两个基本点“过程和函数”和三个代表“顺序、判断、循环”。只要你建立了这些概念,就可以开始边练边学了。
图片

一个中心:变量

VBA和C语言一样都是命令式的语言,变量是执行计算的中心,也就是编程的过程,多数时候是在对变量进行加工。这个概念就好比数学里面的函数,有个原变量,函数加工之后就得到了因变量。比如要求平方。
Dim X as IntegerX = 5X = X * X
上面的代码里面X就是个变量,X = 5是给X一个初值,X = X * X就是对X进行的加工,也就是求平方。

两个基本点:过程与函数

VBA区分过程与函数,实际上这两个基本一样。函数是什么?这里的函数,其实和数学的函数很像,把变量丢进来(参数),产出就函数的返回值。还是举平方的例子:
Function Square(Num As Integer)  Square = Num * NumEnd Function 
Sub Fun1() Debug.Print Square(5)End Sub
函数就是Square,和函数同名的变量就是你要返回的值。把变量Square的值设置为你要返回的值就可以了。过程呢,也就是Sub,其实就是不返回值得函数。上面的过程Fun1里面调用了我们写的函数Square,传入了一个参数5。

三个代表:顺序循环判断

“顺序”是最基础的语句执行模式,说白了就一句接着一句的执行。上面代码就是顺序执行的一个例子。先赋初值给X,然后再求平方。

“判断”呢,就是说,根据某个判断结果,来选择执行那些语句:

If X > 5 Then ' Do something Else ' else is optional ' Do elsething End If
“循环”就是重复做某件事情,这大约是最能解放你双手的语句了。比如要求1~100的和,那么可以X=X+1 X=X+2 …… X=X+100,是不是快累死了?没关系,循环解救你:
Dim Sum as Integer 
Sum = 0 For i = 1 to 100 Step 1  Sum = Sum + iNext
Debug.Print Sum

上面的代码应该挺直白,说白了就是设置一个变量Sum,设初值为0,然后从(For)1加到(to)100,然后Debug.Print Sum把最后结果打印出来。

写在最后

当掌握了一个中心两个、基本点和三个代表以后,就要了解怎么用VBA操作Excel了,这一部分是VBA(Visual Basic for Application)中for Application的部分。于是Excel的VBA对象模型就登场了。其实也就是Application代表Excel程序,Workbooks代表所有打开的Excel文件的,Sheets代表Excel文件里面的表单,Range代表一个单元格区域什么的。比如:
Range('A1').Value = 1
就是将当前表单的A1单元格的值设置为1。打开VBA的录制宏,试一试你就了解了,很简单的!Good luck,希望本公众号里的文章能够助力你的成长。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多