【问题标题】:Using COUNTIFS with different date formats使用具有不同日期格式的 COUNTIFS
【发布时间】:2021-04-21 10:05:53
【问题描述】:

当日期列在某个月份内时,我正在尝试计算列的总数。要查找的值的日期格式与标准范围内的格式不同,我无法弄清楚如何使用两种不同的日期格式创建公式。以下是我试图从中获取总数的列:

这是我在某个月份和年份内尝试计算行数的地方:

这是我创建的公式,但这不起作用,只返回 0:

=COUNTIFS($A$3:$A$27, YEAR(G3), $A$3:$A$27, MONTH(G3))

我也试过了,但它仍然返回 0:

=COUNTIFS($A$3:$A$27, "=YEAR(G3)", $A$3:$A$27, "=MONTH(G3)")

【问题讨论】:

  • 您可以使用一个数组,因此在 A1:A10 中有顶部表格,在 C1:C12 中有底部表格,您可以有以下 =sum(--(year($A$1:$A$10)=(year(C1))*(month($A$1:$A$10)=month(C1))) 这是一个数组公式,因此请按 CTRL + SHIFT + ENTER。
  • 假设 G3 实际上是 21 年 1 月 1 日格式化为显示 mmm-yy,您可以使用:=COUNTIFS($A$3:$A$27, ">="&G3, $A$3:$A$27, "<="&EOMONTH(G3,0))

标签: excel vba excel-formula


【解决方案1】:

格式无关如果您的日期是真实日期

  • 如果您的日期是“真实”日期,只需以某种方式格式化
  • 如果您的月份也是实际日期,其中日期实际上是当月的第一天,

然后:

=COUNTIFS(Dates,">="&B15,Dates,"<=" &EOMONTH(B15,0))

Dates 是包含您的日期列表的命名范围,B15 包含您的月份/年份,格式为月份日期的第一个。

如果您的月份列不是当月的第一天,则只需稍作更改即可将第一个条件转换为当月的第一天:

=COUNTIFS(Dates,">="&DATE(YEAR(B15),MONTH(B15),1),Dates,"<=" &EOMONTH(B15,0))

【讨论】:

  • 谢谢。使用"&gt;="&amp;B15&amp;代表什么?
  • @BailP 连接运算符
猜你喜欢
  • 1970-01-01
  • 2021-03-28
  • 2019-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-25
  • 1970-01-01
相关资源
最近更新 更多