如何在Google Sheets中跨年时重置周数?现有公式适配咨询
实现跨年重置日期编号的Excel公式调整方案
你的原公式=INDEX(IFNA(TEXT(VLOOKUP(A2:A, {UNIQUE(FILTER(A2:A, A2:A<>" ")),SEQUENCE(COUNTUNIQUE(A2:A))}, 2, 0), "0")))是对所有非空唯一日期做连续编号,不会区分年份,因此跨年时不会重置编号。
要实现跨年时重置编号(每年从1开始计数),可根据需求选择以下调整后的公式:
场景1:同一日期仅计1次,每年内按日期先后顺序编号
和原公式逻辑一致,同一日期无论出现多少次都用同一个编号,且每年从1开始:
=INDEX(IFNA(TEXT(MATCH(A2:A, UNIQUE(FILTER(A2:A, YEAR(A2:A)=YEAR(A2:A))), 0), "0")))
公式说明:
YEAR(A2:A)=YEAR(A2:A):筛选出当前行日期对应年份的所有非空日期UNIQUE(...):提取该年份内的唯一日期MATCH(...):定位当前日期在该年份唯一日期列表中的位置,实现跨年重置编号
场景2:按日期出现次数累计编号(重复日期也递增)
如果需要按日期出现的先后顺序累计,同一日期多次出现则编号递增,每年从1开始:
=INDEX(IFNA(TEXT(COUNTIFS(YEAR(A2:A), YEAR(A2:A), A2:A, "<="&A2:A, A2:A, "<> "), "0")))
公式说明:
COUNTIFS(...):统计当前行日期所在年份中,小于等于当前日期的非空日期数量,自动实现跨年重置
直接替换原公式即可,确保A列数据为标准日期格式。
内容的提问来源于stack exchange,提问作者ThousandSteps
相关产品推荐
相关产品推荐

