Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Benutzerdefinierter Filter VBA

Benutzerdefinierter Filter VBA
11.11.2020 09:29:42
Jim
Hallo Zusammen,
ich würde gerne per VBA einen "Benutzerdefinierten Filter" verwenden, der aus einer Liste Einträge filtert, die in den vergangenen 5 Stunden geändert wurden.
Leider werden nach Aufrufen des Makros alle Einträge ausgeblendet, erst wenn ich auf das Filtersymbol klicke, den "Benutzerdefinierten Filter" aufrufe und mit "OK" bestätige, werden die Einträge korrekt angezeigt. Beigefügt ist eine Beispieldatei, die das Problem verdeutlicht.
Vielen Dank schon mal im Voraus für Eure Tipps.
Jim
https://www.herber.de/bbs/user/141459.xlsm
  • Public Sub Datumfilter()
    Dim Datum As Date
    Datum = Now
    Rows("1:1").AutoFilter Field:=3, Criteria1:=">" & DateAdd("h", -5, Datum), Operator:=xlAnd,  _
    Criteria2:="

  • Anzeige

    5
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Benutzerdefinierter Filter VBA
    11.11.2020 10:00:17
    Nepumuk
    Hallo Jim,
    teste mal:
    Public Sub Datumfilter()
        
        Dim Datum As Date
        
        Datum = Now
        
        Rows(1).AutoFilter Field:=3, Criteria1:=">" & Replace(CDbl(DateAdd("h", -5, Datum)), ",", "."), _
            Operator:=xlAnd, Criteria2:="<" & Replace(CDbl(Datum), ",", ".")
        
    End Sub

    Gruß
    Nepumuk
    Anzeige
    AW: Benutzerdefinierter Filter VBA
    11.11.2020 10:43:29
    Jim
    Hallo Nepomuk,
    vielen Dank für Deine Antwort. Der Code funktioniert wie gewünscht.
    Könntest Du mir bitte noch eine kurze Erklärung dazu schreiben? Mir ist leider nicht bewusst, an welcher Stelle ich Komma für Punkt eingesetzt habe?
    Vielen Dank und Gruß
    Jim
    AW: Benutzerdefinierter Filter VBA
    11.11.2020 10:51:02
    Nepumuk
    Hallo Jim,
    Ein Datum ist eine Ganzzahl, für Heute z.B. 44146 eine Uhrzeit sin Nachkommazahlen, für 11:00:00 Uhr ist das 0,458333333333333. Also für Heute 11:00:00 ist das 44146,458333333333333 und dieses Komma muss durch einen Punkt ersetzt werden.
    Gruß
    Nepumuk
    Anzeige
    AW: Benutzerdefinierter Filter VBA
    11.11.2020 10:53:25
    Daniel
    Hi
    der Autofilter braucht Zahlen oder Datumswerte im Amerikanischen Format.
    dh bei Zahlen muss der Punkt als Dezimalzeichen verwendet werden anstelle des Kommas
    Datumswerte müssten im Format Monat/Tag/Jahr oder Jahr-Monat-Tag geschrieben sein um als solche erkannt zu werden.
    Datumswerte können auch als Zahl geschrieben sein (jeder Tag +1 ab dem 1.1.1900, Nachkommastellen bilden die Uhrzeit
    Gruß Daniel
    Anzeige
    AW: Benutzerdefinierter Filter VBA
    11.11.2020 11:00:09
    Jim
    Hallo Nepomuk und Daniel,
    vielen Dank für die Erklärung.
    Gruß
    Jim
    ;

    Forumthreads zu verwandten Themen

    Anzeige
    Anzeige
    Anzeige
    Anzeige
    Entdecke relevante Threads

    Schau dir verwandte Threads basierend auf dem aktuellen Thema an

    Alle relevanten Threads mit Inhaltsvorschau entdecken
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Entdecke mehr
    Finde genau, was du suchst

    Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

    Suche nach den besten Antworten
    Unsere beliebtesten Threads

    Entdecke unsere meistgeklickten Beiträge in der Google Suche

    Top 100 Threads jetzt ansehen
    Anzeige