admin 管理员组

文章数量: 1087136


2024年5月19日发(作者:oracle11g默认安装路径)

Excel中的VBA程序设计论文

Excel中的VBA程序设计论文

摘要:在日常办公中,就数据处理这一块,相信大部分人首选

的软件都是微软的Excel。不可否认Excel的数据处理能力确实强

大,不愧为微软的经典之作,但是,随着各行各业的数字化,对数

据的处理能力要求也越来越高,明显Excel力不从心,不过VBA的

出现使得Excel重新强大起来。

关键词:Excel;VBA;数据处理;程序设计

引言

在这个快节奏的社会,我们对数据的处理也更要求高效快捷,

VBA为我们提供这个途径。VBA是微软提供的一种统一的应用程序自

动化语言(VisualBasicForApplication),它并不是只存在于

Excel中,事实上在微软的Office软件中都带有VBA。由于VBA在

数据处理上的强大优势,使的Excel成为它的第一个附体。另外,

微软也提供了VBA的开发环境IDE,这样VBA可以不依附在其它软

件中,可以独立的开发。而VBA强大的另一个方面在于它可以将已

有的数据和开发的客户端程序一起包装,整合使用。

的工作原理和开发环境

VBA技术说到底是一种高级的编程技术,通过编写代码完成某个

应用程序的特定的功能。对于VBA而言,他的对象就是微软公司

Office中的各个应用程序。每一个应用程序都有自己特定的

Application对象。具体到OfficeExcel,数据表对象和图形图像对

象是它的主要对象。

1.1工作原理

首先,作为一个编程工具VBA需要一个工作平台,Excel恰好提

供了这平台,VBA利用这个平台可以将自己的各种功能发挥的淋漓

尽致,使Excel数据处理能力更强大,也更加灵活。从使用的简易

性看,VBA依然是VB的面向对象的程序设计,对开发者的编程技术

要求并不高,VBA也是比较新的宏语言,使得它的使用更加简单。

对于VBA与Excel以及VBA与VB的关系和工作原理可以通过下边的

图来解释。

原理图1

VBA为一个编程工具,可以产生VBA代码,这是增强应用程序的

实际代码。同时,VBA服务实际对象是Excel的应用程序。如果没

有VBA这个工具,就不能产生服务代码,如果没有代码也谈不上增

强Excel功能。没有VBA,Excel也不能找到自己需要的代码,因此

我们说是VBA给了代码和Excel合作的机会,VBA就是联系两者的

桥梁。其工作过程可以简单理解为:客户把Excel需要加强的功能

给开发人员,设计者对此设计出Excel的应用程序,这个应用程序

就是VBA的对象,进而设计者利用VBA,编写需要的代码,经过编

译产生Excel所需要的VBA代码,最后,VBA将已有的应用程序的

代码和VBA代码进行封装,生成满足客户需要的“加强版”Excel。

1.2开发环境

前面已经提到VBA实际上可以认为是VB的子集合,这样它的运

行环境也就很好理解,就是VB的运行的IDE环境,都是基于Basic。

它们包含的对象以及对象的属性和方法都是相同的。两者的不同在

于它们的运行平台不同,相对来说VB的运行平台更广,VBA则只是

运行在Excel中,但也因此VBA可以利用Excel的数据处理功能,

包括报表、数据统计、图形分析等。对于开发人员来说很有必要认

识清楚VB和VBA的区别,在此列出以下几条:1.利用VB开发的

Windows应用程序,它的代码部分最后必须是生成机器码,而VBA

开发的代码并不直接生成机器码,而是在产生VB的代码后就停止,

其他工作就不在属于VBA,这是VBA的宏语言所决定;2.在独立性

方面VBA明显不如VB,实际上VB有自己的开发环境,而VBA必须

依附于某个应用程序,Excel就是VBA很好的'“宿主”;虽

然有运行平台的限制,但这也是它的优势,可以利用平台已有的功

能加强自己而且可以简化开发周期,这是VB所不具有的。尽管有这

样或那样的不同,但是由于VB和VBA在构架上是相同的所以对开发

者来说还是很简单的,而且在程序的移植方面也是比较简单的。

的具体开发流程

对于任何一种编程工具,在使用之前我必须了解它的运行环境和

它的基本语法,这是开发的两个基础。同样,VBA也不例外,首先,

VBA运行在IDE下,那么我们就必须了解在这个环境下如何创建工

程,如何创建对象(面向对象的程序设计必须有这一步),以及是

否需要设计窗体;其次,对VBA基本的语法要熟悉,对于有使用VB

经验的开发者是很简单的。VBA比较特殊的地方就是宏,其实宏就

是按照一定顺序执行的指令,或者说是指令集,当我们重复性操作

的时候,就可以利用宏,不需要每次操作都执行各种指令,一个宏

就解决问题。为了方便理解和加深记忆,下面我举出一个自己制作

COM组件供Excel调用的实例。本实例比较简单没有涉及窗体设计

和图形设计。

//对象声明

PrivatexlsAppAsNewExcel.Application

//打开工作簿函数

PublicSubOpening()

xlsApp.Workbooks.Add

xlsApp.Visible—True

EndSub

//写入工作簿函数

PublicSubWriting(ByValcolumnAsByte,ByValrowAsByte,

ByValdata)

xlsApp.Cells(c,r).FormulaRlCl=data

3.结束语

VBA的进入使诸如Excel等Office软件的功能更加强大,同时

VBA语法简单,可移植性强,对开发人员的要求也不高,所以,对

VBA的进一步研究和开发利用势在必行,尤其它和Access以及SQL

的结合更是研发的重点。

参考文献:

赵全斌.Excel工程应用【M】.北京:清华大学出版社,

2009.


本文标签: 代码 需要 对象 工作 开发