EXCEL中A列中有2个相同的数据对应的c列的数据是不同的 (如表一),

2024-12-05 00:14:03
推荐回答(1个)
回答(1):

需要多个函数来组合实现此功能,组合后的公式如下:
=IFERROR(INDEX($A$2:$A$17,LARGE(IF($A$2:$A$17>10,ROW($A$2:$A$17),""),ROW(2:2))),""),数组函数,三键结束。

公式详解:
我们首先用if函数来做条件判断,举例中源数据区域位于A2:A17,假定条件为">10"。
用IF来判断如果源数据满足条件则返回其行号,如不满足则返回空值。
通过第一步,我们可以得到一个由行号及“”(空值)组成的数组,然后运用LARGE函数将数组按照从大到小排序,及行号从大到小排列。
运用INDEX函数来根据第二步排列好的行号依次返回结果。
第二步得出的数组中的空值对应的INDEX结果是#NUM!, 需要用IFERROR函数来进行容错,即如果得到错误值则强制转化为空值。

注:此题要求从大到小比较特殊,所以用到了LARGE函数,通常情况下是按照原排列顺序返回值,这时候我们要用SMALL函数来代替LARGE函数,即IFERROR+INDEX+SMALL+IF组合。