Arte SheetsLearn. Try. Understand.

Dates & Schedules

Generate a Dynamic Sequence of Upcoming Weekend Dates (WEEKDAY & SEQUENCE)

Anchor on the first Saturday on or after any start date using WEEKDAY(start, 2) modular arithmetic and step forward in 7-day increments with SEQUENCE.

Compute weekend maintenance windows from any arbitrary start date

Release engineering and retail staffing schedules often need the next N Saturdays (or Saturday/Sunday pairs) starting on or after a project kickoff date. Under ISO weekday numbering WEEKDAY(d, 2) (Monday = 1 ... Saturday = 6, Sunday = 7), the offset to the first Saturday on or after d is MOD(6 - WEEKDAY(d, 2) + 7, 7) days.

Adding SEQUENCE(N, 1, 0, 7) to that first Saturday generates N consecutive Saturdays in a single dynamic array, while adding +1 to any Saturday yields its paired Sunday.

Start DateWEEKDAY(d, 2)Offset MOD(6-w+7,7)1st Saturday4th Saturday (+21d)
2026-05-01 (Fri)51 day2026-05-022026-05-23
2026-05-02 (Sat)60 days2026-05-022026-05-23
2026-05-03 (Sun)76 days2026-05-092026-05-30

First Upcoming Saturday On or After Start Date B2

Formats the first Saturday on or after B2 as ISO yyyy-mm-dd.

=TEXT(B2 + MOD(6 - WEEKDAY(B2, 2) + 7, 7), "yyyy-mm-dd")

Nth Upcoming Saturday from Dynamic SEQUENCE

Generates B3 weekly Saturday serials via SEQUENCE and formats the last (B3-th) Saturday.

=IF(B3 < 1, "Count >= 1 Required", TEXT(INDEX(B2 + MOD(6 - WEEKDAY(B2, 2) + 7, 7) + SEQUENCE(B3, 1, 0, 7), B3), "yyyy-mm-dd"))

Try the example

Use the original values or change them to test your understanding.

Further reading