Microsoft Excel

Das Portal zum Thema Excel-Formeln

Gruppe: Datum/Zeit

Beitrag: alle von einem Monat tangierten Kalenderwochen auflisten *

Aufgabe
Von einem beliebigem Datum sollen alle Kalenderwochen für den betreffenden Monat aufgelistet werden.

       A               B               C       
1 07.12.2001  KW 48  31.12.2001  
2   KW 49   
3   KW 50   
4   KW 51   
5   KW 52   
6   KW 1   

Lösung
Das Datum steht in A1.

in B1 steht:
=KÜRZEN((DATUM(JAHR(A1);MONAT(A1);1)-WOCHENTAG(DATUM(JAHR(A1);MONAT(A1);1);2)-DATUM(JAHR(DATUM(JAHR(A1);MONAT(A1);1)+4-WOCHENTAG(DATUM(JAHR(A1);MONAT(A1);1);2));1;-10))/7)

verkürzt (Alexander Wolff):
=KÜRZEN((A1-TAG(A1)-REST(A1-TAG(A1)-1;7)-DATUM(JAHR(A1-TAG(A1)+4-REST(A1-TAG(A1)-1;7));1;-10))/7)

in B2 steht:
=WENN(UND(MONAT(A1)=1;B1>50);1;B1+1)

in B3 steht:
=B2+1

in B4 steht:
=B3+1

in B5 steht:
=WENN(B4=52;KÜRZEN((C1-WOCHENTAG(C1;2)-DATUM(JAHR(C1+4-WOCHENTAG(C1;2));1;-10))/7);WENN(KÜRZEN((C1-WOCHENTAG(C1;2)-DATUM(JAHR(C1+4-WOCHENTAG(C1;2));1;-10))/7)<>B4;B4+1;""))

in B6 steht:
=WENN(B5="";"";WENN(KÜRZEN((C1-WOCHENTAG(C1;2)-DATUM(JAHR(C1+4-WOCHENTAG(C1;2));1;-10))/7)<>B5;KÜRZEN((C1-WOCHENTAG(C1;2)-DATUM(JAHR(C1+4-WOCHENTAG(C1;2));1;-10))/7);""))

in C1 (Hilfszelle) steht:
=DATUM(JAHR(A1);MONAT(A1)+1;0)

Spalte B benutzerdefiniert formatieren mit "KW "* 0 (Formel Nr. 161/Zahlenformate)

Ergänzung vom 22.01.2007 (Alexander Wolff)
Interessiert nur die Anzahl der angerissenen Kalenderwochen:
=WAHL((DATUM(JAHR(A1);MONAT(A1)+1;1)-A1+TAG(A1)-16+REST(A1-TAG(A1)-1;7))/7;4;5;6)

etwas kürzer (Christian Hapke):
=WAHL((TAG(DATUM(JAHR(A1);MONAT(A1)+1;))-15+REST(A1-TAG(A1)-1;7))/7;4;5;6)

Erläuterung
Die Hilfszelle C1 ist eigentlich unnötig; - ersetzt man aber C1 in den Zellen B5 und B6 durch die Formel, werden das absolute Ungetüme.