wie lasse ich mir das Datum aus einer bestimmten Zelle (B33) in (A13) als Kalenderwoche anzeigen?
Die Formel bzw. Funktion ist mir bekannt. Hätte das aber gerne über VBA gelöst.
Freue mich über eure Antworrten.
Sub test()
Dim zelle As Range
For Each zelle In Worksheets(1).Range("A:A").Cells
If IsDate(zelle.Value) = True Then
Worksheets(1).Cells(zelle.Row, 2).Value = WorksheetFunction.WeekNum(zelle.Value, 1) _
End If
Next zelle
End Sub
Sub KW()
[A13] = Application.WorksheetFunction.WeekNum([B33], 21)
End Sub
Um die Kalenderwoche aus einem Datum mit VBA zu ermitteln, kannst du die folgende Schritt-für-Schritt-Anleitung nutzen:
Öffne Excel und drücke ALT + F11
, um den VBA-Editor zu öffnen.
Klicke auf Einfügen
und wähle Modul
, um ein neues Modul zu erstellen.
Füge den folgenden Code in das Modul ein:
Sub KW()
[A13] = Application.WorksheetFunction.WeekNum([B33], 21)
End Sub
Schließe den VBA-Editor und kehre zu Excel zurück.
In Zelle B33
gib das Datum ein, für das du die Kalenderwoche ermitteln möchtest.
Führe das Makro KW
aus, um die Kalenderwoche in Zelle A13
anzuzeigen.
Fehler: Falsche Kalenderwoche angezeigt
21
in WeekNum
gibt die ISO-Kalenderwoche zurück.Fehler: Makro funktioniert nicht
Datei
> Optionen
> Sicherheitscenter
> Einstellungen für das Sicherheitscenter
und aktiviere die Makros.Neben der Verwendung von VBA zur Ermittlung der Kalenderwoche gibt es auch andere Methoden:
Formel in Excel:
Du kannst die Funktion =KALENDERWOCHE(B33; 21)
direkt in eine Zelle eingeben, um die Kalenderwoche zu berechnen.
Excel Funktionen:
Verwende DatePart("ww", [B33], vbMonday, vbFirstFourDays)
, um die Kalenderwoche zu erhalten.
Beispiel 1: Ermitteln der aktuellen Kalenderwoche
Sub AktuelleKW()
MsgBox "Die aktuelle Kalenderwoche ist: " & Application.WorksheetFunction.WeekNum(Date, 21)
End Sub
Beispiel 2: Datum aus Kalenderwoche ermitteln
Sub DatumAusKW()
Dim kw As Integer
Dim jahr As Integer
kw = InputBox("Gib die Kalenderwoche ein:")
jahr = InputBox("Gib das Jahr ein:")
MsgBox "Das Datum der ersten Woche ist: " & DateAdd("ww", kw - 1, DateSerial(jahr, 1, 1))
End Sub
application.worksheetfunction.weeknum
arbeitest, achte darauf, dass du den richtigen Modus (1 oder 21) wählst, um die gewünschte Kalenderwoche zu erhalten.vba aktuelle kalenderwoche
direkt in deinen VBA-Code integrieren, um dynamische Berichte zu erstellen.1. Wie kann ich die Kalenderwoche für ein Datum in einer anderen Zelle ermitteln?
Um die Kalenderwoche für ein Datum in einer anderen Zelle (z.B. C5
) zu ermitteln, ändere den Code zu:
[A13] = Application.WorksheetFunction.WeekNum([C5], 21)
2. Welche Excel-Version benötige ich? Diese VBA-Techniken funktionieren in den meisten modernen Excel-Versionen, einschließlich Excel 2016 und Excel 2019. Achte darauf, dass die VBA-Funktionalität aktiviert ist.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen