如何学习Excel VBA?-vba基础教程258集视频教程

2023-09-01 18:37:40

 

经过上次两篇Excel应用的分享

有同学问我该如何学习Excel VBA,应该推荐什么教材

我以前看过不少Excel VBA教材,虽然看得多忘得也多

也写过不少VBA代码,但越深入越觉得,Excel VBA是一个很适合点到为止的知识:

在我看来VBA本身是寄生在Office套件中的脚本,所以语言本身的表达能力并不强,一旦需要脱离表格开发更多样化更深入的功能,立刻会有各种各样的替代品,甚至替代品本身比VBA好用多,比如Python甚至go也可以。

所以我对同学们想要学习VBA的路径建议很简单:

1 首先明确三个原则

1.1 明确你学习Excel VBA要做什么?对于Excel VBA,我觉得不应该为学而学,而是应该先明确自己遇到了什么报表处理上的业务,是当前Excel标准功能解决不了的,必须借助编程才能完成。我们的学习应该跟着具体业务场景走,一事一列,不断积累解决方案。1.2 点到为止。正如我前文所述,Excel VBA适合拿来就用,不适合过于深入钻牛角尖式的研究。一旦业务需要脱离Excel表格体系,立马换其他编程工具是一种成本更低更有效的解决思路。1.3 善用录制宏。这是Excel开发工具附带的功能,只要点击录制宏,然后再录制期间,进行任何表格操作都会形成相应的VBA代码,这就可以让我们不必查阅卷帙浩繁的使用手册,就知道某些功能的代码应该怎么写:

比如我想在代码中实现对选中的数据区域进行排序,但我们不知道代码怎么写:

我可以先点击一下录制宏,在录制期间,我们按照正常的Excel操作选中数据区域,然后点击排序功能

接着,结束宏录制,进入到代码页面,我们就可以看到这个期间我们-选中区域和排序操作产生的代码,我们可以将他们稍作改造集成到自己的代码当中:

2 区分VBA语言本身的学习和API或框架的学习

学习任何编程语言开发,往往包含两个阶段:

1 是语言本身的学习,内容无非以下几类:

基本数据类型(整型、浮点型、布尔、字符串等)、基本数据结构(数组、字典)、基本控制结构(条件判断、循环)、函数(方法、过程、事件)、对象模型、接口、泛型、语言特性等

由于VBA本身的特点所致,其语言本身的编程模型并不复杂,我们甚至可以通过一个案列覆盖其80%的语言特性:

2 API或者框架的学习:

API和框架是我们搭建应用的桥梁,我们通过组合别人事先编程好的接口和函数来完成我们的业务,这和我们平常用各种Excel函数很类似,我们不会自己去写vlookup函数,但是可以拿来使用,编程亦是如此。

到这里我们要学习各种Excel中的接口模型,比如Range,Cell,Sheets等完成我们对表格的控制和使用。

当我阅读很多Excel书籍的时候,往往有一个困惑,就是大多数Excel技术图书,都会将两个阶段杂糅在一起,当初学者对编程模型还未有个大体认识的时候,开篇就各种Range Cells FormulaR1C1,甚至贴上了非常生僻可以用录制宏解决的功能代码,一通组合拳下来直接劝退,很少有从语言本身开始,慢慢过渡到表格应用上的图书,这可能是当下Excel VBA技术图书普遍存在的问题,他们已经默认读者有一定的VB6基础(虽然这是大部分经管类大学生理所应当掌握的技能)

比如这TM竟然是第3页的内容,变量竟然还用中文命名:

所以,我在这里想单独开一个系列的文章,帮助有需要的同学,一点点走进Excel VBA的应用。

大致章节如下:

一、 VBA语言概览:我们通过编写一个基本的List链表数据结构,过一遍VBA语言本身的特性,这一章不夹杂任何Excel有关的API或者功能接口,单纯地使用语言自身,目的在于让大家对VBA编程本身先有个认识,如果你有VB6或者其他语言基础,只要粗略看一遍就可以了。

二、 不使用VBA情况下,利用5-6个主要函数和Excel标准功能(包括透视表,自定义表格,图表等),实现在Excel表上搭建一个小型可实用的财务系统:包括科目管理、往来单位管理、凭证录入、往来受控、报表自动生成、自动财务分析。

三、利用VBA重构小型财务系统(同时附上搭建Access),做到数据-报表-输入的三分离。通过第二章的学习,我们大致能够明白不使用VBA编程完成Excel报表业务的极限在哪里。而通过这一章,我们会了解到了什么样的业务场景,应该考虑使用VBA,如何用VBA控制表格(Range Cell等接口模型,自定义函数等),到了何种更深层次的场景应该果断放弃使用VBA,转而使用其他工具(点到为止)。

我们不纠结具体的功能细节,所有的目标就是完成我们的任务,最后会把所有代码和文件模板放出。

敬请期待


以上就是关于《如何学习Excel VBA?-vba基础教程258集视频教程》的全部内容,本文网址:https://www.7ca.cn/baike/73246.shtml,如对您有帮助可以分享给好友,谢谢。
标签:
声明

排行榜