当下方单元格 = 1 时获取 (X:Y) 的最大值

当下方单元格 = 1 时获取 (X:Y) 的最大值

我想要做的是从某一行中获取最近的日期,同时其下方的单元格的值为 1。

我尝试使用 MAX 和 hLOOKUP,但都不能满足我的需要。

单元格 A3 至 G3 包含日期。单元格 A4 至 G4 包含 1 或 0。单元格 A5 希望返回范围 (A3:G3) 中单元格的最大值,而包含最大值的单元格下方的单元格=1

答案1

有一个很好的解决方案,使用数组公式

=MAX(如果(1=$A$4:$G$4, $A$3:$G$3, 0))

怎么运行的:条件语句创建了一个数组 {日期或者0,...} 取决于 A4:G4 范围内是否有 1。如果存在,则其上方的值 (日期值) 添加到数组中,否则0已添加。max 函数返回数组中的最高值。

笔记:

1.必须输入公式,然后按 CTRL-SHIFT-ENTER 而不是按 ENTER 来指定它是一个数组公式。您将知道您是否正确执行了此操作,因为公式将在两端显示花括号 { }。这些可以不是手动输入。

2.确保所有日期单元格的格式为日期类型。这包括您放置公式的单元格 :)

3.如果没有任何日期下方有 1,则可能存在错误。max 函数将查找最大值 (0) 并将其显示为日期,例如 1/0/1900。

答案2

这是另一个数组公式解决方案,其工作原理与 Brian Folan 的解决方案相同。

=MAX(A3:G3*A4:G4)

输入Ctrl+ Shift+ Enter。这将返回第 4 行中最大日期的日期值,其下方带有 1。

如果您想以日期格式返回值,您可以将其包装在函数中TEXT并在第二个参数中指定格式。

=TEXT(MAX(A3:G3*A4:G4),"mm/dd/yyyy")

这也必须用Ctrl++输入ShiftEnter

答案3

不确定它是否适合您尝试实现的目标,但是如何......

1)设置 A5 = A3 * A4

2)B6 = B3 * B4...等也一样。

3)然后使用 A5 =MAX(A5:G5)

在此处输入图片描述

相关内容