我找不到类似的问题,这就是我问一个新问题的原因。
我有一个包含两列的工作表 - 第一列以下列格式显示月份和年份“mon.year”,例如“apr.2017”,第二列显示一个数字。该数字必须表示按特定条件筛选的某些其他日期的计数。我在另一张表中有这些日期 - 一列有名字,一列有日期。 我想要做的是从第二张表中计算例如2017年6月的日期数,并将数字放在第一张表的第二列中。
以下是第一张纸的样子:
这就是第二张包含数据的表格:
我正在寻找的结果是:
所以,我尝试了以下代码,但我无法弄清楚它为什么不起作用。
有关如何改进公式的任何建议吗?
编辑:所以,下面的评论对我有帮助,但由于公式必须最多简化(我的同事使用excel文件,而不是我),我选择计算两个隐藏列中的月份和年份,然后在它们上使用countif公式。答案 0 :(得分:2)
您需要括起日期:
=COUNTIFS('1'$B$2:$B$26,">=" & EOMONTH(A2,-1)+1,'1'$B$2:$B$26, "<" & EOMONTH(A2,0)+1)
答案 1 :(得分:1)
对于Excel,日期/时间只是一个格式化的数字,即固定时期以来的天数。
thrust::reduce_by_key
是一个表达式,它将字符串"="&MONTH(A2)
与函数=
的结果连接起来,即MONTH(A2)
。表达式的结果是1
,这是=1
看到的内容。
您实际上是在告诉COUNTIFS与序列号为1(1999年12月31日午夜)的日期/时间相匹配。同样,第二个标准将在1905年7月9日午夜完全匹配。
我的建议是在不同的列上计算每个日期的月份和年份,并在这些列上使用COUNTIFS
。