首页 > 其他分享 >Excel VBA你是如何理解Range对象,熟悉她就在一瞬间

Excel VBA你是如何理解Range对象,熟悉她就在一瞬间

时间:2022-10-31 11:34:29浏览次数:37  
标签:VBA 单元格 Excel Range A1 range 100


在学习Excel VBA的过程中,我们大多数人接触的和使用最多的就是单元格或者单元格区域,因为我们对Excel表格的数据进行分析,离不开对单元格的存储的数据进行分析处理的过程,所以就很有必要理解这个单元格的基础概念,为以后的学习打下坚实的基础。




我们首先来一起看看微软MDNS上对range的属性的解释:

Excel VBA你是如何理解Range对象,熟悉她就在一瞬间_数据


以上备注可以看出来,range的属性有4个,我们可以利用这些属性来操作或者控制单元格通过VBA来处理工作表。

1、Range对象的属性可以返回一个range对象。我们看看如下的例子:

下例将单元格 A2 的值赋给单元格 A5,代码是这么样写的。

Excel VBA你是如何理解Range对象,熟悉她就在一瞬间_数据_02


总的来说range的属性通常在worksheet和range对象上面使用。如下一个例子:

Worksheets("sheet1").Range("a1").Value = 55

这句话的意思可以理解为,给我们工作表的名称为sheet1的工作表的A1单元格赋值为55。这个我们也是给某一个单元格赋值,经常可以用的知识点;

Excel VBA你是如何理解Range对象,熟悉她就在一瞬间_数据_03


加入我们在某个时候,突然奇思妙想的对我们单元格A1进行赋值,那么我们的代码可以改成:

st = "a1"

Worksheets("sheet1").Range(st).Value = 55

不知道你有没理解这个的使用方法:

Excel VBA你是如何理解Range对象,熟悉她就在一瞬间_赋值_04


2、你可不要误解我们range对象只能操作一个单元格哦,其实他可以操作的单元格区域是很大的。

假如我们要在单元格A1:B10区域输入100,那么我们的代码是应该如何去写呢?

以下三种代码写法是都可以在A1:B10单元格区域统一输入100的,小伙伴们可以试试看。

Range("a1:b10") = 100 ‘’这种方法使我们最常用的写法

Range("a1", "b10") = 100 ‘’这种方式,在我们需要用变量的时候,用的更多

Range(Cells(1, 1), Cells(10, 2)) = 100,这个是返回的是一个单元格对象。

Excel VBA你是如何理解Range对象,熟悉她就在一瞬间_excel表格_05


3、Range对象其实还可以使用多个不相连单元格区域的交集值输入工作。

有兴趣的小伙伴可以试试执行一下这个代码的结果:

Range(”C1:C10,A6:E6”)=100

可以看看这个代码执行的结果如下图所示,他们的意思是在他们交集部分输入这个值,就类似我们数学的交集和并集。

Excel VBA你是如何理解Range对象,熟悉她就在一瞬间_excel表格_06


4、假如我们需要在B1,B2,B6,B7,B9单元格输入相同的数据,代码应该如何去写最简单呢?

代码可以写成,Range("B1,B2,B6,B7,B9") = 100。

Excel VBA你是如何理解Range对象,熟悉她就在一瞬间_赋值_07


5、range除了向单元格中输入值以外,他还可以写入函数公式哦!

例子:如下图所示,A1=100,B1=100,我们如何在Excel中输入A1+A2呢?

代码如下,Range("c1").Formula = "=a1+b1"

Excel VBA你是如何理解Range对象,熟悉她就在一瞬间_数据_08


6、用range对象还可以表示某一列或者某一行,那么代码应该如何去写呢?

Range("a:a").Select  '表示选择A列

Range("1:1").Select '表示选择第一行

当然range里面的字母或者数字是可以改变的哦,你可以试试呢

Excel VBA你是如何理解Range对象,熟悉她就在一瞬间_赋值_09


以上只是我们说的一小部分,和range搭配使用的方法还有很多,在这里就不一一解释了,相信在今后的学习中,你会遇到并且也会用上的。综上所述,range可以表示单个单元格,多个单元格,他还可以表示某一列或者某一行,某一个区域。所以在某个程度上说,这个对象其实还是非常强大的对象。请务必理解清楚。我是Excel教案,关注我持续分享更多的Excel技巧



标签:VBA,单元格,Excel,Range,A1,range,100
From: https://blog.51cto.com/u_15705258/5808910

相关文章