【问题标题】:Count dates by year while ignoring duplicates in a separate column按年份计算日期,同时忽略单独列中的重复项
【发布时间】:2021-10-26 10:36:57
【问题描述】:

我正在尝试计算数据集中指定年份的出现次数,但我需要忽略单独列中存在重复数字的计数。

我玩过一个计数唯一类型公式,但如果任一列中有空白单元格(会有)或日期不在我要搜索的年份,则会出现 DIV/0 错误。

到目前为止我使用的公式如下。

=SUMPRODUCT(IF(YEAR(B19:B41)=2020,1)/COUNTIFS(A19:A41,A19:A41,B19:B41,">"&"2020-1-1",B19:B41,"<"&"2020-12-31"))

下面的数据集。答案应该返回 15,但我希望在数据表中考虑空白单元格和替代年份。

A 列:

EstablishmentID
010/3473
010/1951
010/1951
010/2747
010/3038
010/2747
172/3306
173/3306
004/1055
014/6641
050/6641
031/6641
026/6641
004/1237
007/2904
007/2904
007/2904
007/2904
031/13894
031/13894
006/16416

B 列:

WithdrawalDate
10/02/2020
16/02/2020
16/02/2020
16/02/2020
16/02/2020
16/02/2020
16/02/2020
16/02/2020
18/02/2020
20/02/2020
20/02/2020
20/02/2020
20/02/2020
20/02/2020
26/02/2020
26/02/2020
26/02/2020
26/02/2020
06/03/2020
06/03/2020
05/03/2020

【问题讨论】:

  • 什么版本的 Excel?你有FILTER 功能吗?
  • 嗨,Ron,office 365,是的,我这样做了,但以前从未使用过该功能。

标签: excel date count duplicates


【解决方案1】:

使用 O365,您可以使用:

=COUNTA(UNIQUE(FILTER(EstablishmentID,YEAR(WithdrawalDate)=2020)))

其中EstablishmentIDWithdrawalDate 是指明显的命名范围。

编辑:如果您可能指的是WithdrawalDate 中不存在的年份,您可以使用:

=SUMPRODUCT(--ISTEXT(UNIQUE(FILTER(EstablishmentID,YEAR(WithdrawalDate)=2020))))

【讨论】:

  • 使用小样本就可以了!谢谢你。数据集很大,所以我只能假设这个数字是正确的。非常感谢。
  • @Joe 只要两个数组大小和形状一样,应该没问题。
  • 我是否正确地说,它不是计算日期然后忽略重复项,而是搜索所有相关日期然后计算唯一文本字符串
  • 对不起,我刚刚注意到您给出了不同的答案,两者都有效。谢谢
  • @Joe 搜索所有相关日期,然后计算唯一文本字符串。非常正确。顺便说一句,由于我的回答似乎是您所需要的,请将其标记为已接受。见What should I do when someone answers my question
猜你喜欢
  • 2015-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-04
相关资源
最近更新 更多