我已尝试使用以下公式进行与if语句的索引匹配但未获得正确答案。我在哪里弄错了?
=IF(INDEX(AE$3:AE$2000,MATCH(MIN(ABS(AE$3:AE$2000-$AS3)),ABS(AE$3:AE$2000-$AS3),0)),AD$3:AD$2000=$AN3)
=IF(AD$3:AD$2000=$AN3,INDEX(AE$3:AE$2000,MATCH(MIN(ABS(AE$3:AE$2000-$AS3)),ABS(AE$3:AE$2000-$AS3),0)),IF(AD$3:AD$2000=$BN3,INDEX(AE$3:AE$2000,MATCH(MIN(ABS(AE$3:AE$2000-$AS3)),ABS(AE$3:AE$2000-$AS3),0)),""))
=--(AD$3:AD$2000=$AN3)INDEX(AE$3:AE$2000,MATCH(MIN(ABS(AE$3:AE$2000-$AS3)),ABS(AE$3:AE$2000-$AS3),0))
=INDEX(AE$3:AE$2000,MATCH(MIN(ABS(AE$3:AE$2000-$AS3)),ABS(AE$3:AE$2000-$AS3),IF(AD$3:AD$2000=$AN3),0))
=INDEX(AE$3:AE$2000,MATCH(SMALL(IF(AD$3:AD$2000=$AN3,ABS(AE$3:AE$2000-$AS3)),1),IF(AD$3:AD$2000=$AN3,ABS(AE$3:AE$2000-$AS3),0))
答案 0 :(得分:1)
试试这个数组¹公式。
=INDEX(AE$3:AE$2000, AGGREGATE(15, 6, ROW($1:$1998)/((MIN(ABS(TRANSPOSE(AE$3:AE$2000)-$AS3))=ABS(AE$3:AE$2000-$AS3))*(AD$3:AD$2000=$AN3)), 1))
¹数组公式需要用 Ctrl + Shift + Enter↵完成。一旦正确进入第一个单元格,就可以像任何其他公式一样向下或向右填充或复制它们。尝试并减少对更接近表示实际数据范围的范围的全列引用。数组公式以对数方式计算计算周期,因此将参考范围缩小到最小值是一种好习惯。有关详细信息,请参阅Guidelines and examples of array formulas。