Excel 前 5 个公式解释

Excel 前 5 个公式解释

下面这个公式非常有效!

但我还是无法弄清楚到底发生了什么。

有人可以一步一步解释一下这里发生的事情吗?

我对公式和 VBA 有很好的了解,对数组公式有基本的了解,但这让我很困惑。

在 Excel 中评估公式确实没有帮助。

=INDEX($B$2:$B$11,MATCH(1,INDEX(($B$2:$B$11=LARGE($B$2:$B$11,ROWS(F$1:F1)))*(COUNTIF(F$1:F1,$A$2:$A$11)=0),),0))

在此处输入图片描述

答案1

与一般公式一样,公式从内部开始:

  • ROWS(F$1:F1)与 相同ROW()-1,因此它只是排名
  • LARGE($B$2:$B$11,ROWS(..))返回实际排名的分数。
    此公式在两列中使用相同的公式。您可以只在第二列中保留此公式以获得相同的结果
  • $B$2:$B$11=LARGE(...)结果是一个数组,其中trueB 列的分数等于实际分数
  • COUNTIF(F$1:F1,$A$2:$A$11)=0
    这在此列中没有意义,只是一个数组true
    然而,在 E 列中,第一个参数将是E$1:E1,产生0E 列中尚未列出名称的所有行。将其转换为尚未列出的值和已列出的名称=0的列表。truefalse
  • INDEX((..)*(),)计算前两个数组的交集(实际排名所需的分数和尚未列出的姓名),得出一个数组
  • MATCH(1,INDEX(..),0)返回满足条件的第一项的索引
  • INDEX($B$2:$B$B11,MATCH(..))返回下一个名称/分数

相关内容