对于没有编程经验的excel用户来说, 刚接触VBA中的对象、方法和属性会让他炫晕一阵子。今天我也来说一下,什么是VBA的对象、方法和属性。
在了解这两个概念之前,我们要先明确一下我们想在excel中实现什么功能?也许你会说:
“我要让Excel单元格的背景颜色自动改变”
“我想让Excel单元格的值自动累加”
“我想让excel文件自动备份”
“我按让excel工作表按名称自动移动(排序)”
“我想把具体相同内容的excel单元格自动合并”
一、了解对象
在上面我们要完成的任务中,我们需要对Excel单元格、excel文件(工作簿)和excel工作表进行操作,这些我们要操作的excel程序中具体相同特征的一类,就是VBA中的excel对象。VBA中不仅有excel对象,还有窗体、控件等对象。
二、属性是什么?
单元格有背景颜色和值、工作表有名称,对象这些本身所具有的特征就是对象的属性。就象人一样,有身高、身重、性别等特征。在VBA中设置对象的属性是这样的:对象.属性=值
注:对象和属性之间用“.”隔开,表示隶属关系。用=号进行赋值。
例:
代码:
Range("A1").Value=100
设置单元格A1的值为100,这里range("A1")就是单元格对象,Value就是单元格对象的"值"属性
三、什么是方法?
我们在本文开始列举的一些excel要完成的功能中,让excel文件自动备份、excel单元格自动合并,备份和合并都是一个“动作”,他作用于excel文件、excel单元格对象上,可以让对象实现我们想要的结果。这些作用于对象上的“动作”就是VBA中的方法。对象和方法的关系在VBA是这样表示的。
对象.方法 参数1:=值,参数2:=值
注: 1、对象和方法之间也是用“.”隔开,表示隶属关系。
2、大部分方法操作都需要补充说明,说明和方法之间是用空格隔开,参数之间用“,”(英文逗号)隔开如:把当前excel文件备分一份和C盘
代码:
ActiveWorkbook.SaveCopyAs Filename:="c:/b.xls"
上面这句代码中,SaveCopyAs就是ActiveWorkbook的一个方法 ,而Filename是文件备份后的路径和文件名,是对SaveCopyAs方法的补充说明。注意,设置参数值时用的符号是“:=”而不只是“=”或“:”号。有的方法需要参数的补充说的,有的却不需要,如:
Range("a1:a2").Merge ‘合并单元格区域:A1:A2