Excel COUNTIFS在date范围内计算月份

我正在使用=COUNTIFS()函数来计算满足两个条件的值的数量。

 =COUNTIFS('2014'!$F:$F, B3, '2014'!$H:$H, A13) 

不过,我不想也包括具体的月份作为条件,但date的范围是格式,3/11/2014。 我查了几个不同的方法,可以使用=SUMPRODUCT()MONTH公式的组合来计算特定月份的特定月份,但是无法find一个在COUNTIFS函数中工作以满足原始条件的方法。

我甚至试图通过使用通配符来思考问题,

 =COUNTIFS('2014'!$F:$F, B3, '2014'!$H:$H, A13, '2014'!$A:$A, "*/11/2014") 

唉,无济于事。

有谁知道是否有一种方法,包括计数特定的月份=COUNTIFS()函数?

编辑*

我有一个临时修复,这不是一个确定的解决scheme,但我已经创build了一个帮助列包含

 =TEXT(A1, "DD/MM/YYYY") 

并将其与我原来的通配符解决scheme绑在一起

 =COUNTIFS('2014'!$F:$F, B3, '2014'!$H:$H, A13, '2014'!$I:$I, "*/11/2014") 

不过还是要稍微less一些bodgy!

因为看起来你所有的exceldate都设置为dd/mm/yyyy这个公式应该是这样的:

 =COUNTIFS('2014'!$F:$F, B3, '2014'!$H:$H, A13, '2014'!$A:$A, ">="&EOMONTH(DATE(2014,10,1),0)+1,'2014'!$A:$A,"<"&EOMONTH(DATE(2014,11,1),0)+1) 

这基本上检查列整个月的跨度。 所有date大于或等于所需月份的开始date,所有date小于下个月的开始date。

要更改月份:

 =COUNTIFS('2014'!$F:$F, B3, '2014'!$H:$H, A13, '2014'!$A:$A, ">="&EOMONTH(DATE(2014,10,1),0)+1,'2014'!$A:$A,"<"&EOMONTH(DATE(2014,11,1),0)+1) ^^ change 10 to one month prior ^^ change 11 to the month you want. 

例如1月份,您可能会join如下内容:

 =COUNTIFS(A:A,">"&41639,A:A,"<"&41650) 

假设你的date是数字而不是string。

如果您正在testing的月份是数字格式(1月1日,2月2日等),您可以使用以下内容:

 =SUMPRODUCT(('2014'!$F:$F= B3)*('2014'!$H:$H= A13)*(Month('2014'!$A:$A) = 5)*1) 

例如,这将查找May值。

这是如何工作的

SUMPRODUCT通过testing一系列单元的条件来工作。 对于每一行,在我们的例子中,我们testingF保持B13的值, H保存A13的数据,而A的月份是5 。 每个testing都会返回TRUEFALSETRUE也是1False也是0 ,所以testing一个行将如下所示:

 Row 1: TRUE * TRUE * TRUE * 1 = 1 Row 2: FALSE * TRUE * TRUE * 1 = 0 Row 3: TRUE * TRUE * FALSE * 1 = 0 Row 4: TRUE * TRUE * TRUE * 1 = 1 -------------------------------------- TOTAL: 2 

每个条件都在自己的犯罪陈述中,并乘以其他条件,从而得到一个1或0,当testing你的范围内的每一行时,SUMPRODUCT将加起来。