![7316d5afa35c362bd59417c05b7883a3.png](https://i-blog.csdnimg.cn/blog_migrate/5a841eb0715f0e3891895984f79cea85.png)
我有一条生产流水线,理想情况下,配备足够的原材料、工人、资金和能源,就可以源源不断地生产产品。但现实中,会有各种情况发生,比如停电,原材料断货,产品滞销必须调整工艺等,生产线会自动解决这些问题吗?不会。
1宏与VBA的不同
宏与VBA存在本质上的区别。
VBA是OFFICE应用的一种编程语言,其本质是语言;
宏是由用户对规则或模式进行预定义的一系列的具体操作,其本质是指令/命令。
此外,VBA主要应用于OFFICE相关工具;而宏的应用范围并不局限于OFFICE。
2宏与VBA的联系
在EXCEL中,我们可以手动操作录制宏(后台自动转化为VBA代码),也可以直接编写VBA代码来录制。我们可以将宏看作使用VBA所编写的简单程序。
宏就像是本文一开始所提到的生产流水线,我们使用VBA编写代码或是手工录制后,它便能够高效地进行大批量处理,但它通常只能应对我们预先所定义的情况。
流水线会不断升级换代,功能也会越来越复杂和高级,但仍然会有很多未知的因素,需要我们对其进行调整,这些事件的发生频率通常会很低,却会带来巨大的影响。
这些情况下,具备批量处理特点的宏并不能发挥其优势,我们需要使用VBA编写特定的程序来满足需求。
知识点总结:
①宏与VBA的本质不同,宏是指令/命令,VBA是语言;
②宏与VBA的应用范围不同,VBA主要应用于OFFICE相关工具,宏的范围更广;
③宏能够通过VBA进行编写,可以将其看作是使用VBA所编写的简单程序,但对于预定义情况外的需求,我们需要使用VBA编写程序来实现。
有兴趣的同学可以关注"VBA从入门到精通"这个微信公众号来学习。