如何在Google Sheets中设置规则查看任意时段课程重叠数量?
解决Google Sheets课程时段重叠统计问题
一、统计任意时段的课程重叠数量
假设你的课程开始日期在A列,结束日期在B列,要查询的目标时段开始日期放在D1,结束日期放在E1,直接用COUNTIFS公式就能算出重叠的课程数:
=COUNTIFS(A:A,"<="&E1,B:B,">="&D1)
逻辑很简单:只要某门课的开始日期≤目标时段结束,且结束日期≥目标时段开始,就判定为重叠,公式会自动统计符合条件的课程总数。你只需要把D1、E1换成你要查询的具体日期就行。
二、一次性查看所有重叠情况
方法1:用条件格式高亮重叠课程
选中所有课程的日期行(比如A2:B100,根据你的实际数据范围调整),点击「格式」→「条件格式」,选择「自定义公式」,输入:
=SUMPRODUCT(--(A2<=$B$2:$B$100),--(B2>=$A$2:$A$100))>1
设置好高亮样式(比如填充色)后,所有和其他课程有重叠的行都会被标出来,一眼就能看到哪些课程时段冲突。
方法2:生成所有重叠课程对
如果需要具体看到哪两门课重叠,可以用数组公式直接输出所有重叠组合:
=ARRAYFORMULA( QUERY( { A2:A&B2:B, A2:A, B2:B, FILTER(A2:A&B2:B, ROW(A2:A)<ROW(A2:A)), FILTER(A2:A, ROW(A2:A)<ROW(A2:A)), FILTER(B2:B, ROW(A2:A)<ROW(A2:A)) }, "select Col2, Col3, Col5, Col6 where Col2<=Col6 and Col3>=Col5 and Col1<>Col4", 0 ) )
这个公式会生成一个表格,每一行显示一对重叠课程的开始、结束日期,帮你清晰看到所有重叠的具体情况。注意把公式里的A2:A、B2:B改成你实际的数据列范围。
内容的提问来源于stack exchange,提问作者Kandace
相关产品推荐
相关产品推荐

