Excel:计算date单元格中某个特定月份的频率

我有一个列有事件date的列。 (比方说:A1:A100)

现在我想用公式来查找或显示2013年1月发生的事件数量。

有任何想法吗 ?

你需要的是一个数组公式,因为你必须input它们的方式,有时被称为“CSE”公式。

select你的目标单元格,并select它。 然后,在公式栏中input:

=SUM(IF((A1:A100>=DATEVALUE("1/1/2013"))*(A1:A100<=DATEVALUE("31/1/2013")),1,0)) 

而不是[enter],按[ctrl] + [shift] + [enter]

真的不明白为什么MS会让你做CSE的事情 – 当然,从格式来看,这是一个数组公式?

如何使用Countifsstart and end date之间查找logging? 您可以键入date或将其指向包含date的两个单元格。 不知道你正在使用哪个版本的Excel,但在2003年以外, CountIfs不被支持。

 =COUNTIFS(A2:A100,">="&C2,A2:A100,"<="&C3) 

要么

 =COUNTIFS(A2:A100,">=1/1/2013",A2:A100,"<=31/1/2013") 

FREQUENCY公式和辅助MONTH函数一起使用:

  1. 在结果表格中input数字1-12(如D1:D12)
  2. select十二个相邻的单元格(在这个例子中是E1:E12),然后input=FREQUENCY(MONTH(A1:A1000),D1:D12) – input公式作为数组公式(即按Ctrl-Shift-Enter Enter

如果你想要分开几年,则需要修改D列中的密钥和公式以导出密钥,例如MONTH(A1:A1000) ,而不是MONTH(A1:A1000)&"-"&YEAR(A1:A1000) – 或者(如果纯粹在一个Locale环境中使用TEXT(A1:A1000,"MM-YY")

一些想法:

  • 使用SUMPRODUCT公式按月进行汇总。 请参阅示例: http : //www.contextures.com/xlFunctions04.html#SumProduct

  • 使用数据透视表:

    添加一列B =month(a1) 。 填好。 添加全部1秒的C列。

    给A,B,C标题名称: DateMonthCount

    基于A,B,C插入数据透视表。 现在,您可以轻松地按月结算。

  • 一个公式(如果你确切知道你正在寻找哪个月):

    也许在列B中用一个像这样的公式填充: =if(and(month(a1)=1,year(a1)=2013),1,0) ,然后sum()列B?

  • 使用整合function。 看看: http : //www.techrepublic.com/blog/window-on-windows/use-consolidate-to-summarize-excel-data-without-sorting/6521