Excel - OFFSET 函数
OFFSET 函数
Excel OFFSET 函数是查找和引用函数的一部分。它根据起始单元格引用以及其参数中指定的行数和列数动态提取行子集。
例如,OFFSET 函数有助于仅提取上一季度的销售产量,其中包含一百万个数据集。借助 OFFSET 函数,您可以通过调整偏移量和单元格引用来快速提取有价值的记录,而无需修改原始数据集。
兼容性
此高级 Excel 函数与以下版本的 MS Excel 兼容 −
- Excel for Microsoft 365
- Excel for Microsoft 365 for Mac
- Excel for the web
- Excel 2024
- Excel 2024 for Mac
- Excel 2021
- Excel 2021 for Mac
- Excel 2019
- Excel 2016
- Excel 2013
- Excel 2010
- Excel 2007
语法
OFFSET 函数的语法如下 −
=OFFSET(reference, rows, cols, [height], [width])
参数
您可以将以下参数与 OFFSET 函数一起使用 −
参数 | 说明 | 必需/可选 |
---|---|---|
reference | 指定单元格引用或范围作为使用 OFFSET 函数的起点。 | 必需 |
rows | 表示工作表中向上或向下的行数。其值可以为负数(在 Reference 参数上方)或正数(在 Reference 参数下方)。 例如,将 Rows 参数设置为 3,表示引用中的左上角单元格位于其下方三行。 |
必需 |
Cols | 它指定从左到右的列数。 例如,将 Cols 参数设置为 2,表示引用中的左上角单元格位于引用右侧的五列。 此参数可以为正数(在指定的单元格引用的右侧)或负数(在单元格引用的左侧)。 |
必需 |
Height | 高度以返回的行数表示引用。 Height 参数必须包含非负数。 |
可选 |
Width | 返回引用的宽度(以列表示)。 Width 参数必须包含非负数。 |
可选 |
要记住的要点
- 如果任何参数包含非数字值,则 OFFSET 函数将检索 #VALUE! 错误。
- 您可以将 OFFSET 函数与其他函数(如 SUM、AVERAGE 等)合并。
- 如果 OFFSET 函数未指定高度或宽度参数。那么,将考虑相同的高度或宽度。
- OFFSET 函数将仅检索引用;此函数不会更改或移动工作表中的单元格。
- OFFSET 函数返回 #REF!如果行和列偏移引用越过工作表的边缘,则会出现错误。
Excel 中 OFFSET 函数的示例
练习以下示例以了解 Excel 中 OFFSET 函数的用法。
示例 1:OFFSET 函数在 Excel 中起什么作用?
在此示例中,通过设置 OFFSET 函数的参数中提供的偏移量和单元格引用,在单元格范围内提取行的子集。
解决方案
步骤 1 −首先,假设样本数据集中的数值在单元格区域 B2:C6 中指定。

步骤 2 −之后,在 F3 单元格中输入公式 =OFFSET(H1,3,-7,3,2)。

说明
=OFFSET(H1,3,-7,3,2)
- Reference 参数指定偏移量的单元格引用。
- Rows 参数为 3,表示结果范围将从第三行开始获取。
- Cols 参数为 -7,从 H1 单元格引用的右侧开始向左侧移动并移至 A 列。
- height 参数为 3,表示要获取三行的值。
- width 参数为 2,表示将从 A 列和 B 列中提取结果值。

示例 2:在 Excel 中结合使用 SUM 函数和 OFFSET 函数
在此示例中,我们将通过将 SUM 与 OFFSET 函数相结合来计算值的总和。
解决方案
首先,您可以输入公式在 E5 单元格中输入 =SUM(OFFSET(A1,2,2,7,2)) 并按下 Enter 键。在此表达式中,起点是 A1。行数为 2,这意味着在第二行之后要提取值。列数为 2,这意味着在第二列之后,要选择 C 列值。高度和宽度参数设置为 7 和 2,这意味着要从 Array2 中添加七行数据。

之后,按 Enter 键获取 array2 中值的总和。

下载练习表
您可以下载并使用示例数据表来练习 OFFSET 函数。