VBA和VB有什么区别?

来自:    更新日期:早些时候
VB与VBA有什么区别?~

转自百度百科
--------------------------------
VBA
Visual Basic for Applications(VBA)是一种Visual Basic的一种宏语言,主要能用来扩展Windows的应用程式功能,特别是Microsoft Office软件。也可说是一种应用程式视觉化的Basic Script。1994年发行的Excel 5.0版本中,即具备了VBA的宏功能。

VBA是什么
  直到90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言.例如:可以用EXCEL的宏语言来使EXCEL自动化,使用WORD BASIC使WORD自动化,等等.微软决定让它开发出来的应用程序共享一种通用的自动化语言--------Visual Basic For Application(VBA),可以认为VBA是非常流行的应用程序开发语言VISUAL BASIC 的子集.实际上VBA是寄生于VB应用程序的版本. VBA6

VBA和VB的区别包括如下几个方面:
  1. VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(EXCEL等)自动化   2. VB具有自己的开发环境,而VBA必须寄生于已有的应用程序.   3. 要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的父应用程序,例如EXCEL.   尽管存在这些不同,VBA和VB在结构上仍然十分相似.事实上,如果你已经了解了VB,会发现学习VBA非常快.相应的,学完VBA会给学习VB打下坚实的基础.而且,当学会在EXCEL中用VBA创建解决方案后,即已具备在WORD ACCESS OUTLOOK FOXPRO PROWERPOINT 中用VBA创建解决方案的大部分知识.   * VBA一个关键特征是你所学的知识在微软的一些产品中可以相互转化.   * VBA可以称作EXCEL的“遥控器”.   VBA究竟是什么?更确切地讲,它是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案.   此外,如果你愿意,还可以将EXCEL用做开发平台实现应用程序.   Office取得巨大成功的一个重要原因就是VBA,使用VBA可以完成很多事情,基于Excel、Word的VBA小程序不计其数。   VBA程序员很多是业余程序员,正因为业余,解决的却是工作中需要解决的问题;所以,VBA程序大多都是只是在部门内部或个人使用的小工具。   集成了VBA的其他应用程序也很多,但真正能为程序增色的不多。   大多数人看到了VBA可以自动化一个程序,可以扩展已有程序,但没有看到在Office中,VBA代码可以是录制的,而不是写出来的,带来的好处是,学习曲线变得非常缓。如果没有宏录制功能,要熟悉某个Office组件的对象模型,绝非一日之功。   以ArcGIS为例,ArcGIS扩展必须使用ArcObject,不管是使用VBA也罢,VB也罢,还是C++也罢。但同时,ArcObject的学习不是一天两天可以搞定,对于业余程序员,要使用VBA来扩展ArcGIS,几乎没有可能;专业程序员又不屑使用VBA;而对于公司,如果要基于ArcObject来扩展ArcGIS,选择VBA意味着源码的保护很困难。所以,ArcGIS的VBA就如同鸡肋。   不过,学习AO的时候,使用VBA比使用其他语言要容易一些,写几行代码,然后直接运行测试结果,这种交互式的学习应该是最好的学习方法。   ArcGIS以及AO与Office相比,还有一个很大的差别,就是ArcGIS缺乏中等粒度的对象,例如Word和Excel的Range对象。对于Office开发,可以在对底层小粒度对象一无所知的状况下做很多事情,这就是抽象的力量。常人可以处理的复杂度是有限的,面对数十个对象和几百个对象,后者需要付出的努力不是10倍,而是数十倍或更多,因为在学习过程中,必须可以把这些对象在大脑中很好的组织,以控制其复杂度。   
Visual Basic for Applications(简称VBA)是新一代标准宏语言,是基于Visual Basic for Windows 发展而来的。它与传统的宏语言不同,传统的宏语言不具有高级语言的特征,没有面向对象的程序设计概念和方法。而VBA 提供了面向对象的程序设计方法,提供了相当完整的程序设计语言。VBA 易于学习掌握,可以使用宏记录器记录用户的各种操作并将其转换为VBA 程序代码。这样用户可以容易地将日常工作转换为VBA 程序代码,使工作自动化。因此,对于在工作中需要经常使用Office 套装软件的用户,学用VBA 有助于使工作自动化,提高工作效率。另外,由于VBA 可以直接应用Office 套装软件的各项强大功能,所以对于程序设计人员的程序设计和开发更加方便快捷。

一、主体不同
1、VB:是Microsoft公司开发的一种通用的基于对象的程序设计语言。
2、VBA:是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
二、语言特点不同
1、VB:结构化的、模块化的、面向对象的、包含协助开发环境的事件驱动为机制的可视化程序设计语言。
2、VBA:能用来扩展Windows的应用程序功能,特别是Microsoft Office软件。也可说是一种应用程式视觉化的 Basic 脚本。


