如何在Excel中查找列的特定行中的最大值

问题描述 投票:0回答:1

我有一个包含多个列的 Excel 表格,包括“故事”和“剪切 X”。我需要在“shear X”列中找到最大值,但仅限于“story”列包含“story3”的行。

这是我的数据示例:

故事剪切X 故事1 10 故事2 15 故事3 25 故事4 20 故事3 30 故事2 22 故事3 35 …… 我想编写一个公式来标识包含“story3”的行,然后在这些行的“剪切 X”列中查找最大值。

我尝试过的:

我尝试使用 MAX 和 IF 函数,但我无法获得正确的语法并确保它在整个数据集中有效。

这是我尝试过的示例:

=MAX(IF(A:A="story3", B:B))

但是,这个公式对我来说似乎并不正确。

问题:

如何编写一个公式来正确识别“story”列为“story3”的行,然后在这些行的“shear X”列中找到最大值?

附加信息:

我的数据从第 1 行开始。 “故事”值位于 A 列中。 “剪切 X”值位于 B 列中。

excel max row multiple-columns
1个回答
2
投票

取决于您的 Excel 的使用期限,

Office 365 Excel 及更高版本使用 MAXIFS:

=MAXIFS(C:C,A:A,"story3")

Office 2010 及更高版本我们汇总:

=AGGREGATE(14,7,C1:C100/(A1:A100="story3"),1)

此数组公式的早期版本:

=MAX(IF(A1:A100="story3",C1:C100))

作为数组公式,必须使用 Ctrl-Shift-Enter 确认。


如果 C 列并不总是

Shear X
列并且您需要找到它,我们可以使用 INDEX(MATCH()) 将正确的列返回到上述公式:

INDEX(A:H,0,MATCH("shear X",A2:H2,0))

所以:

=MAXIFS(INDEX(A:H,0,MATCH("shear X",2:2,0)),A:A,"story3")

=AGGREGATE(14,7,INDEX(1:100,0,MATCH("shear X",2:2,0))/(A1:A100="story3"),1)

=MAX(IF(A1:A100="story3",INDEX(1:100,0,MATCH("shear X",2:2,0))))
© www.soinside.com 2019 - 2024. All rights reserved.