概念

VB

Visual Basic(简称VB)是Microsoft公司开发的一种通用的基于对象的程序设计语言,为结构化的、模块化的、面向对象的、包含协助开发环境事件驱动为机制的可视化程序设计语言。是一种可用于微软自家产品开发的语言。 
“Visual” 指的是开发图形用户界面 (GUI) 的方法——不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象add到屏幕上的一点即可。 “Basic”指的是 BASIC (Beginners All-Purpose Symbolic Instruction Code) 语言,是一种在计算技术发展历史上应用得最为广泛的语言。
Visual Basic源自于BASIC编程语言。VB拥有图形用户界面GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAORDOADO连接数据库,或者轻松的创建Active X控件,用于高效生成类型安全和面向对象的应用程序 。
程序员可以轻松的使用VB提供的组件快速建立一个应用程序。

VBA

VBA(Visual Basic for Applications)是Visual Basic的一种语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件。它也可说是一种应用程式视觉化的 Basic 脚本。
1993年由微软公司开发的应用程序共享一种通用的自动化语言--------即Visual Basic for Application(VBA),实际上VBA是寄生于VB应用程序的版本。1994年发行的Excel 5.0版本中,即具备了VBA的宏功能。
 
学习GIS的应该知道在ArcGIS中也有ArcGIS VBA插件开发学习的部分,一般涉及ArcGIS系列软件二次开发的语言主要有C#、VBA、Python等。以ArcGIS为例,ArcGIS扩展必须使用ArcObject,不管是使用VBA也罢,VB也罢,还是C++也罢。但同时,ArcObject的学习不是一天两天可以搞定,对于业余程序员,要使用VBA来扩展ArcGIS,几乎没有可能;专业程序员又不屑使用VBA;而对于公司,如果要基于ArcObject来扩展ArcGIS,选择VBA意味着源码的保护很困难。所以,ArcGIS的VBA就如同鸡肋。所以通常的工具的开发等逐渐舍弃了VBA编程,并现在的趋势依博主看来正在由C#逐渐(或者说迅速)向Python3靠拢。
 
VBS
 
VBS是基于Visual Basic的脚本语言。VBS的全称是:Microsoft Visual Basic Script Edition。(微软公司可视化BASIC脚本版)。
其语言类似Visual Basic(VB)。是可以直接双击运行的*.vbs脚本文件。
 
 

VB 与VBA联系

VBA 是基于Visual Basic 发展而来的,它们具有相似的语言结构。Visual Basic 是Microsoft 的主要图形界面开发工具,VBA 5.0 (亦即VBA 97)则是Visual Basic 5.0 的子集。Visual Basic 是由Basic 发展而来的第四代语言。Visual Basic 作为一套独立的 Windows 系统开发工具,可用于开发Windows 环境下的各类应用程序,是一种可视化的、面向对象的、采用事件驱动方式的结构化高级程序设计语言。它具有高效率、简单易学及功能强大的特点。VB 的程序语言简单、便捷,利用其事件驱动的编程机制,新颖易用的可视化设计工具,并使用Windows应用程序接口(API)函数,采用动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)以及开放式数据库访问(ODBC)等技术,可以高效、快速地编制出 Windows 环境下功能强大、图形界面丰富的应用软件系统。
 
Visual Basic 程序很大一部分以可视(Visual)形式实现,这意味着在设计阶段就可以看到程序运行的屏幕画面,用户可以在设计时能够方便地改动画面图像、大小、颜色等,直到满意为止。VB 的用户可以是缺乏Windows 及C 语言开发经验的专业软件人员,也可以是具有一定Windows开发经验的专业人员,VB 的可视化编程方法使得原来繁琐枯燥、令人生畏的Windows 应用程序设计变得轻松自如、妙趣横生。以往的Windows 应用程序开发工具在设计图形用户界面时,都是采用编程的方法,并伴随大量的计算任务,一个大型应用程序约有90%的程序代码用来处理用户界面,而且在程序设计过程中不能看到界面显示的效果,只有在程序执行时才能观察到,如果界面效果不佳,还需要回到程序中去修改。Visual Basic 提供了新颖的可视化设计工具,巧妙地将Windows界面设计的复杂性封装起来,程序开发人员不必再为界面设计而编写大量程序代码,仅需采用现有工具按设计者要求的布局,在屏幕上画出所需界面,并为各图形对象设置属性即可,VB 自动产生界面设计代码,这样便将事先编制好的控件可视地连接到一起,构成一个随时可调整的界面。
 
