如下图1所示,有一列数据,其奇数行是员工姓名,偶数行是对应的经理姓名。
图1
现在要求根据员工姓名找到其对应的经理,如下图2所示。
图2
从数据列中可以看出,员工姓名都在列表中的奇数行,因此,可以先取出奇数行中的数据:
OFFSET(B3,ROW(A1:A99)*2-2,,1,1)
使用T函数返回文本值:
T(OFFSET(B3,ROW(A1:A99)*2-2,,1,1))
然后使用MATCH函数找到要查找的员工姓名对应的位置,即在单元格E4中输入公式:
=MATCH(E3,T(OFFSET(B3,ROW(A1:A99)*2-2,,1,1)),0)
这是一个数组公式,输入完后要按下Ctrl Shift Enter组合键。
最后,在单元格E5中输入公式:
=INDEX(B3:B202,E4*2)
获取指定员工对应的经理姓名。
在上面的公式中,我们使用了固定的区域:
ROW(A1:A99)
来生成偶数数字。对于不同大小的数据列表,可以使用下面的通用公式:
ROW(A1:OFFSET(A1,COUNTA(list)/2,,))
其中,list是数据列表的名称。
也可以使用下面的公式获取指定员工位置:
=ODD(MATCH(E3,IF(ISODD(ROW(B3:B202)),B3:B202),0)/2)
或者:
=ODD(MATCH(E3,IF(ISODD(ROW(list)),list),0)/2)
其中,list是数据列表的名称。这是一个数组公式,输入完后要按下Ctrl Shift Enter组合键。