命名范围内的相对引用(Microsoft Excel)
克里斯建立了一个工作表,他在公式中使用命名范围(行)。他已将整个销售行命名为“销售”,然后在各种公式中使用“销售”名称。例如,在任何给定的列中他可以说= Sales,并且该列的Sales行的值由公式返回。克里斯想知道如何使用相同的公式技术来引用不同列中的单元格。
有两种不同的方法可以完成此操作。首先,您可以使用INDEX函数来引用单元格。在同一列中引用Sales值的严格方法如下:
=INDEX(Sales,1,COLUMN())
如果Sales命名范围确实确实引用了工作表中的整个行,则此方法有效。如果不是(例如,Sales可能引用单元格C10:K10),则以下公式将引用公式所在的同一列中Sales的值:
=INDEX(Sales,1,COLUMN()-COLUMN(Sales)+1)
如果要引用其他列,则只需调整在INDEX函数中添加到列名称的值。例如,如果要确定当前列的销售额与前一列的销售额之间的差异,则可以使用以下内容:
=INDEX(Sales,1,COLUMN()-COLUMN(Sales)+1) - INDEX(Sales,1,COLUMN()-COLUMN(Sales))
该公式的“简写”形式如下:
=Sales - INDEX(Sales,1,COLUMN()-COLUMN(Sales))
除INDEX外,还可以使用其他功能(例如OFFSET),但是该技术仍然相同-您必须找到一种方法来引用当前列中的偏移量。
但是,有一种更简单的方法来获取所需的数据。假设您的Sales范围也有一个标题行,类似于以下所示:(请参见图1。)
图1.销售数据示例。
标题行列出了该范围的年份,标题下的值是实际组成“销售”范围的值。为确保此技术有效,请按照下列步骤操作:
。从工具菜单中选择选项。 Excel将显示“选项”对话框。
。确保显示了计算选项卡。 (请参见图2。)
。确保选中“接受公式中的标签”复选框。
。单击确定。
完成此配置更改后,您可以将以下内容用作公式:
=Sales '2009' – Sales '2004'
您实际上正在执行的操作是指示Excel使用单元的并集。在这种情况下,Sales’2009’返回Sales范围和’2009’列相交处的单元格。对于负号右侧的公式部分,将返回类似的并集。结果是您想要的两个值相减。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(3202)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: