range

range

计算机术语
range是一种计算机术语,在Excel中,Range集合代表某一单元格、某一行、某一列、某一选定区域(该区域可包含一个或若干连续单元格区域),或者某一三维区域。可用Range(arg)(其中arg为区域名称)来返回代表单个单元格或单元格区域的Range对象。[1]另外有同名汽车。
  • 中文名:
  • 外文名:range
  • 适用领域:
  • 所属学科:
  • 代表:某一单元格、某一行
  • 方法:Union 方法
  • 属性:Cells 属性

属性

可用Range(arg)(其中arg为区域名称)来返回代表单个单元格或单元格区域的Range对象。下例将单元格A1中的值赋给单元格A5。

Worksheets("Sheet1").Range("A5").Value=Worksheets("Sheet1").Range("A1").Value

下例设置单元格区域A1:H8中每个单元格的公式,用随机数填充该区域。在没有对象识别符(句号左边的对象)的情况下,使用Range属性将返回活动表上的一个区域。如果活动表不是工作表,则该方法无效。在没有明确的对象识别符的情况下,使用Range属性之前,可用Activate方法来激活工作表。

Worksheets("Sheet1").Activate

Range("A1:H8").Formula="=Rand()"'Rangeisontheactivesheet

下例清除区域Criteria中的内容。

Worksheets⑴.Range("Criteria").ClearContents

如果用文本参数指定区域地址,必须以A1样式记号指定该地址(不能用R1C1样式记号)。

Cells属性

可用Cells(row,column)(其中row为行号,column为列标)返回单个单元格。下例将单元格A1赋值为24。

Worksheets⑴.Cells(1,1).Value=24

下例设置单元格A2的公式。

ActiveSheet.Cells(2,1).Formula="=Sum(B1:B5)"

虽然也可用Range("A1")返回单元格A1,但有时用Cells属性更为方便,因为对行或列使用变量。下例在Sheet1上创建行号和列标。注意,当工作表激活以后,使用Cells属性时不必明确声明工作表(它将返回活动工作表上的单元格)。

SubSetUpTable()

Worksheets("Sheet1").Activate

ForTheYear=1To5

Cells(1,TheYear+1).Value=1990+TheYear

NextTheYear

ForTheQuarter=1To4

Cells(TheQuarter+1,1).Value="Q"&TheQuarter

NextTheQuarter

EndSub

虽然可用VisualBasic字符串函数转换A1样式引用,但使用Cells(1,1)记号更为简便(而且也是更好的编程习惯)。

可用expression.Cells(row,column)返回区域中的一部分,其中expression是返回Range对象的表达式,row和column为相对于该区域左上角的偏移量。下例设置单元格C5中的公式。

Worksheets⑴.Range("C5:C10").Cells(1,1).Formula="=Rand()"

和Cells

可用Range(cell1,cell2)返回一个Range对象,其中cell1和cell2为指定起始和终止位置的Range对象。下例设置单元格区域A1:J10的边框线条的样式。

WithWorksheets⑴

.Range(.Cells(1,1),.Cells(10,10)).Borders.LineStyle=xlThick

EndWith

注意每个Cells属性之前的句点。如果前导的With语句应用于该Cells属性,那么这些句点就是必需的。本示例中,句点指示单元格处于第一张工作表上。如果没有句点,Cells属性将返回活动工作表上的单元格。

Offset属性

可用Offset(row,column)(其中row和column为行偏移量和列偏移量)返回相对于另一区域在指定偏移量处的区域。下例选定位于当前选定区域左上角单元格的向下三行且向右一列处的单元格。由于必须选定位于活动工作表上的单元格,因此必须先激活工作表。

Worksheets("Sheet1").Activate

'Can'tselectunlessthesheetisactive

Selection.Offset(3,1).Range("A1").Select

Union方法

可用Union(range1,range2,...)返回多块区域,即该区域由两个或多个连续的单元格区域所组成。下例创建由单元格区域A1:B2和C3:D4组合定义的对象,然后选定该定义区域。

Dimr1AsRange,r2AsRange,myMultiAreaRangeAsRange

Worksheets("sheet1").Activate

Setr1=Range("A1:B2")

Setr2=Range("C3:D4")

SetmyMultiAreaRange=Union(r1,r2)

myMultiAreaRange.Select

使用包含若干块的选定区域时,Areas属性很有用。它将一个多块选定区域分割为单个的Range对象,然后将这些对象作为一个集合返回。使用返回的集合的Count属性可检测一个选定区域是否包含多块区域,如下例所示。

SubNoMultiAreaSelection()

NumberOfSelectedAreas=Selection.Areas.Count

IfNumberOfSelectedAreas>1Then

MsgBox"Youcannotcarryoutthiscommand"&_

"onmulti-areaselections"

EndIf

EndSub

举例

例子1

print_r($number);

>

输出:

Array([0]=>0[1]=>1[2]=>2[3]=>3[4]=>4[5]==5)

例子2

print_r($number);

>

输出:

Array([0]=>0[1]=>10[2]=>20[3]=>30[4]=>40[5]=>50)

例子3

print_r($letter);

>

输出:

Array([0]=>a[1]=>b[2]=>c[3]=>d)

相关词条

相关搜索

其它词条