MATCH函数返回特定值在数组中的相对位置。INDEX函数返回单元格区域中指定行列交叉处单元格的值或引用。MATCH和INDEX函数常常组合在一起进行查询。本文分享INDEX和MATCH函数组合进行查询的六个典型用法。如下图所示,要求根据E2单元格的ID查询消费金额。=INDEX($C$2:$C$8,MATCH(E2,$A$2:$A$8,0))=INDEX($A$2:$A$8,MATCH(E2,$B$2:$B$8,0))如下图所示,根据F2、G2单元格的姓和名查询对应的ID。=INDEX($A$2:$A$8,MATCH(F2&G2,$B$2:$B$8&$C$2:$C$8,0))如下图所示,根据F2、G2单元格的姓名、月份查询对应的销售额。=INDEX($B$2:$D$8,MATCH(F2,$A$2:$A$8,0),MATCH(G2,$B$1:$D$1,0))=INDEX($A$2:$A$6,MATCH(TRUE,EXACT($B$2:$B$6,D2),0))由于MATCH函数不区分大小写,因此需要引入可以区分大小写的EXACT函数。EXACT($B$2:$B$6,D2)将D2和B2:B6每个单元格的内容进行比较,如果完全一样,则返回True,否则返回False。本例中EXACT($B$2:$B$6,D2)返回的结果为{FALSE;FALSE;TRUE;FALSE;FALSE}如下图所示,A1:B8为一组编号数值对照表。要求查询与D2单元格的目标值最接近的数值对应的编号。=INDEX($A$2:$A$8,MATCH(MIN(ABS($B$2:$B$8-D2)),ABS($B$2:$B$8-D2),0))ABS函数用于返回给定数值的绝对值。ABS($B$2:$B$8-D2)返回B2:B8每个单元格的值与D2单元格值的差额的绝对值。MIN(ABS($B$2:$B$8-D2))返回一组绝对值的最小值。
|