Clever-Excel-Forum

Normale Version: Benutzerdefinierten Datumsfilter in Makro einfügen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo liebe Excel-Community,

ich habe gerade versucht ein Marko zu schreiben, scheitere jetzt allerdings an einem bestimmten Datumsfilter.

Ich möchte alle Zeilen anzeigen lassen, deren Datum NICHT der vorherigen Woche entsprechen. D.h. alle Zellen wo das Datum früher als letzte Woche war, aber auch alle Daten die später als letzte Woche waren. Die Daten sollen dann anschließend gelöscht werden (das is kein Problem). Mir geht es einzig und allein darum, wie ich den Datumsfilter eingeben muss. Im konkreten Beispiel (Datei im Anhang) soll also alles außer KW4 und leere Zeilen gefilter und gelöscht werden.

Ich brauch nicht unbedingt Hilfe beim Makro, aber eher Hilfe wie ich so einen benutzerdefinierten Filter bauen kann. 

Vielen Dank!
Hi,

das mit dem Anhang hat nicht geklappt. Ich nehme an, du hast vergessen, rechts den Button "Attachment hinzufügen" anzuklicken.
Danke für den Hinweis Smile
Hi,

du hast drei Spalten mit Zeiten. Welche soll denn gelten? Im Beispiel habe ich die Spalte "eröffnet" genommen und in einer Hilfsspalte die KW anzeigen lassen. Hier filterst du alles außer KW 4/2019. Du kannst dir die Filter über Daten/Filtern setzen lassen oder die wandelst deine Liste in eine intelligente Tabelle um.

Arbeitsblatt mit dem Namen 'Sheet 1'
ABCD
1EröffnetAnfangEndeKW
221.03.2018 16:25:2011.12.2018 14:00:0011.12.2018 11:00:0012 / 2018
313.09.2018 10:38:1514.12.2018 20:02:0014.12.2018 08:00:0037 / 2018
413.09.2018 13:49:0903.12.2018 22:00:0003.12.2018 23:59:0037 / 2018
528.09.2018 17:11:3629.11.2018 12:00:0030.12.2018 00:00:0039 / 2018
611.10.2018 08:26:5307.12.2018 10:00:0007.12.2018 00:00:0041 / 2018
716.10.2018 10:17:5522.11.2018 23:00:0030.11.2018 00:00:0042 / 2018
819.10.2018 10:30:4727.02.2019 10:00:0042 / 2018

ZelleFormel
D2=ISOKALENDERWOCHE(A2)&" / "&JAHR(A2)
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg
Hi,

in dem Fall war es egal welche Spalte den Filter hat. Smile

Das Problem ist, ich muss wöchentlich einen Report erzeugen und mir dabei lediglich die letzte Woche anschauen. Allerdings muss ich beim  Erzeugen des Reports einen größeren Zeitraum eingeben, damit alle Variablen abgedeckt sind.

Ich zieh mir also jeden Montag einen Report, gebe einen Zeitraum von vier Monaten ein und setze dann verschiedene Filter. Dabei muss ich u.a. alle Daten löschen, die nicht der gesuchten Woche entsprechen. Und hier weiß ich leider nicht wie ich den Filter setzen soll. Dein Vorschlag mit der Hilfsspalte und der jeweiligen Kalenderwoche funktioniert nicht, da sich die Kalenderwoche ja jedes Mal ändert oder versteh ich da etwas falsch?

Danke für Deine Hilfe!
Hallöchen,

nimm beim Datumsfilter
ist vor dem --> Datum des Montag der gewünschten KW
oder
ist nach dem --> Datum des Sonntag der gewünschten KW


Du kannst den Code dafür aufzeichnen, musst aber das Datum noch umwandeln. Der aufgezeichnete Code funktioniert leider nicht 100%ig mit dem Datumsformat.

aufgezeichnet z.B.
ActiveSheet.Range("$A$1:$A$22").AutoFilter Field:=1, Criteria1:= _
"<10.01.2019", Operator:=xlOr, Criteria2:=">20.01.2019"

geändert:

Code:
Sub Makro1()
'
' Makro1 Makro
'
Dim Datum1 As Date, Datum2 As Date
Datum1 = "10.01.2019"
Datum2 = "20.01.2019"
'
    ActiveSheet.Range("$A$1:$A$22").AutoFilter Field:=1, Criteria1:= _
        "<" & CDbl(Datum1), Operator:=xlOr, Criteria2:=">" & CDbl(Datum2)
End Sub

Du musst dann natürlich noch die zur gewünschten KW passenden Daten berechnen, ich habe hier fest zwei Tage eingetragen.