在Excel中使用公式中的范围

时间:2014-03-04 21:31:57

标签: excel date countif

我会马上给你一个例子。我在列(F)中的日期为此格式的文本。 Jan 31, 2014 12:55 PM PST

我可以使用DATEVALUE((LEFT(F5,12))),

将这些转换为日期

但是当我使用此范围作为countif函数的参数时,我想动态地执行此转换:

=COUNTIF(Dates!$F:$F,">"&DATE(1,1,2014))  

:这显然不起作用,因为我在该列中将日期作为文本

假设我使用DATEVALUE((LEFT(F5,12))),

在另一列G中转换了这些日期
=COUNTIF(Dates!$G:$G,">"&DATE(1,1,2014))  

:现在可行了

但我想要的东西(不起作用)

=COUNTIF(DATEVALUE(LEFT(Dates!$F:$F,12)),">"&DATE(1,1,2014))  

有可能吗?

2 个答案:

答案 0 :(得分:2)

以下内容可行:

=SUM(IF(DATEVALUE(LEFT(F:F,12)) > DATE(1,1,2014),1,0))

作为“数组公式”输入(使用ctrl-shift-enter)。

答案 1 :(得分:1)

你不能用COUNTIF做到这一点,因为COUNTIF的第一个参数必须是一个范围(并且使用你的DATEVALUE函数将给出一个“数组”)。您可以使用SUMPRODUCT - 我建议限制范围而不是使用整列,例如

=SUMPRODUCT((DATEVALUE(LEFT(Dates!$F2:$F1000,12))>DATE(1,1,2014))+0)