Maxif 的数组公式
Array Formula For Maxifs
我觉得我的问题应该很容易弄清楚,但我环顾四周,似乎无法找出如何获得产生最大值的基本数组溢出函数。这是我的简化数据集:
Col A
Col B
Apple
864
Carrot
189
Pear
256
Apple
975
Pear
873
Carrot
495
Apple
95
Pear
36
Carrot
804
我的objective是有一个唯一的食物列表(来自Col A
),即returns来自Col B
的最大对应值。来自 Col A
的 unique
列表的公式很简单...... =UNIQUE(filter(A:A,A:A<>""))
,我正在努力的是获得动态 maxifs
以与此对齐。
为了说明,如果我将唯一函数放在单元格 D2
中(因此它会溢出到 d4
,如下面蓝色所示),正确对应的非数组函数将是 =MAXIFS(B:B,A:A,D2)
(如 column e
所示)。我可以将它拖到剩余的行中,但我希望它是动态的,因为将来我的数据集中可能会有更多食物。
我 期望 工作的是... =filter(MAXIFS(B:B,A:A,D2:D),D2:D<>"")
但是这个 returns #Value!
。相比之下,如果我使用 sumif/Average、=filter(SUMIF(A:A,D2:D,B:B),D2:D<>"")
,我会得到我期望的结果(这让我很困惑)。
有没有一种方法可以获取基于 D 列中的唯一值溢出的动态 maxifs(或在 E 列中产生相等值的任何函数)?
尝试:
=QUERY({A:B}, "select Col1,max(Col2) where Col2 is not null group by Col1 label max(Col2)''")
奖金:
=QUERY({A:B}, "select Col1,max(Col2),sum(Col2) where Col2 is not null group by Col1 label max(Col2)'',sum(Col2)''")
奖金 2:
=SORTN(SORT(A1:B, 2, ), 9^9, 2, 1, 1)
2 - sort the second column of range A1:B
<empty> - or 0 or FALSE = "in descending order"
9^9 - output all rows
2 - 2nd mode of SORTN = "group by..."
1 - 1st column
1 - in ascending order
我觉得我的问题应该很容易弄清楚,但我环顾四周,似乎无法找出如何获得产生最大值的基本数组溢出函数。这是我的简化数据集:
Col A | Col B |
---|---|
Apple | 864 |
Carrot | 189 |
Pear | 256 |
Apple | 975 |
Pear | 873 |
Carrot | 495 |
Apple | 95 |
Pear | 36 |
Carrot | 804 |
我的objective是有一个唯一的食物列表(来自Col A
),即returns来自Col B
的最大对应值。来自 Col A
的 unique
列表的公式很简单...... =UNIQUE(filter(A:A,A:A<>""))
,我正在努力的是获得动态 maxifs
以与此对齐。
为了说明,如果我将唯一函数放在单元格 D2
中(因此它会溢出到 d4
,如下面蓝色所示),正确对应的非数组函数将是 =MAXIFS(B:B,A:A,D2)
(如 column e
所示)。我可以将它拖到剩余的行中,但我希望它是动态的,因为将来我的数据集中可能会有更多食物。
我 期望 工作的是... =filter(MAXIFS(B:B,A:A,D2:D),D2:D<>"")
但是这个 returns #Value!
。相比之下,如果我使用 sumif/Average、=filter(SUMIF(A:A,D2:D,B:B),D2:D<>"")
,我会得到我期望的结果(这让我很困惑)。
有没有一种方法可以获取基于 D 列中的唯一值溢出的动态 maxifs(或在 E 列中产生相等值的任何函数)?
尝试:
=QUERY({A:B}, "select Col1,max(Col2) where Col2 is not null group by Col1 label max(Col2)''")
奖金:
=QUERY({A:B}, "select Col1,max(Col2),sum(Col2) where Col2 is not null group by Col1 label max(Col2)'',sum(Col2)''")
奖金 2:
=SORTN(SORT(A1:B, 2, ), 9^9, 2, 1, 1)
2 - sort the second column of range A1:B
<empty> - or 0 or FALSE = "in descending order"
9^9 - output all rows
2 - 2nd mode of SORTN = "group by..."
1 - 1st column
1 - in ascending order