我的countif只能使用硬编码的date标准,而不是dynamic的,因此= today() – 365

我正在使用Excel 2003 SP3。

我试图计算一年以上的列中的date,所以我试图:

=COUNTIF(Library!G9:G10000,"<=today()-365") 

但有一点的时候它给了我0有趣的是,如果我在1年前硬编码,那么:

 =COUNTIF(Library!G9:G10000,"<=16/05/2012") 

那么它工作得很好。

不知道我的范围是否重要(Library!G9:G10000)包括一些文本值,例如“未知”
希望有人能帮忙。

这是不行的,因为今天()是一个函数,你把它串起来,所以excel只会将它解释为文本。

另一个可行的方法是

 =SUM(IF(Library!G9:G10000<TODAY()-365,1,0)) 

这是一个数组公式 ,需要您在input完成后按Crtl + Shift + Enter而不是Enter键。

你的编辑更难。 如果在该范围内还有文本或空白单元格,则使用

 =SUM(IF(ISNUMBER(Library!G9:G10000),IF(Library!G9:G10000<TODAY()-365,1,0),0)) 

再次,这是一个数组公式。

另一种select是…

 =COUNTIF(Library!G9:G10000,"<="&TODAY()-365) 

…作为正则expression式input(与数组公式相对)。