我有几类物品 (A13:A100),其中包含价格 (D13:D100 列)。我想要一个公式来计算每类物品的最高价格。
我以为这很容易。但是,我所做的并没有奏效。这是我所得到的。
行 | A 类别 | B 其他栏目 | C 其他栏目 | D 价格 |
---|---|---|---|---|
细绳 | 数字 | |||
十三 | 水果 | 1 | ||
14 | 水果 | 1 | ||
15 | 肉类 | 5 | ||
16 | 水果 | 3 | ||
17 | 谷物 | 2 | ||
18 | 谷物 | 3 | ||
19 | 谷物 | 3 |
在这种情况下,我想将水果的最大值、肉类的最大值和谷物的最大值相加。所以结果是 3 + 5 + 3 = 11。
我已经尝试了三次。
=SUM(ARRAYFORMULA(MAX(FILTER(D13:D100, A13:A100 = UNIQUE(A13:A100)))))
=SUM(ARRAYFORMULA(IFERROR(VLOOKUP(UNIQUE(D13:D100), {D13:D100, A13:A100}, 2, FALSE), 0)))
=SUM(ARRAYFORMULA(MAXIFS(D13:D100, A13:A100, UNIQUE(A13:A100))))
但答案永远不会是 11。随着时间的推移,会有新的行和类别,这就是为什么在我的公式中我计划到第 100 行。我已经知道我可以通过添加新列来逐步完成,但我想避免这种情况。
您还可以使用
QUERY
执行类似 SQL 的查询,为每个类别 A 选择最高价格 D,但不包括 A 为空的任何行:因此,当您正在编辑时,我尝试过:
SUM(MAXIFS(E3:E9,B3:B9,{"谷物","肉类","水果"}))
编辑:您也可以添加一些数据验证:
您可以尝试: