Excel 中单元格和范围的引用(即访问的表示方法)
计算机中,无非是数据和数据的处理这两件事。Excel的工作表能存储大量数据,除了这些原始数据,我们还要用函数来处理这些数据,比如求和求积,求平均值,排序等等,并把处理结果也存在单元格里。在Excel中,我们通常不给这些数据起个专门的名字,比如StudentName1,StudentName2,Score1,Score2(我在另外一篇文章讲如何给单元格或范围内的数据命名),Excel本身已经隐含了指代这些变量的方式,不会让它们成为"失落的存储空间"。一般我们在编程时,向函数传递的是我们程序员自己起的变量名,但在Excel中,面对那么大量的数据,密密麻麻的单元格,我们可能没想过也没必要为每个单元格起个变量名。用过Excel 的人,很自然的就会用A5,B1:C3 这样的方式来表示要访问单元格或范围。这种指代表格中的数据的方法就是引用。简而言之,在Excel中,单元格或范围内的数据用什么样的方式来表示就是引用。
对于同一个单元格或范围,Excel 提供了几种不同的引用模式。
A1 引用模式(reference style)
Excel 默认使用 A1 引用方式。这种方式用字母表示列 (A 到 IV,一共 256 栏),用数字表示行 (1 到 65536)。这些字母和数字也称作列头和行头。提及某个单元格时,先写所处列的字母,后面跟着所处行的数字。比如,B2 就是B栏和第二行相交处的单元格。举几个例子:
要表示的单元格和范围 |
表达方式 |
位于A栏和第十行的单元格 |
A10 |
A栏从第十到第二十行的一系列单元格 |
A10:A20 |
15 行从B栏到E栏的一系列单元格 |
B15:E15 |
第5行的所有单元格 |
5:5 |
5 到10 行的所有单元格 |
5:10 |
H栏的所有单元格 |
H:H |
H 栏到 J栏的所有单元格 |
H:J |
A 栏到 E 栏并且10到20行内所有单元格 |
A10:E20 |
指向另一张工作表 在下面的例子中,AVERAGE函数计算同一个工作簿中"Marketing"表单的 B1:B10 的平均值。
注意表单的名字和范围引用前的感叹符 (!)。
3-D 引用方式
如果要分析同一个工作簿里,在不同表单上的相同位置的单元格或范围的数据,可以使用 3-D 引用方式。3-D 引用方式先写上一系列表单的名字,后面是单元格或范围的引用。Excel 使用开始和结束名字之间存在的任何表单。比如, =SUM(Sheet2:Sheet13!B5) 把包括表单2 和表单13 之间所有表单上的 B5 单元格的数据相加。
- You can use 3-D references to refer to cells on other sheets, to define names, and to create formulas by using the following functions: SUM, AVERAGE, AVERAGEA, COUNT, COUNTA, MAX, MAXA, MIN, MINA, PRODUCT, STDEV, STDEVA, STDEVP, STDEVPA, VAR, VARA, VARP, and VARPA.
- 3-D 引用方式不能用在数组公式里。
- 3-D references cannot be used with the intersection operator (a single space) or in formulas that use implicit intersection.
当你移动、复制、插入或删除表单时,3-D 引用方式如何改变
以下的例子解释了当你移动、复制、插入或删除包含在3-D 引用里的表单时,事情会如何变化。例子使用公式 =SUM(Sheet2:Sheet6!A2:A5),把第二到第六张表单上 A2 到A5 之间所有单元格加总。
插入或复制 如果你在表单2 和表单6 之间复制或插入表单(本例的两个端点),Microsoft Excel 在计算时包括新增表单上A2 到 A5 单元格的数据。
删除 如果你删除了表单2 和表单6 之间的表单,Excel 从计算中删除它们的数据。
移动 如果你把表单从表单2 和表单6 之间移到这个范围之外,Excel 从计算中删除它们的数据。
移动端点 如果你把表单2 或表单6 移到同一工作簿中的另外位置,Excel 调整计算范围,容纳它们之间新的一个范围。
删除端点 如果你删除了表单2 或表单6,Excel 调整计算范围,容纳它们之间新的一个范围。
R1C1 引用方式
我们还可以使用一种引用方式,表单上的行和列都是数字编号的。R1C1 引用方式在宏中计算行和列的位置很有用。使用R1C1 方式时,Excel 用"R"跟着一个行的数字,"C"跟着列的数字来表示一个单元格。
表达方式 |
意义 |
R[-2]C |
这是个相对引用 ,指同一列向上两行的单元格 |
R[2]C[2] |
相对引用,向下两行,向右两列的单元格 |
R2C2 |
绝对引用 ,位于第二行和第二列交叉处的单元格 |
R[-1] |
相对引用,当前单元格上面的整个一行 |
R |
绝对引用,指当前行 |
记录宏的时候,Excel 用R1C1引用方式记录一些命令。比如,你在记录命令时,点击 AutoSum 按钮插入一个公式,加总一系列单元格,Excel 用R1C1而不是A1 引用方式记录公式。
启用或关闭 R1C1 引用方式
- 点击Tools 菜单的 Options 选项,然后选择 General 标签。
- 在 Settings 下,选择或清除R1C1 reference style 复选框。