1. MATCH 匹配值所在的行号

黄金组合(MATCH + INDEX),一般情况下所有的查找都可以通过match+index实现,有些vlookup做不到的都可以通过黄金组合来实现。

MATCH(查找值, 查找区域, [匹配类型])
参数:
	查找区域必须是单行或者单列,不能是多行多列
	匹配类型:0表示匹配,1小于,-1大于。

查找值所在的行索引行,索引行从0开始而不是从1开始
MATCH(B2,B1:B4,0)

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_Go


Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_excel_02

2. INDEX 获取索引值

INDEX(数据范围,行号,列号,[第几块数据范围])
描述:
	查找某个范围某行某列所在的单元格的值。

示例:
INDEX(A1:C4,2,3)

=INDEX(A1:C4,MATCH("GO",B1:B4,0),3): 通过MATCH("Go",B1:B4,0)找到Go所在的索引行,获取到行哈再指定列获取指定行的指定列。

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_Go_03

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_多列_04

3. OFFSET 获取偏移后的值

以指定单元格为参照,行数和列偏移后返回定位后的单元格值。
使用场景:通常已经知道或者计算出某个数据了,还想获取相关联的其它的数据。常用来获取原始区域所在的一整行数据。

offset(原始区域,偏移几行,偏移几列,[扩展为几行], [扩展为几列])

偏移几行:负数向上偏移,正数向下偏移
偏移几列:负数向左偏移,正数向右偏移。
扩展为几行:根据偏移后的坐标再进行扩展,可以依次为基础获取多行
扩展为几列:根据偏移后的坐标再进行扩展,可以依次为基础获取多列

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_多列_05

4. TAKE

从数组的开头或结尾返回行和列
TAKE(D1:D5,3)

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_Go_06


Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_excel_07

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_数据_08

5. INDIRECT 引用(根据地址找值)

根据门牌号找人。

INDIRECT(单元格应用,[引用样式])
	引用样式:True表示A1(默认),False表示R1C1
示例:
	文本引用 INDIRECT("A2") 返回文本B3
	地址引用 INDIRECT(A2) 先定位到A2的位置对应的值,然后再找对应坐标的值。返回100

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_数据_09


indirect也常用来实现多级联动,首先通过公式/根据所选内容创建,将某个值和后面的整列或者后面的整行其它值做成映射,这样可以通过前面的key查找到后面的值value。

"A": {"A1"; "A2"}
"A1": {"A11"; "A12"; "A13"}
"A2": {"A21"; "A22"}

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_多列_10


数据验证可以将单元格的内容设置下拉。

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_数据_11


Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_Go_12


Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_数据_13


WPS:

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_数据_14

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_数据_15


Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_Go_16


注意:这里的A1变成了A1_, A2变成了A2_,实际使用时要查看是否发生了变化。

Excel查找函数(match行+index列 & offset&take & indirect & choosecols&chooserows)_Go_17

6. CHOOSECOLS & CHOOSEROWS

返回范围内的指定列,第二个参数可以是单值也可以是数组多个值。
CHOOSECOLS(A1:C3,{2,3})

返回范围内的指定行
CHOOSEROWS(A1:C3,2,3)