这就是Excel的相对引用原理 。
理解相对引用原理非常重要,它是理解Excel公式运算以及在名称、数据有效性和条件格式等应用的基础 。下面再举一个例子 。
如下图7所示的工作表,在单元格C5中输入公式:
=A1+200
表面上看,是求单元格A1中的值加上200后的结果,而实际上Excel认为是将基于当前单元格向上4行向左2列的单元格的值加上200 。
文章插图
图7
拖动单元格C5复制公式至单元格C6,结果如下图8所示,基于当前单元格C6,相关单元格相应地调整为单元格A2 。
文章插图
图8
将单元格C5复制到单元格E7,此时公式变为:
=C3+200
即,公式中相关的单元格调整为基于当前单元格E7向上移4行向左移2列的单元格C3,如下图9所示 。
文章插图
图9
上述操作也表明,相对引用是Excel默认使用的引用方式 。因此,要结合工作表实际要求来正确使用 。如果不正确的使用相对引用,有时会得到错误的结果 。
如下图10所示的工作表,交税金额为工资总额乘以税率 。我们先在单元格B1中输入公式:=A2*D2,然后向下拖至单元格B5,显然除B2中的值正确外,其它单元格中的值都是错误的 。
文章插图
图10
这是因为按照Excel默认的相对引用方式,会自动调整相关单元格,特别是列D中的单元格,如下图11所示 。列D中的单元格除D2外,都为空,因此除单元格B2外,其它单元格的值为0 。
文章插图
图11
然而,我们需要的是列A中的单元格随当前单元格的位置改变而自动调整,但列D中的单元格永远固定在单元格D2 。此时,就需要运用单元格的绝对引用,如下图12所示 。
在单元格B2中输入公式:
=A2*$D$2
向下拖动复制公式至单元格B5,得到正确的结果 。
文章插图
图12
在上面的公式中,$D$2是绝对引用,不会随着单元格自动调整 。
当我们需要一直使用某单元格或者单元格区域时,就应该使用绝对引用 。
当然,还可以使用混合引用,例如D$2表明行不变而列可以变化,$D2表明列不变而行可以变化 。
例如下图13所示的工作表,我们要计算3种不同税率下的交税金额 。在单元格B5中输入公式:
=$A5*A$2
向下拖动至单元格B8,向右拖动至列D 。绝对引用的行或者列不变,而使用相对应用的行或者列将自动调整获取正确的单元格数据 。
文章插图
图13
相对引用应用示例
示例1:在条件格式中的相对引用
如下图14所示的工作表,要求对分数小于60的单元格背景色设置为红色 。使用公式:
=$B2<60
列固定而行随着单元格调整 。
文章插图
图14
注:条件格式中使用的公式中的单元格引用,是基于公式中所选单元格区域左上角的引对引用 。
示例2:在数据有效性中的相对引用
与条件格式一样,在设置数据有效性的公式中包含的单元格引用,也是其于所选区域左上角单元格的相对引用 。
如下图15所示的工作表,我们在列A中设置了数据有效性,使得用户在列A中不能输入重复数据 。
推荐阅读
- INDEX函数,不仅获取数据,还能得到单元格区域
- OFFSET函数
- CELL函数
- AREAS函数
- excel函数求单元格区域中指定词语出现的次数
- excel函数求相邻单元格两两相乘之积的和
- excel函数获取单元格区域中移除空单元格后的值
- excel你一定要知道的神奇有趣的相对引用
- excel表格不一样的R1C1引用样式
- excel表格循环引用原理及应用