Excel MAX IF 公式:根据条件获取最大值2025年3月17日 | 阅读 7 分钟 我们已经在之前的教程中介绍了 MAX 函数的实现、定义和示例。MAX 函数用于返回数据集中的最大数字。然而,在某些情况下,您可能需要进一步深入数据,根据特定条件查找最大值。 本教程将介绍几种不同的方法,用于根据您指定的一个或几个条件在 Excel 工作表中获取最大值。
Excel MAX IF 公式:一个条件最近,Microsoft Excel 在 Excel 2019 版本中引入了内置的 MAXIFS 函数,以便轻松实现条件最大值。 在此之前,对于 Excel 2016 及更早版本,Excel 用户必须通过将 MAX 函数与 IF 语句组合来自定义公式。 以一个实时示例来说明传统的 MAX IF 函数如何工作。下面是数据表,其中给出了各种代理的销售报告。 ![]() 该表包含三个月的销售报告,您正在寻找最佳销售员 Eva 的数值。执行以下操作:
应用的公式 =MAX(IF(A1:A15="Eva", C1:C15)) ![]() 注意:由于我们使用的是数组函数,因此它不能通过传统的 Enter 键工作。数组公式必须始终通过同时按下 Ctrl + Shift + Enter 键输入。
![]()
应用的公式 =MAX (IF(A2:A10=F1, C2:C10)) ![]()
![]() 这个公式是如何工作的 首先,IF 函数将在内部工作,并将给定的 criteria_Range (A1:A15) 与目标名称 Eva 进行匹配。此操作的输出将返回 TRUE 或 False;如果条件匹配,则为 true,否则返回 False。在我们的案例中,因为它找到了“Eva”,所以它将返回 true。 对于 *value_ if_true* 参数,我们提供跳远结果 (C2:C10),因此如果逻辑测试评估为 TRUE,则返回列 C 中相应的数字。*value_ if_false* 参数被省略,这意味着在不满足条件的情况下,我们将只得到一个 FALSE 值 此数组被馈送到 MAX 函数,该函数返回忽略 FALSE 值的最大数字。 注意:要获取内部数组,您只需在 Excel 工作表中选择公式的等效部分,然后按 F9 键。如果您想退出公式评估模式,只需按 Esc 键。MAX IF 公式与多个条件一起使用在上面一节中,我们介绍了如何根据一个条件实现 MAX IF 公式。如果您想根据两个或更多条件查找最大值,该怎么办?在这种情况下,请选择以下方法之一:
注意:公式开头和结尾的括号表示它是数组公式。例如,我们获得了公司季度的销售报告,并要求找出在四月份销售额最高的女性销售员的姓名。要解决上述问题,请执行以下操作:
应用的公式 = MAX(IF(C2:C11=H3, IF(D2:D11=H4, E2:E11))) ![]()
![]() 使用乘法运算符
应用的公式 = MAX(IF((C2:C11=H3)*(D2:D11=H4), E2:E11)) ![]()
![]() 当您比较这两个结果(参见下面的截图)时,您会发现它们返回了相同的输出。尽管这两个公式都很容易,但相比之下,带有布尔逻辑的公式最受青睐,因为它使用户可以轻松添加任意数量的条件,而无需嵌套多个 If。 MAX IF 公式不使用数组许多 Excel 用户认为数组公式在 Excel 中有点困难,并尽可能避免使用它们。为了满足这些需求,Microsoft Excel 提供了一些内置函数来处理数组。其中一个内置的 Excel 函数是 SUMPRODUCT 函数。 SUMPRODUCT 和 MAX 函数可以使用以下语法一起组合在一个公式中: 在上述语法中,我们已经集成了两个条件,但如果需要,您可以轻松地在上述语法中插入更多范围/条件对。 我们使用了相同的数据(如前面示例中使用的)来查看公式的实际应用。使用该公式,我们希望获取销售员“Reema”在“四月”份的最高销售报告。 应用的公式 =SUMPRODUCT(MAX(((B2:B16=G1) * (C2:C16=G2) * (D2:D16)))) ![]() 与上述公式相比,选择它的优势在于您无需按 CTRL+SHIFT+Enter 键来运行此公式;只需按一个 Enter 键即可获得结果。您将得到以下输出: ![]() 将 Excel MAX IF 与 OR 逻辑集成在之前的示例中,我们使用了乘法运算符,它的行为类似于 AND 运算符。使用 AND 运算符的优点是只有在所有条件都满足时才返回输出。如果您想在满足单个条件时也找到最大值,该怎么办? 为了满足上述要求,我们将使用 OR 逻辑,其中我们不是将条件相乘,而是将它们添加到 MAX IF 公式中。 语法 例如,我们得到了公司季度的销售报告,并想找出在 1 月、2 月份销售额最高的销售员的姓名。要解决上述问题,请执行以下操作:
应用的公式 = =MAX(IF((C2:C11="Jan") + (D2:D11="Feb"), E2:E11)) ![]()
![]() 您还可以结合 SUMPRODUCT 函数来解决上述问题。使用以下 SUMPRODUCT 函数: 应用的公式 =SUMPRODUCT(MAX(((C2:C11="Jan") + (D2:D11="Feb")) * C2:C10)) ![]() 因为它不是数组公式,所以只需按 Enter 键即可运行输出。 注意:SUMPRODUCT 函数仅适用于数值数据,对于文本值,它将返回 0 作为输出。实现 MAXIFS 函数。到目前为止,在本教程中,我们已经介绍了 MAX IF 公式不同的组合来满足我们的要求。然而,您不再需要摆弄那些麻烦的数组公式了!借助最新的 Excel 版本,2019、2021 和 Excel 365,用户可以使用 MAXIFS 公式并集成任意数量的条件,而无需使用 IF 或乘法运算符。使用此函数的优点是,它可以处理包含数值和文本数据的范围。因为它不是数组公式,所以只需按 Enter 键即可获取输出。 语法 为了更好地理解它,我们使用相同的数据(如前面示例中使用的)。使用 MAXIFS 公式,我们将获取销售员“Reema”在“四月”份的最高销售报告。以下是步骤:
应用的公式 =MAXIFS(E2:E11, C2:C11, H3, D2:D11, H4) ![]()
![]() 今天的 MAX IFS 就到这里。尝试所有可能的 MAX IFS 选项。让我们在下一次教程中,带着一些引人入胜的 Excel 主题和实时示例再会。 |
我们请求您订阅我们的新闻通讯以获取最新更新。