Excel - 使用一个条件计算日期范围内的不同日期

Excel - Counting Distinct Dates within a Date Range With One Critieria

我正在尝试创建一个公式,根据项目类型计算日期范围内唯一日期的数量。

我尝试了几种不同的公式并研究了方法,但每个公式都非常针对 post 用户的具体问题,所以它不起作用,所以我决定 post我的帮助。

当我只想计算两个日期之间的不同天数时,此公式计算重复的天数:

=COUNTIFS(Sheet1!$D:$D,">="&$A,Sheet1!$D:$D,"<="&$B,Sheet1!$B:$B,A8)

完整的数据集在 Sheet1 上(为简单起见,我只说明了 16 行,但它有可能在数千行之内):

计算在 Sheet 2:

简而言之,使用 Sheet1 上的数据,我想知道在 6/1/2020 和 6/8/2020 之间发生了多少个唯一日期,条件是香蕉。这些项目将来会发生变化,因此我希望将日期和项目引用到单元格中。

如果您的 Excel O365 具有 UNIQUEFILTER 功能:

  • 请注意,我将您的数据集制作成 Table,这样范围会自动调整,并且我可以使用结构化引用。如果需要,您可以将其更改为常规地址。

  • 我还制作了 StartEnd 日期单元格 Named ranges

对于您的“类型”列表

A12: =UNIQUE(tblFruits[Type])

对于计数

B12: =COUNT(UNIQUE(FILTER(tblFruits[Date], ((tblFruits[Type]=A12)*(tblFruits[Date]>=START)*(tblFruits[Date]<=END)))))

注意: 如果您没有这些功能,我建议您使用 Power Query 以及工作表更改事件来触发如果数据或日期过滤器更改则刷新

谢谢!

我决定使用下面的数组公式: =SUM(符号(频率(如果($B$2:$B$16=F5,如果($D$2:$D$16>=$F$2,如果($D$2:$D$16<=$G$2,$ D$2:$D$16))),$D$2:$D$16)))

工作得很好!