Excel中如何按2分钟时间区间统计Columns A&B的重复值?
问题描述
我需要统计A、B列中每2分钟时间区间内的重复值数量。目前已能用公式 =COUNTIFS(E:E,">="&A2,E:E,"<="&A3) 统计该区间内的记录总数,但无法判断这些记录里哪些是重复值,原始数据存放在D、E列。
数据示例
| 2分钟时间区间 | 匹配计数 | 输入数据 | 输入时间 | |
|---|---|---|---|---|
| 8:30:00 AM | 2 | Apple123 | 8:30:00 AM | |
| 8:32:00 AM | 2 | Apple456 | 8:30:00 AM | |
| 8:34:00 AM | 5 | Apple789 | 8:30:00 AM | |
| 8:36:00 AM | 2 | Apple123 | 8:31:00 AM | |
| 8:38:00 AM | 2 | Orange123 | 8:32:00 AM | |
| 8:40:00 AM | N/A | Apple789 | 8:33:00 AM | |
| Apple789 | 8:34:00 AM | |||
| Orange456 | 8:34:00 AM | |||
| Orange456 | 8:35:00 AM | |||
| Orange456 | 8:35:00 AM | |||
| Orange123 | 8:36:00 AM | |||
| Orange123 | 8:36:00 AM | |||
| Apple789 | 8:37:00 AM | |||
| Apple123 | 8:38:00 AM | |||
| Apple123 | 8:39:00 AM | |||
| Orange789 | 8:40:00 AM |
(原配图为上述数据的Excel界面展示)
解决方案
提供两种实用方法计算区间内重复值数量:
方法1:SUMPRODUCT+COUNTIF组合公式
在B2单元格输入以下公式,下拉填充即可:
=SUMPRODUCT((E:E>=A2)*(E:E<=A3)*(COUNTIF(D:D,D:D)>1))
逻辑说明:
- 先筛选出E列时间落在当前区间[A2,A3]内的记录
- 再判断这些记录对应的D列值在全列中出现次数是否大于1(即是否为重复值)
- 最后对符合条件的记录计数
方法2:动态数组公式(Excel 365/2021适用)
如果你的Excel支持动态数组,可使用更简洁的公式:
=SUM(--(COUNTIFS(D:D,D:D,E:E,">="&A2,E:E,"<="&A3)>1))
逻辑说明:直接统计当前时间区间内,D列值出现次数大于1的条目数。
注意事项
- 数据量较大时,建议用实际数据范围(如D2:D17、E2:E17)替代整列引用,提升计算效率
- 确保A列的时间区间为连续2分钟间隔,且A3为当前区间的结束时间(例如A2为8:30,A3为8:32)
内容的提问来源于stack exchange,提问作者mjac
相关产品推荐
相关产品推荐

