1、从语法上来说:两者近乎完全相同
2、从编辑工具上来说:
VBA 的编辑工具相对落伍一点,VB 的编辑工具则更智能一些
3、从使用方法上来说:
VBA 需要在应用程序内运行,拿Excel来说,你必须打开一个Excel文档,然后才能执行文档里的VBA代码;VB 则不需要,你可以生产自己的exe文件去执行
4、从功能上说:
VBA 是针对某个特定的应用开发的特定语言,如果想要对某个特定的应用执行大量的,复杂的自动化操作,那么VBA就非常合适,因为应用里的绝大部分功能都可以通过VBA来操作;
VB 相对于VBA来说,去操控某一个特定的应用就没有相应的VBA灵巧,所以更适用于去完成一些不需要与其他应用有太多交互的任务
扩展资料:
VBA程序员很多是业余程序员,正因为业余,解决的却是工作中需要解决的问题;所以,VBA程序大多都是只是在部门内部或个人使用的小工具。集成了VBA的其他应用程序也很多,但真正能为程序增色的不多。
参考资料来源:
百度百科-VBA
vba主要应用在Office组件里。比如在Excel里,可以自己写函数,可以用代码定义一系列的操作。
vba作为程序的自动化脚本而存在,是为了提高程序的自动化程度。
而VB是编写程序的工具。
VB是一门独立的编程语言,全称Visual
Basic,VBA全称为Visual
Basic
for
Applications,VBA是VB语言的子集,主要用于OFFICE办公软件、CAD中编写代码用于控制宿主程序实现办公自动化。VB编写的代码在操作系统中可以独立运行(需要运行库支持),但是VBA不能独立运行,需要宿主程序的支持,如前所述的OFFICE软件和CAD等。
VB一直以来被认为有以下优缺点:优点是上手快、开发效率高;缺点是能力有限,运行效率低。这正是有些软件把VB做为首选语言,而有些软件肯定不会用VB做的原因。而很多VC,DELPHI的程序员都认为VB里搞开发不自由,它让我们做事变容易的同时,也让我们发挥的余地越来越小。
首先VBS不应该和VB、VBA放在一起比较,它是微软按照自己定义的ActiveX Scripting规范完全从头开始写成的脚本语言,虽然它的语法结构和VB非常相似,但VBS仅仅依靠自动化对象来扩充其功能(只有后期绑定),它不能用implements来实现接口,不可能在VBS里直接使用API,没有VarPtr这样能得到指针的函数,而VBS缺少的这些功能正是VB和VBA所特有的。当然,这不是说VBS不如VB或VBA,Windows已经为VBS提供了足够强大的功能,我们可以用VBS来做脚本COM组件,而且借自动化对象的能力VBS可以说能力无限,所以有病毒用VBS来写,对程序员来说VBS最重要的功能莫过于可以给自己的软件提供宏功能,就象VC中提供的VBS宏功能那样。注意,VBS是Free的,这和在Office中使用VBA来提供宏功能不同,要集成VBA需要价格不低的许可证费用,关于脚本语言可参见MSDN中Platform SDK/Tools and Languages/Scripting。(在本系列后面的文章《脚本功能》中我会实做一个用VBS来提供宏功能的小软件)
1.
VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(EXCEL等)自动化
2.
VB具有自己的开发环境,而VBA必须寄生于已有的应用程序.
3.
要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的父应用程序,例如EXCEL.