三、作用不同
1、VB:拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建Active X控件,用于高效生成类型安全和面向对象的应用程序。
2、VBA:可以使用宏记录器记录用户的各种操作并将其转换为VBA 程序代码。这样用户可以容易地将日常工作转换为VBA 程序代码,使工作自动化。
参考资料来源:百度百科-VBA
参考资料来源:百度百科-Visual Basic

VBA和VB的区别主要在以下两个方面:
1.程序设计方面:VB可以用于设计独立运行的应用程序,VBA只能被其它应用程序调用,不能完全用VBA设计独立运行的应用程序。
2.程序运行方面:用VB设计的应用程序可以脱离其开发环境而独立运行,VBA不能单独被执行,只能被office程序(Word、Excel、Access、OutLook、FoxPro和PowerPoint等)所调用,即不能脱离office程序而独立运行。

VBA是VB的子集,相当于VBScipt与VB的关系
Office自带VBA,作为宏处理……

vba主要应用在Office组件里。比如在Excel里,可以自己写函数,可以用代码定义一系列的操作。

vba作为程序的自动化脚本而存在,是为了提高程序的自动化程度。

而VB是编写程序的工具。

VBA还可以被一些其他第三方程序中调用,作为二次开发接口,如AutoCAD,winCC等


VBA和VB有什么区别?视频

相关评论:
  • 19810756933VBA和VB差别大吗?
    芮股雷VBA是OFFICE中自带的编程语言,而VB是独立的开发程序,也可以说,VBA是VB的一个子集,两者代码的编写规则基本相同

  • 19810756933VB 和VBA的区别
    芮股雷VB是一种专门的可视化编程的缩写。而VBA是各种Microsoft Office软件中的宏代码。VB可以编译生成可执行程序,而VBA只能在相应的Microsoft Office软件中解释执行。二者语法基本相通。

  • 19810756933先学习VB好还是学习VBA好?
    芮股雷而网上能找到的关于VBA的教材都以介绍A为主,关于语法的问题是属于VB语言事,所以自然先学VB了。学好了VB,对EXCEL VBA ,用不着再系统的学习了,粗略了解一下EXCEL的对象库就可以 还有,对机械专业更适合VB, EXCEL VBA 只局限于处理一些表格数据,比如定时采集某些仪器数据,并在窗口上动态的显示曲线图...

  • 19810756933vbs、和vb.net,vbs和vba有什么区别?
    芮股雷以保持在编程世界中的独特地位。通过以上内容,我们对VB及其与VBA、VBS之间的区别有了更深入的理解。VB不仅提供了一种快速开发的工具,还揭示了其在底层系统操作中的复杂性和对最终程序的影响。VB的开发者通过HACK精神和深入研究,可以发现更多隐藏的功能和优化潜力,从而提升其开发能力。

  • 19810756933vba和vb哪个简单点啊,
    芮股雷vba简单,但是实现的功能主要是针对于OFFICE系统的,vb的功能强大,相对也就复杂了 如果你单纯是为了学习宏编程,建议你还是学习vba即可。

  • 19810756933vba全称是什么?
    芮股雷VB与VBA区别:1. VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(EXCEL等)自动化 2. VB具有自己的开发环境,而VBA必须寄生于已有的应用程序.3. 要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的父应用程序,例如EXCEL.4....

  • 19810756933vb和vb有什么相同或者不同
    芮股雷但是vb也可以通过调用库来实现对其他应用程序(如excel)的控制 visual basic for application 应用程序开发语言VASUAL BASIC 的子集. vba的运行不需要vb,但是需要vba所在的文档 可以认为VBA是非常流行的应用程序开发语言VASUAL BASIC 的子集.实际上VBA是"寄生于"VB应用程序的版本.VBA和VB的区别包括如下几...

  • 19810756933VB,VBA, VB.net 都有什么区别和共同点?
    芮股雷VBA主要VB是office上的应用,VB.net可以说是VB的最新版本,如果就是业余或者刚入门的话,语法什么的和VB几乎完全一样。只是语法上面,要求比VB要求规范,比方说VB6.0里面Text1="1"读的出来,VB.net就会报错,一定要textbox1.text="1"才可以。对于初学者来说,VB.net这种规范要求有益无害。

  • 19810756933VBA是什么_vba是什么语言
    芮股雷是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展Windows的应用程序功能,特别是MicrosoftOffice软件。它也可说是一种应用程式视觉化的Basic脚本。VBA提供了面向对象的程序设计方法,提供了相当完整的程序设计语言。它的编写是以子过程和函数为单位,在Aess中以模块形式出现。

  • 19810756933Excel VB,VBA,VBS的区别是什么?
    芮股雷它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。VBA: Visual Basic for Applications(VBA)是Visual Basic的一种宏语言,是微软开发出来在其...

  • 相关主题精彩

    版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

    Copyright © 喜物网