电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

VBA 类基础知识VIP免费

VBA 类基础知识_第1页
1/14
VBA 类基础知识_第2页
2/14
VBA 类基础知识_第3页
3/14
VBA类基础知识本文是依据本人自身的经验和体会,以及参考了众多网络资料写成,由于本人只是自学的VB和VBA,从未系统的学习过编程,编程水平有限,谬误之处,在所难免,还望各位不吝指正,万分感谢!第一章开头篇认识类VisualBasic是基于对象的编程(注:本文所有的代码和讨论将都以VB为基础模型,不过我会尽量使用一些大家在VBA中常见的例子来做说明的。),所以我们常见的一些东西其实都与类有关。不需惊讶,是的,类其实离我们很近,它们正和我们天天相处。可以夸张的说,如果离开了类,我们的VB(VBA)就无用武之地了。我们还是先来看一条非常简单的语句,让我们亲身体会一下类与我们的距离:1.2.'例一3.SubHello()4.Range("A1").Value="Hello,world"5.EndSub我们就暂且称之为VBA的Helloworld吧[em07],看到这个简单到不能再简单的例子,或许你笑了,这个根本就和类没有关系嘛。是的,我们在这里并没有明显的看到类,但是我们看到了Range("A1")这个对象,而在Range("A1")前面,还隐藏着一个对象:ActiveSheet,而在ActiveSheet前面又有一个ActiveWorkbook,而在ActiveWorkbook前面还有一个Application。是的,这些都是对象,我们依旧没有看到类。先别急,我们再从后面往前面看一遍:Range("Al").VaJue="Hello,World"Value是什么?Value是一个Range("A1")这个对象的一个属性。那它是从哪来的呢?它是由Range类定义的,是的,我们发现了第一个出现在我们的面前的类Range。你或许一下还接受不了,你刚刚在前不是还说Range("A1")是一个对象吗?怎么现在又说Range又是一个类呢。呵呵,不着急,我们还是看看下面的这个例子,或许你就很快就会明白了。1.2.'例二3.SubHello()4.DimRangelAsRange'引用一个Range类5.SetRange1=Range("A1")'将类实例化6.Rangel.Value="Hello,world"'这时,Rangel又是一个对象了7.SetRangel=Nothing'销毁一个类的实例8.EndSub或许你现在已经发现了,我们引用了一个Range类,并将之实例化后修改了它的属性。而在例一中,我们只不过是将这一切都以隐藏起来,直接对一个对象Range("Al")修改它的属性,但Range("A1")这个对象正是引用了Ragne这个类,才具有了Range类的属性"Value"。类本身并不直接为我们做什么,但是,它却又一直默默的隐藏在幕后规化着我们的动作。是的,这就是类,它往往都是通过对象的方式展现在我们的面前,让我们无时无刻与之交流,却又常常在不经意间忽视了它的存在。现在再回到例一去看,就会很容易的发现,ActiveSheet实际引用了Worksheet类、ActiveWorkbook引用了Workbook类,而Application则引用了和它同名的Application类(这也正是我们会经常被混淆一个概念,一个对象可以和被它所引用的类同名),原来我们在短短一个赋值的语句中,已经在与这么多的类打交道。类就像是我们呼吸的空气,我们一直深在其中,却又常常忘却了它的存在。那我们又要怎样来区分类和对象呢?其实它们经常成对的出现在我们面前,只是一个看得见摸得着的,一个却深藏不露。我们可以这样去理解类与对象:类是一个概念或是一种定义,每个类拥有其自己的特征和行为方式,而对象就是某个类的实例。就像"人","人"是一个定义,你一看到"人"就会想到它是直立行走、有头、五官等各种特征,但当"人"被具体到你、我、或是某一个人的时候,它就是一个对象了。既然类与我们和程序息息相关,那么我们更应该去好好的了解它了。让我们准备好行囊,到神秘的类的领地去好好浏览一番吧。第二篇走近类e类的基本写法及注意项如果说上一篇让我们看到类隐藏在神秘面纱后的面孔,那么现在我们将要做的就是真正的看清楚它。不过,在此之前我还是要让大家再次熟悉一下面的几个关键词:Public外部,可供类或是模块自身外调用;Private内部,只能由类或是模块内部直接调用Friend友元,只能由工程内调用(即:在当前工程内部调用时相当于Public,而对外部工程相当于Private。)。Sub、Function过程(不返回值)和函数(返回值),在类中我们可将其视为类的方法PropertyGet返回属性的值PropertyLet设置属性的值;PropertySet设置对象属性的值(即:该属性含有对象引用)。[注:Property往往是...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

VBA 类基础知识

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部