求Google Sheets数组公式:统计单元格内年份及年份范围的数量
Google Sheets 数组公式:统计单列单元格内年份总数
需要实现的功能:用数组公式统计单列中每个单元格内的年份总数,输入支持两种格式:
- 年份区间(如
1992-1993) - 多个年份/区间用逗号分隔(如
1992-1993, 1994-1996, 1997)
输入输出示例
- 输入
1992-1993→ 输出2 - 输入
1995-1997→ 输出3 - 输入
1995, 1997→ 输出2 - 输入
1992-1993, 1994-1996, 1997→ 输出6
数组公式实现
假设目标数据在E列(从E2开始),在空白列的首行(如F2)输入以下公式,它会自动应用到整列:
=BYROW(E2:E, LAMBDA(cell, IF(cell="",, SUM(SPLIT(REGEXREPLACE(cell, "(\d+)-(\d+)", "$2-$1+1"), ", ")*1))))
公式逻辑说明
- BYROW + LAMBDA:遍历E列的每个单元格,仅对非空单元格执行计算
- REGEXREPLACE:将年份区间
X-Y转换为区间年份数量的计算式Y-X+1,单个年份保持原样 - SPLIT:按
,(逗号加空格)分割单元格内容,得到每个部分的计算值 - *SUM + 1:将分割后的文本转为数值并求和,得到该单元格的总年份数
内容的提问来源于stack exchange,提问作者Marty
相关产品推荐
相关产品推荐

