You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Excel多列计数及日期范围条件判断公式求助

Excel多列计数及日期范围条件判断公式求助

我完全懂你的需求啦——就是要在体育日程表里统计某支队伍过去4天内在J、K两列的出场次数,只要次数达到3次,就返回TRUE来勾选E列的复选框对吧?咱们先聊聊你之前公式的问题,再给你调整成能用的版本~

你之前公式的问题所在

  • COUNTIFS本身是多条件“且”逻辑的计数函数,没办法直接实现“J列匹配 或 K列匹配”的“或”逻辑,这是核心问题;
  • 日期范围的写法不对,没有明确界定“过去4天”的具体区间,直接写ColumnSDateValue-4Excel根本识别不了;
  • 引用格式错误,你用了文本式的"ColumnJ",但Excel公式里需要用单元格区域引用(比如J:J)。

正确的公式写法

假设你要检查的目标队伍名在当前行的D2单元格(你可以根据自己的实际情况替换成对应的单元格,比如如果是固定队伍名,直接写成"XXX队"就行),可以用SUMPRODUCT来实现“或”逻辑+日期筛选的计数:

=SUMPRODUCT(--((J:J=D2)+(K:K=D2)>0),--(S:S>=TODAY()-4))>=3

公式解释

  • (J:J=D2)+(K:K=D2)>0:这里的加号相当于逻辑“或”,只要J列或K列的单元格匹配目标队伍名,就会返回TRUE;
  • 两个--是把布尔值(TRUE/FALSE)转换成数字1/0,方便后续求和计数;
  • (S:S>=TODAY()-4):筛选出S列日期在**过去4天内(包含今天)**的记录;
  • SUMPRODUCT会把符合条件的记录数求和,最后判断总数是否≥3,返回TRUE/FALSE,刚好能直接用来勾选E列的复选框。

如果你的“过去4天”是指不含今天的前4天,可以把日期条件调整成这样:

=SUMPRODUCT(--((J:J=D2)+(K:K=D2)>0),--(S:S>=TODAY()-5),--(S:S<TODAY()))>=3

这样就能精准统计你需要的次数啦,试试这个公式应该就能解决你的问题~

备注:内容来源于stack exchange,提问作者cloovos

火山引擎 最新活动