Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Kalenderwoche anhand Datum ermitteln

Forumthread: Kalenderwoche anhand Datum ermitteln

Kalenderwoche anhand Datum ermitteln
02.04.2003 16:19:52
Andi_H
Hi zusammen,

ich habe folgendes Problem: Ich habe in meinem sheet in a1 ein Datum stehen welches sich wöchentlich ändert. Ich möchte herausfinden in welcher Kalenderwoche dieses Datum fällt (Datum = ein Tag zwischen Montag und Freitag, Wochenende kommt nicht vor, Tag ist aber jede Woche anders)
Wer kann mir hierbei helfen, Lösung in VBA würde ich bevorzugen, aber Formel ist besser als keine Lösung.

Vielen Dank!!!
gruß Andi

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Kalenderwoche anhand Datum ermitteln
02.04.2003 16:29:03
Lutz

Hallo Andi,

im AddIn-Manager Analysefunktion anhäkseln und

="KW "& KALENDERWOCHE(A1;2)

Gruß
Lutz

Vielen Dank
02.04.2003 16:31:08
Andi_H

hi Lutz,

bestens, dankeschön

gruß
andi

VBA-Version (DIN)
02.04.2003 16:42:49
Lutz

Function DINKwoche(Datum)
'Diese Funktion stammt von Christoph Kremer.
  Dim tmp
  tmp = DateSerial(Year(Datum + (8 - Weekday(Datum)) Mod 7 - 3), 1, 1)
  DINKwoche = ((Datum - tmp - 3 + (Weekday(tmp) + 1) Mod 7)) \ 7 + 1
End Function

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Tag As Date
    Dim Kw As Integer
    Tag = Range("A1")
    Range("B1") = DINKwoche(Tag)
End Sub

     Code eingefügt mit Syntaxhighlighter 1.14



Anzeige
Fehler!
03.04.2003 06:45:49
snickers

Hi Andi, Hi Lutz

versuch das mal mit 01.01.2000
der deutsche kalender sagt: kw 52
excel behauptet kw 01

daher: =KÜRZEN((A1-WOCHENTAG(A1;2)-DATUM(JAHR(A1+4-WOCHENTAG(A1;2));1;-10))/7)&". KW"

snickers

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Kalenderwoche anhand Datum ermitteln


Schritt-für-Schritt-Anleitung

Um die Kalenderwoche aus einem Datum in Excel zu ermitteln, kannst Du sowohl eine Formel als auch VBA nutzen. Hier sind die Schritte für beide Methoden:

Mit einer Excel-Formel:

  1. Stelle sicher, dass das Datum in der Zelle A1 steht.
  2. Gebe in eine andere Zelle die folgende Formel ein:
    ="KW "&KALENDERWOCHE(A1;2)
  3. Diese Formel gibt Dir die Kalenderwoche basierend auf dem Datum in A1 zurück.

Mit VBA:

  1. Öffne den VBA-Editor (Alt + F11).
  2. Füge ein neues Modul ein (Rechtsklick auf „VBAProject“, dann „Modul einfügen“).
  3. Kopiere den folgenden Code in das Modul:

    Function DINKwoche(Datum As Date) As Integer
       Dim tmp As Date
       tmp = DateSerial(Year(Datum + (8 - Weekday(Datum)) Mod 7 - 3), 1, 1)
       DINKwoche = ((Datum - tmp - 3 + (Weekday(tmp) + 1) Mod 7) \ 7 + 1)
    End Function
    
    Private Sub Worksheet_Change(ByVal Target As Range)
       Dim Tag As Date
       Dim Kw As Integer
       Tag = Range("A1").Value
       Range("B1") = DINKwoche(Tag)
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.
  5. Wenn Du nun das Datum in A1 änderst, wird die Kalenderwoche automatisch in B1 aktualisiert.

Häufige Fehler und Lösungen

Fehler: KW 01 statt KW 52
Wenn Du ein Datum wie den 01.01.2000 eingibst und Excel KW 01 anzeigt, während der deutsche Kalender KW 52 angibt, kannst Du die folgende Formel verwenden:

=KÜRZEN((A1-WOCHENTAG(A1;2)-DATUM(JAHR(A1+4-WOCHENTAG(A1;2));1;-10))/7)&". KW"

Diese Formel berechnet die korrekte Kalenderwoche.

Fehler: #NAME?
Wenn Du die Formel in Excel eingibst und die Fehlermeldung #NAME? erhältst, stelle sicher, dass die Analyse-Funktionen aktiviert sind.


Alternative Methoden

Neben der oben genannten Methode kannst Du auch die Funktion „WEEKNUM“ verwenden, um die Woche basierend auf einem Datum zu ermitteln. Diese Funktion ist jedoch standardmäßig nicht auf die ISO-Woche ausgerichtet.

Ein Beispiel für die Verwendung von „WEEKNUM“:

=WEEKNUM(A1;21)

Hierbei steht 21 für die ISO-Woche, was für die meisten europäischen Länder die korrekte Methode ist.


Praktische Beispiele

  1. Datum in 8 Wochen: Um das Datum in 8 Wochen zu finden und die Kalenderwoche zu ermitteln, kannst Du folgende Formel verwenden:

    =KALENDERWOCHE(A1 + 56; 2)
  2. Aktuelle Kalenderwoche: Wenn Du die aktuelle Kalenderwoche herausfinden möchtest, kannst Du einfach die Formel =KALENDERWOCHE(HEUTE(); 2) verwenden.

  3. Kalenderwoche letzte Woche Freitag: Um den Freitag der letzten Woche zu ermitteln, kannst Du folgendes Datum verwenden:

    =KALENDERWOCHE(HEUTE()-WEEKDAY(HEUTE();2)-2; 2)

Tipps für Profis

  • Nutze die VBA-Funktion, um die Kalenderwoche automatisiert zu berechnen, ohne manuelle Eingaben.
  • Setze bedingte Formatierungen ein, um bestimmte Kalenderwochen hervorzuheben.
  • Kombiniere die Kalenderwochenberechnung mit anderen Funktionen, um umfassende Berichte zu erstellen.

FAQ: Häufige Fragen

1. Wie kann ich die KW eines beliebigen Datums in Excel berechnen?
Nutze die Funktion KALENDERWOCHE in Verbindung mit dem Datum, das Du berechnen möchtest.

2. Woher weiß ich, welche KW ich habe?
Verwende die Formel =KALENDERWOCHE(HEUTE(); 2) für die aktuelle Woche oder setze das gewünschte Datum in die Funktion ein.

3. Wie kann ich die Kalenderwoche in VBA ausgeben?
Nutze die zuvor erwähnte VBA-Funktion DINKwoche, um die Kalenderwoche aus einem Datum zu ermitteln und in einer Zelle anzuzeigen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige