2016-01-24 125 views
0

鉴于以下电子表格,我希望找到2015年5月16日后的第一个日期,该日期的付款金额大于0.因此,下一个付款日期“7/1/2015“是我正在寻找的。Excel索引与使用日期和数字的多个条件匹配

enter image description here

我尝试以下公式:= INDEX(A4:A10,MATCH($ E $ 1,$ A $ 4:$ A $ 10,1)+ 1),但是,让我2015年6月1日因为它不检查付款是否大于0.我尝试过添加第二条标准的各种方式,但一直未能实现。

感谢,

回答

1

这里是另一个公式,E2:

=SMALL(IF(A4:A9>$E$1,IF(B4:B9>0,A4:A9)),1) 

它是一个阵列式,并且必须由Ctrl键确认 - - 输入

enter image description here

这将在E1中找到不是0的日期之后的第一个日期,不管排序顺序如何。

1

在E3(.. F2?)的,

=INDEX(A:A, AGGREGATE(15, 6, ROW(A4:INDEX(A:A, MATCH(1E+99,A:A)))/((A4:INDEX(A:A, MATCH(1E+99,A:A))>E2)*(B4:INDEX(B:B, MATCH(1E+99,A:A))>0)), 1)) 

你将不得不作为一个日期格式。初始结果将是42186.

1

使用此数组公式。

press CTRL + SHIFT + ENTER来评估它。

=INDEX(A4:A10,SMALL(IF(A4:A9>E1,IF(B4:B9>0,ROW(A4:A9)-ROW($A$3))),ROWS($A$4:$A4))) 

enter image description here

+0

'B2'单元格有日期格式,否则你会得到一个数字。 – harun24hr