MS Excel – 查找特定date后的第一行

说我有一个电子表格与以下,为了方便起见,所有这一切都从单元格A1开始。

--------------------------------------- | Date | Item | Account | --------------------------------------- | 01/09/2011 | Testing 1 | USD | | 03/09/2011 | Testing 2 | USD | | 11/09/2011 | Testing 3 | USD | | 20/10/2011 | Testing 4 | JD | | 22/10/2011 | Testing 5 | JD | | 25/10/2011 | Testing 6 | USD | | 03/11/2011 | Testing 7 | USD | | 05/11/2011 | Testing 8 | JD | --------------------------------------- 

现在,我想运行一个月的报告,从2011年10月1日开始到2011年10月31日结束。 我需要在开始date之后或之后find第一行,然后获取每个后续​​行直到结束date。 如果我能弄清楚如何得到第一个和结束date的行参考,那么我可以找出之间的行(显然!)。

我只能在完全匹配的情况下进行这些types的比赛。 不知道如何做“大于/小于”的比赛。

我将如何去匹配date和帐户列?

不用说,这需要一个公式。

 =match(date(2011,10,1),a2:a9,1)+1 =match(date(2011,10,31),a2:a9,1) 

第一个公式显示10月份的第一个logging,最后一天的第二个公式。 数据必须按升序sorting。

我会build议使用这个数据透视表。 查看Contextures网站上此页面的“Excel模板 – 数据透视表”部分中的第二个链接。

使用下面的数组公式来查找包含最早date的行,该行等于或大于单元格C1中提到的date(在您的情况下是10月1日)。

 =MATCH(MIN(IF($A$1:$A$30>=C1,1,9999)*$A$1:$A$30),$A$1:$A$30,0) 

date列表在单元格A1到A30中。 根据需要更改参考。 数据不必按升序或降序sorting。

使用下面的数组公式来查找包含最新date的行,该date等于或小于单元格D1中提到的date(在您的情况下,这是10月31日)。 数据不必按升序或降序sorting。

 =MATCH(MAX(IF($A$1:$A$30<=D1,1,0)*$A$1:$A$30),$A$1:$A$30,0) 

如果您想要最早和最新的date,请使用以下数组公式。

 =MIN(IF($A$1:$A$30>=C1,1,9999)*$A$1:$A$30) =MAX(IF($A$1:$A$30<=D1,1,0)*$A$1:$A$30) 

上面所用的所有公式都是数组公式。 要input数组公式,请使用Ctrl + Shift + Enter代替Enter。

Vijaykumar Shetye,果阿,印度