求Google Sheets日期列最长连续天数的单单元格公式
计算Google Sheets中某列最长连续日期天数的单单元格公式
已按日期排序的场景(假设日期在A列,表头为A1,数据从A2开始)
直接使用以下单单元格公式即可得到最长连续天数:
=MAX(ARRAYFORMULA(IF(A2:A="",,COUNTIF(A2:A-ROW(A2:A),A2:A-ROW(A2:A)))))
日期未排序的场景
如果原列日期是乱序的,先对有效日期排序后再计算,公式调整为:
=MAX(ARRAYFORMULA(COUNTIF(SORT(FILTER(A2:A,A2:A<>""))-ROW(SORT(FILTER(A2:A,A2:A<>""))),SORT(FILTER(A2:A,A2:A<>""))-ROW(SORT(FILTER(A2:A,A2:A<>""))))))
公式原理
核心逻辑利用连续日期与对应行号的差值恒定的特性:
- 连续日期中,每往后一天日期+1、行号也+1,因此
日期-行号的结果完全一致 - 通过
COUNTIF统计每个差值的出现次数,次数即是对应连续序列的天数 - 最后用
MAX提取所有连续天数中的最大值
注意事项
- 公式会自动忽略A列中的空白单元格
- 若需针对特定范围(而非整列)计算,只需将
A2:A替换为具体范围(如A2:A100)
内容的提问来源于stack exchange,提问作者Hugo Huijer
相关产品推荐
相关产品推荐

