OFFSET可以单独使用,也可以和其它函数嵌套,主要是看业务场景。但前提是,我们要熟悉OFFSET本身的功能和作用。OFFSET能够返回指定行和列的数据,比如返回两行三列的数据,或者一行的三列的数据等,运用这些可以同时返回一个人的各科成绩

OFFSET参数说明

OFFSET(reference, rows, cols, [height], [width])

reference:是必须有的参数。要基于偏移量的引用,说人话就是基准,参考量,或者以它做零点

rows:必须有的参数,就是参照基准向上向下偏移的行数

cols:必须有的参数,就是参照基准向左向右偏移的列数

[height]:非必须,以经过偏移后的基准点,要返回的行也就是高(不写默认和基准点等同,其实一般也就是1)

[width]:非必须,以经过偏移后的基准点,要返回的列也就是宽(不写默认和基准点等同,其实一般也就是1)

下面看一个实际操作

Excel偏移函数OFFSET用法详解-趣帮office教程网

=OFFSET(A1,1,1)

=OFFSET(A1,1,1,1,1)

1.我们观察到上面两个公式的返回值是一样的,也就是返回值为1行1列的时候第四,第五个是可以省略的

2.但是当返回值是多行多列时,返回值就是数组,简单说就是返回值不止一个数,此时一个单元格承载多个数据就会报错

3.这个时候我们根据返回的数量选中对应行和列(比如选中2行1列)的单元格,在公式输入栏输入公式如:=OFFSET(A1,1,1,2,1),再然后ctrl shift enter,单元格就会显示内容了

=OFFSET(A1,1,1,2,1)

相对于A1单元格行(正数向右移动,负数向左移动,这里1就是向右移动1)移动1,列(正数向下移动,负数向上移动,这里1就是向右移动1)移动1,向右移动1,向下移动1就是B2,然后以B2为起点,扩展成两行一列也就是包含B2和B3的区域

Excel偏移函数OFFSET用法详解-趣帮office教程网

A1 B1 C1 D1 返回1个值 函数
A2 B2 C2 D2 B2 =OFFSET(A1,1,1)
A3 B3 C3 D3 B2 =OFFSET(A1,1,1,1,1)
A4 B4 C4 D4 返回2行1列2个值 函数
A5 B5 C5 D5 B2 {=OFFSET(A1,1,1,2,1)}
A6 B6 C6 D6 B3 {=OFFSET(A1,1,1,2,1)}
A7 B7 C7 D7
A8 B8 C8 D8 返回2行2列4个值
A9 B9 C9 D9 B2 C2
A10 B10 C10 D10 B3 C3

OFFSET案例

上面学习了OFFSET的基本使用,下面看一个案例,给出一个同学的名字就返回他的各科成绩,下面是某班级的成绩表,我们希望右侧输入姓名,就返回对应的成绩

姓名 语文 数学 英语
赵世俊 69 60 70
骆江浩 96 96 86
姚丹亚 83 96 94
江珊 66 84 56
张曼丽 100 92 54
杨宁丽 100 90 61
刘俊丽 70 99 86

Excel偏移函数OFFSET用法详解-趣帮office教程网

Excel偏移函数OFFSET用法详解-趣帮office教程网

本案例用到了MATCH函数

MATCH(F14,A14:A20,0)

MATCH(查找的值,查找值所在的数组,是否精确查找0为精确查找)返回值是所在的位置

比如我们查找赵世俊在A14:A20的位置返回值是1,就是赵世俊在数组A14:A20的第一个位置

也就是第一行

=OFFSET(A13,MATCH(F14,A14:A20,0),1,1,3)

把MATCH(F14,A14:A20,0)替换成1,因为赵世俊通过MATCH函数返回值是1

函数=OFFSET(A13,MATCH(F14,A14:A20,0),1,1,3)

我们就简化:=OFFSET(A13,1,1,1,3)

OFFSET(A13,1,1,1,3)我们相对A13也就是姓名,移动一行一列,就定位到69,返回的值是1行三列,将69拓展成1行3列就是69,60,70三个数组构成的区域