Wie berechnet man den nächsten Montag nach einem bestimmten Datum?


11

Ich suche nach einer Formel, die einen Zellenwert anzeigen kann, der ein Datum enthält, und den ersten Montag zurückgibt, der nach diesem Datum auftritt.

Beispiele (Format MM / TT / JJJJ):

10/22/2013 (Tuesday) would return 10/28/2013 (Monday)
10/28/2013 (Monday)  would return 10/28/2013 (Monday)

Antworten:


15

Lassen Sie B2die Zelle mit dem Datum.

=IF(WEEKDAY(B2)=2, B2, IF(WEEKDAY(B2)=1,B2+1, B2+9-WEEKDAY(B2)))

oder

=IF(WEEKDAY(B2,3)=0, B2, B2+7-WEEKDAY(B2,3))

3

Eine etwas elegantere Lösung besteht darin, jede Eingabe um die richtige Anzahl von Tagen zu verschieben.

=B2+MOD(9-WEEKDAY(B2),7)

Wenn Sie klug sein möchten, wird WOCHENTAG nicht benötigt, da wir wissen, dass die Epoche auf einen Samstag gefallen ist (berechnen Sie WOCHENTAG (0), um dies zu überprüfen).

=B2+MOD(9-B2,7)

1

Eine generische und elegante Lösung, die für jeden Wochentag (N-Tag) funktioniert:

Zelle B2: Datum, an dem auf den nächsten N-Tag der Woche gewechselt werden soll; Zelle B3: nächster N-Tag der Woche: Mo = 1, Di = 2, ...;

=B2+MOD(B3-WEEKDAY(B2,2),7)

Für einen bestimmten Wochentag, in diesem Fall Montag (Tag = 1), kann die Formel "fest codiert" werden

=B2+MOD(1-WEEKDAY(B2,2),7)

Beachten Sie, dass durch Setzen des 2. Parameters des Wochentags auf '2' der Wochentag zurückgegeben wird, weekday(B2,2)der mit dem in der obigen Formel (Zelle B1) verwendeten gewünschten N-Tag übereinstimmt, dh Mon = 1, Di = 2, ...


0

Francks Lösung ist perfekt für Montag, funktioniert aber an anderen Tagen nicht (ich habe nur die 2. Formel getestet). Die folgende Formel funktioniert jedoch auch für andere Tage. B2 sei das Datum und B3 der Tag (B3 ist von 1 bis 7, wobei Sonntag 1 ist):

=IF(WEEKDAY(B2,1)<B3, B2+B3-WEEKDAY(B2,1), B2+B3+7-WEEKDAY(B2,1))

Hinweis: Dies wird am nächsten Tag angezeigt, auch wenn B2 der angeforderte Tag ist. Die nächste Formel wird jedoch heute zurückgegeben, wenn B2 der gewünschte Tag ist:

=IF(WEEKDAY(B2,1)<=B3, B2+B3-WEEKDAY(B2,1), B2+B3+7-WEEKDAY(B2,1))
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.