Excelliste nach KW filtern
Hallo zusammen,
ich habe eine Excelliste in der ich die Einträge nach Kalenderwoche individuell filtern möchte.
--> Dropdown mit Auswahl der KW soll alle Datumseinträge der ausgewählten KW filtern.
Leider habe ich keine Idee wie ich dies am unkompliziertesten umsetzen kann.
Die Ermittlung der aktuellen KW habe ich in einem anderem Makro wie folgt gelöst:
Danke und Gruß
ich habe eine Excelliste in der ich die Einträge nach Kalenderwoche individuell filtern möchte.
--> Dropdown mit Auswahl der KW soll alle Datumseinträge der ausgewählten KW filtern.
Leider habe ich keine Idee wie ich dies am unkompliziertesten umsetzen kann.
Die Ermittlung der aktuellen KW habe ich in einem anderem Makro wie folgt gelöst:
Option Explicit
Sub checkKW()
Dim KWact As Integer
'aktuelle KW errechnen
KWact = KW_DIN(Date)
End Sub
Function KW_DIN(Datum As Date) As Integer
'Gibt KW des entsprechenden Datums zurück
'IN: Datum
'OUT: KW
KW_DIN = DatePart("ww", Datum, vbMonday, vbFirstFourDays)
End Function
Danke und Gruß
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 300320
Url: https://administrator.de/forum/excelliste-nach-kw-filtern-300320.html
Ausgedruckt am: 19.05.2025 um 06:05 Uhr
3 Kommentare
Neuester Kommentar
Moinsen,
wenn Dir mit der Gruppierung in einer Pivot Tabelle gedient ist,
hab ich hier ne gute Doku was zu tun ist:
http://www.online-excel.de/excel/singsel.php?f=131
Das ist (leider ohne Dropdownauswahl) einfach und
ein Excel Standard, den jeder Excelkönner versteht.
Cheerz, RF
wenn Dir mit der Gruppierung in einer Pivot Tabelle gedient ist,
hab ich hier ne gute Doku was zu tun ist:
http://www.online-excel.de/excel/singsel.php?f=131
Das ist (leider ohne Dropdownauswahl) einfach und
ein Excel Standard, den jeder Excelkönner versteht.
Cheerz, RF

Moin.
Falls du das nicht willst hilft dir sicher diese Funktion weiter die zu einer Kalenderwoche das Datum des Montags dieser ermittelt:
Damit hast du schon die halbe Miete. Das Enddatum für den Filter ermittelst du dann einfach aus dem ermittelten Datum + 6 Tage.
Diese Datum-Werte kannst du dann für den Auto-Filter deiner Tabelle verwenden:
Gruß jodel32
Zitat von @Sprite:
Ich würde eine Zusätzliche Spalte einfügen und in diese mit z.B. =KALENDERWOCHE(A1;21) auf das Datum verweisen.
Die Zusätzliche Spalte lässt sich dann filtern.
Würde ich der Einfachheit halber auch so machen, die Spalte lässt sich ja auch ausblenden.Ich würde eine Zusätzliche Spalte einfügen und in diese mit z.B. =KALENDERWOCHE(A1;21) auf das Datum verweisen.
Die Zusätzliche Spalte lässt sich dann filtern.
Falls du das nicht willst hilft dir sicher diese Funktion weiter die zu einer Kalenderwoche das Datum des Montags dieser ermittelt:
Function GetMondayDateOfKW(kalenderwoche As Integer, jahr As Integer) As Date
GetMondayDateOfKW = DateSerial(jahr, 1, (7 * kalenderwoche) - 3 - (Weekday(DateSerial(jahr, 0, 0), vbMonday) - 1))
End Function
kw = 1
dStart = GetMondayDateOfKW(kw, Year(Date))
dEnd = DateAdd("d",6,dStart)
ActiveSheet.ListObjects("DeineTabelle").Range.AutoFilter Field:=1, Criteria1:=">=" & Format(dStart, "yyyy-mm-dd"), Operator:=xlAnd, Criteria2:="<=" & Format(dEnd, "yyyy-mm-dd")