VBA 不但继承了VB 的开发机制,而且VBA 还具有与VB 相似的语言结构,它们的集成开发环境IDE(Intergrated Development Environment)也几乎相同。但是,经过优化,VBA 专门用于Office 的各应用程序。VB 可运行直接来自Windows 95 或NT 桌面上的应用程序,而VBA 的项目(Project)仅由使用VBA 的Excel、Word、 PowerPoint 等称为宿主(Host)的Office 应用程序(Application)来调用。 
 

区别

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创建解决方案后,即已具备在WORD ACCESS OUTLOOK FOXPRO POWERPOINT 中用VBA创建解决方案的大部分知识。 
* VBA一个关键特征是你所学的知识在微软的一些产品中可以相互转化。 
* VBA可以称作EXCEL的“遥控器”。
 
这里的宏编程博主想提一下,虽然博主也不是Excel的大佬,但是据博主使用Excel的经历来看,有些时候一些比较高大上的excel操作还是需要编程来配合的(至少仅仅靠Excel操作是不够的,虽然excel往往比想象中强大的多),但是此时的编程语言的选择往往是python等,至于VBA编程,在Office的可行度未可知,但在WPS中……很不建议。
 
 
VBS严格来讲,并不能将其与VB、VBA放在同一个程式中进行比较,他们的关系就好比远房亲戚,一般用ActiveX Script对象来进行操作,而VB与VBA一看就是一脉相承的真亲属。
 
 
下面是博主搜到的三幅地图(来自百度),博主称其为漫画风地图,博主觉得还是蛮有创意的,一起来欣赏下吧!
 
 
         
 
 
大部分资料来自百度,博主只不过在整理过后据经验加了一点自己浅薄的见解,欢迎留言评论。

扫码关注公众号

最新文章

  1. html5快速入门(二)—— CSS简介
  2. Android 摇一摇功能的注意事项
  3. iOS:融云即时通讯快速集成
  4. Library中的title与Name
  5. CSU 1119 Collecting Coins
  6. MySQL 一般查询日志(General Query Log)
  7. POJ2187(旋转卡壳)
  8. 使用nginx作为websocket的proxy server
  9. ES6之let命令
  10. MySQL技术内幕 InnoDB存储引擎(笔记)
  11. centos7默认防火墙firewalld
  12. scrapy爬虫之模拟ajax post请求获取数据
  13. JDBC调用MySQL的调用过程CallableStatement
  14. 快速开发工具:Servoy
  15. AR涂涂乐
  16. day30 纸牌游戏
  17. 自定义SpringBoot控制台输出的图案
  18. jquery .live() .delegate() .bind() .click()区别
  19. 走进__proto__属性,看ie是否支持它,谁又来给他归宿
  20. 【最大流】BZOJ1305-[CQOI2009]dance跳舞

热门文章

  1. Java注解和注解处理器使用方法
  2. iOS加载Gif图片的N种方式 By-H罗
  3. 有手就行4——jenkins项目构建类型(自由风格,maven风格)
  4. 配置多个ssh公钥,解决Key is already in use
  5. 记录使用WKWebView进行OC与JS交互所踩过的坑
  6. Solution -「COCI 2014-2015 #2」「洛谷 P6406」Norma
  7. [源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (4)
  8. VS2019下配置OpenGL全过程
  9. Dapr 中文社区汇总
  10. IDEA使用JDBC链接MySql(java编程)