Range对象大概是VBA代码中使用最多的对象。 它可以是一个单元格、一个单元格区域、N个单元格区域的联合; 某种程度上,N*N个单元格就组成了工作表。 通过Range对象Parent属性,我们已经知道它包含在工作表对象里。 1、表示1个单元格(D1):下面四句代码都可以让D1单元格的值变为666,字母不区分大小写。 Range(''d1'') = 666 ''一般写法 [D1] = 666 ''简写法 Cells(1, 4) = 666 Cells(1, ''D'') = 666 其中Cells(1, 4)可以这样理解: Cells(行,列),行列相交的单元格地址,类似于数学的横坐标和纵坐标交汇处。 即:第1行和第4列相交的单元格; 又如,D4单元格,Cells(4,4); 第4行第4列相交的单元格,如下图; 在Excel中,我们可以用数字表示列,也可以用字母表示列。 因此Cells(行,列)中的列参数,既可以是数字,也可以是字母(带双引号)。 所以Cells(1, ''D'')也表示单元格D1,等价于Cells(1, 4)。 2、表示单元格区域,下面四句代码都可以选取单元格A1:D10。 Range(''A1:D10'').Select ''一般写法 [A1:D10].Select ''简写 Range(''A1'', ''D10'').Select Range(Cells(1, 1), Cells(10, 4)).Select 其中,Range(''A1'', ''D10'')是选择A1:D10单元格的左上角单元格地址和左下角单元格地址, 也就是该区域的第1个单元格和最后1个单元格来设定区域范围,如下图: 再看Range(Cells(1, 1), Cells(10, 4)),不过是将''A1''换成Cells(1, 1),''D10''换成 Cells(10, 4), 这种写法在某些情况下是比较实用的,因为Cells括号内的行、列参数都可以使用变量,很灵活。 3、多个单元格区域的选择 在键盘上按着Ctrl键不放开,依次选取不同的单元格区域,如图: Range(''A1:D10,f2,h2:i7'').Select [A1:D10,f2,h2:i7].Select ''简写 上面代码执行结果如下图: 注意:Range(''A1:D10,f2,h2:i7'')的写法和Range(''A1'', ''D10'')的不同(双引号)。 |
|