科学

VBA

Visual Basic宏语言

中文名: 外文名:Visual Basic for Applications 所属学科: 释义:Visual Basic的一种宏语言 功能:扩展Windows的应用程式功能 发行时间:1993年 语言属性:应用程序一种通用的自动化语言 简称:VBA 具备功能时间:1994年 操作系统:Microsoft Visual,Mac OSX 启发语言:QuickBASIC,Visual Basic
VBA介绍
Visual Basicfor Applications(VBA)是VisualBasic的一种宏语言,是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展Windows的应用程式功能,特别是MicrosoftOffice软件。也可说是一种应用程式视觉化的Basic脚本。该语言于1993年由微软公司开发的的应用程序共享一种通用的自动化语言。

背景

多年来,Microsoft公司一直对新闻界及开发人员暗示,它的长远策略包括一种通用的应用程序编程语言。这种语言将用于微软的所有应用程序中,它起源于应用得相当广泛的计算机语言—VB。这种语言将向高级用户及开发人员提供一种应用程序间通用的应用程序语言(也就是宏语言),因而可以减少学习时间和支持费用;而且这种语言也会为开发人员提供一种开发方法,用于开发集成多个应用程序的系统,即多个应用程序协调工作,以解决商业上的问题。

相关区别

1.VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(EXCEL等)自动化

2.VB具有自己的开发环境,而VBA必须寄生于已有的应用程序.

3.要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的父应用程序,例如EXCEL.

4.VBA是VB的一个子集。

尽管存在这些不同,VBA和VB在结构上仍然十分相似.事实上,如果你已经了解了VB,会发现学习VBA非常快.相应的,学完VBA会给学习VB打下坚实的基础.而且,当学会在EXCEL中用VBA创建解决方案后,即已具备在WORDACCESSOUTLOOKFOXPROPOWERPOINT中用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倍,而是数十倍或更多,因为在学习过程中,必须可以把这些对象在大脑中很好的组织,以控制其复杂度。

VisualBasicforApplications(简称VBA)是新一代标准宏语言,是基于VisualBasicforWindows发展而来的。它与传统的宏语言不同,传统的宏语言不具有高级语言的特征,没有面向对象的程序设计概念和方法。而VBA提供了面向对象的程序设计方法,提供了相当完整的程序设计语言。VBA易于学习掌握,可以使用宏记录器记录用户的各种操作并将其转换为VBA程序代码。这样用户可以容易地将日常工作转换为VBA程序代码,使工作自动化。因此,对于在工作中需要经常使用Office套装软件的用户,学用VBA有助于使工作自动化,提高工作效率。另外,由于VBA可以直接应用Office套装软件的各项强大功能,所以对于程序设计人员的程序设计和开发更加方便快捷。

注意

本文提到的VisualBasic如果不加特别说明,都是指VisualBasicForApplications。

对象是VisualBasic这一宏伟大厦的基石,在VisualBasic中进行的几乎任何操作都与修改对象有关。Word的任何元素(如文档、段落、域、书签等),都可以用VisualBasic中的对象来代表。与平面列表中的命令不同,部分对象只能通过其他对象才能加以访问。例如,可以通过不同的对象(如Style、Selection和Find对象)来访问Font对象。

应用加粗格式的编程任务就表明了两种编程语言之间的区别。下面的WordBasic指令对所选内容应用加粗格式。

下面的示例是VisualBasic语句,也是对所选内容应用加粗格式。

Selection.Font.Bold=True

VisualBasic不包含Bold语句和函数,却有一个名为Bold的属性(属性通常指一个对象的特性,例如大小、颜色,或者是否是加粗)。Bold是Font对象的一个属性。同样地,Font是返回一个Font对象的Selection对象的一个属性。按照下面的对象结构,可以生成指令,以将加粗格式应用于所选内容。

Bold属性是一个Boolean类型、可读写的属性。这意味着可以将Bold属性设置为True或False(真或假),也可返回当前值。下面WordBasic指令的返回值表明是否将加粗格式应用于所选内容。

x=Bold()

下面的示例是VisualBasic语句,返回所选内容的加粗格式的状态。

x=Selection.Font.Bold

要在VisualBasic中执行一个任务,就需要确定合适的对象。例如,如果用户想应用【字体】对话框中的字符格式,可使用Font对象。然后需要确定如何理顺从Application对象到Font对象的Word对象结构,以找到包含需要修改的Font对象的对象。在确定了该对象的路径之后(例如,Selection.Font),可使用VisualBasic编辑器中的【对象浏览器】、【帮助】或【自动列表成员】之类的功能来确定可将什么属性和方法应用于该对象。

将WordBasic宏转换为VisualBasic

宏可使任务自动化,如果在Word中重复进行某项工作,可用宏使其自动执行。宏是将一系列的Word命令和指令组合在一起,形成一个命令,以实现任务执行的自动化。用户可创建并执行一个宏,以替代人工进行一系列费时而重复的Word操作。事实上,它是一个自定义命令,用来完成所需任务。

宏的一些典型应用如:加速日常编辑和格式设置、组合多个命令、使对话框中的选项更易于访问、使一系列复杂的任务自动执行等。

Word提供了两种创建宏的方法:宏录制器和VisualBasic编辑器。宏录制器可帮助用户开始创建宏。Word在VBA编程语言中把宏录制为一系列的Word命令。可在VisualBasic编辑器中打开已录制的宏,修改其中的指令。也可用VisualBasic编辑器创建包括VisualBasic指令的非常灵活和强有力的宏,这些指令无法采用录制的方式。

当第一次进行任何操作时,Word2000将自动转换Word6.x或Word95模板中的宏。

其他

掌机GBA的模拟器,VisualBoyAdvance,简称VBA,目前最新版本为1.80中文版。

该模拟器由Forgotten开发,是目前windows上最好的几款GBA模拟器之一,据说可以完美模拟GBA上100%的游戏并且集成GB/GBC模拟功能,可以实现一机玩GB/GBC/GBA游戏。遗憾的是早已停止开发,不过在VBA基础上有其他团队开发的GBA模拟器,功能性可能更为强大。

VBA功能较为强大,支持及时存/读档、多点及时存档、金手指、按键修改、音乐音效等功能,甚至支持反编码调试。

相关资讯
内容声明

1、本网站为开放性注册平台,以上所有展示信息均由会员自行提供,内容的真实性、准确性和合法性均由发布会员负责,本网站对此不承担任何法律责任。

2、网站信息如涉嫌违反相关法律规定或侵权,请发邮件至599385753@qq.com删除。

Copyright © 趣爱秀