MAX日期值在2个条件的范围内

时间:2015-05-14 07:57:54

标签: excel max

轻松实现

+---+----+-------------+
|   | A  |      B      |
+---+----+-------------+
| 1 | xx | 12-05-2015  |
| 2 | xx | 15-05-2015  |
| 3 | yy | 13-05-2015  |
| 4 | yy | 16-05-2015  |
+---+----+-------------+

(今天是2015年5月14日)

我需要为每个" A"获取MAX日期值。价值只有在今天之前。 如果不是,请转到第二大值。如果它找不到,空单元格。

到目前为止我做了什么:

=MAX($A$1:$A$4='xx';$B$1:$B$4<TODAY();$B$1:$B$4)

并使用 SHIFT确认 + CTRL + ENTER

我得到的错误是它产生13-05-2015作为xx的最大值,这显然是错误的(好像它没有考虑$A$1:$A$4='xx'

3 个答案:

答案 0 :(得分:2)

您需要使用嵌套的if函数。即将您的公式更改为:

{=MAX(IF($A$1:$A$4="xx", IF($B$1:$B$4<TODAY(), $B$1:$B$4)))}

Ctrl + Shift + Enter

结束

答案 1 :(得分:1)

标准(非数组)公式替代方案。

=MAX(INDEX((B:B)*(A:A="xx")*(B:B<TODAY()), , ))

MAX Date If Conditions

这个公式可以从单列范围从完整列减少到更接近可用数据范围的方式中受益。

答案 2 :(得分:1)

如果您的日期按示例中所示按升序排序,那么您可以使用LOOKUP,如下所示:

=LOOKUP(2,1/(A$1:A$100="xx")/(B$1:B$100<TODAY()),B$1:B$100)

不需要&#34;数组输入&#34;