代码之家  ›  专栏  ›  技术社区  ›  Scott Holtzman

具有唯一标准的小函数

  •  0
  • Scott Holtzman  · 技术社区  · 7 年前

    我的数据概述如下:

    State   Sort
    CA      11
    CA      21
    CA      11
    CA      21
    WA      11
    WA      12
    MT      11
    MT      12
    MT      21
    

    我想退回最小的 第n个 唯一的 每个州的数字。

    此公式适用于不存在重复项的情况:

    =AGGREGATE(15,6,B$2:B$10/(A$2:A$10=D2),ROW(1:1))
    

    然而,对于第二和第四个最小值,它(显然)返回11和21两次。

    我玩过 FREQUENCY 要获取唯一列表,但它不起作用:

    =AGGREGATE(15,6,FREQUENCY(IF(A$2:A$10=D2,MATCH(B$2:B$10,B$2:B$10,0),0),ROWS(B$2:B$10)-1),ROW(1:1))
    

    但也不能太多的工作。有什么想法可以让这一切顺利进行吗?

    我想为CA返回以下内容: enter image description here

    2 回复  |  直到 7 年前
        1
  •  2
  •   Scott Craner    7 年前

    尝试以下操作:

    =AGGREGATE(15,6,B$2:B$10/(MATCH(D2 & "|" & $B$2:$B$10,$A$2:$A$10 & "|" & $B$2:$B$10,0)=ROW($B$2:$B$10)-MIN(ROW($B$2:$B$10))+1),ROW(1:1))
    

    它会检查该数字是否第一次出现。

    enter image description here

        2
  •  2
  •   barry houdini    7 年前

    此公式将为您提供所需的结果

    =AGGREGATE(15,6,B$2:B$10/(A$2:A$10=D2)/(COUNTIF(E$1:E1,B$2:B$10)=0),1)

    AGGREGATE 查找列A与D2匹配且数字不包含在上述单元格中的最小值

    enter image description here