范围内的数据
B1:I1
来自以下公式:=SEQUENCE(,8,DATE(2025,1,25),7)
。完整公式可能从 2024 年 12 月 28 日起持续 53 列 - 7 天的间隔为 2025 年每个星期六的开始日期。
A 列中的值是手动输入的(d/m/y格式的变体):
2/2/25-16/2/25, 02/03/2025-16 Mar 25 25/1/25-25/1/25, 15/03/25-15/03/25
问题:
我想要做的是按顺序对 A 列中日期范围涵盖的每个星期进行编号,除非存在六周的间隔,在这种情况下编号应该再次从 1 开始。
此公式会将单元格中的值转换A2
为实际日期: =DATEVALUE(TEXTSPLIT(CLEAN(A2),"-",","))
或者这将返回一周的星期六的开始和星期五的结束:
=LET(AllDates,DATEVALUE(TEXTSPLIT(CLEAN(A2),"-",",")),
StartDates,CHOOSECOLS(AllDates,1)+1-WEEKDAY(CHOOSECOLS(AllDates,1)+1,1),
EndDates,CHOOSECOLS(AllDates,2)+1-WEEKDAY(CHOOSECOLS(AllDates,2)+1,1)+6,
HSTACK(StartDates,EndDates))
该公式=BYCOL($B$1#,LAMBDA(ThisDate,IF(AND(ThisDate>=$A5,ThisDate<=$B5),1,"")))
会在一组日期的正确星期下添加 1。这里A5
和B5
是我的日期公式返回的前两个日期。
我无法将所有内容都放到一个整齐的公式中,更不用说连续编号了。如果我可以添加公式B2
并拖拽,那就太好了。
欢迎任何建议。