Autofilter als Makro für bestimmtes Datum

Moderator: ModerationP

Autofilter als Makro für bestimmtes Datum

Beitragvon frenhof » 23. Sep 2021, 13:17

Hallo,

ich muss eine Patientenliste nach einem bestimmten Entlassungsdatum filtern. Und zwar soll diese Liste immer für den kommenden Werktag gefiltert werden.
Ich habe bereits eine Hilfszelle (A4), die das Datum im Format dd.mm.yyyy des nächsten Werktages liefert.
Nun würde ich gerne einen Autofilter über die Tabelle laufen lassen, die alle Patienten mit dem Entlassungsdatum (Spalte F) = A4 heruasfiltert.
Da diese Liste von vielen Leuten im Betrieb genutzt wird, die sehr wenig bis keine Excelerfahrung haben, wollte ich gerne ein Makro programmieren, welches mit einem Short-Cut aufgerufen werden kann.
Ich habe diverse Versuche unternommen, komme aber nicht mehr weiter.
Weiss jemand in diesem Forum eventuell eine Lösung für mich?
Vielen Dank und viele Grüße
Felix
frenhof
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 3
Registriert: 23. Sep 2021, 13:10

Re: Autofilter als Makro für bestimmtes Datum

Beitragvon HKindler » 23. Sep 2021, 13:42

Hi,

wenn du ein aktuelles Excel hast, kannst du die Funktion FILTER() nutzen. Dürfte das einfachste sein.

Ansonsten ist der Autofilter in Verbindung mit VBA und Datum so eine Sache für sich.
Versuche es einmal, wenn du das Datum zuerst in ein Integer verwandelst und dann diesen Wert als Kriterium verwendest.
Oder du versuchst es einmal mit der englischen Schreibweise, also "09/24/2021" statt "24.09.2021" bzw. Format(Range("A1"),"MM/DD/YYYY") falls dein Datum in A1 steht.
Gruß,
Helmut

----------------------------
Windows 10 Enterprise (64 Bit) / Office 365 ProPlus (32 Bit)
Benutzeravatar
HKindler
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6308
Registriert: 04. Jul 2013, 09:02
Wohnort: Schwarzwald

Re: Autofilter als Makro für bestimmtes Datum

Beitragvon frenhof » 23. Sep 2021, 13:59

Hallo,

vielen Dank für die schnelle Antwort.
Ich verstehe nicht, wie ich die Funktion Filter() in VB für ein Makro nutzen kann.
Die Tabelle hat Autofilter, die wir auch für andere Abfragen benötigen.
Gibt es nicht eine VB-Programmierung die das Problem lösen kann? So etwas wie

Selection.AutoFilter Field:=6, Criteria1:=Range("A4").Value

Bitte lacht mich jetzt nicht aus. ich bin sehr verzweifelt und habe inzwischen viele viele Tage im Internet nach Lösungen gesucht und bin z.B. auf die o.g. Kommandozeile gestossen, die aber leider nicht funktionert.

Ich habe Excel im Office 365 Paket.

Vielen Dank und viele Grüße

Felix!
frenhof
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 3
Registriert: 23. Sep 2021, 13:10

Re: Autofilter als Makro für bestimmtes Datum

Beitragvon Nepumuk » 23. Sep 2021, 14:30

Hallo,

versuch es so:

Selection.AutoFilter Field:=6, Criteria1:=CLng(Range("A4").Value)
De fontibus non est disputandum

Gruß
Nepumuk 8-)
Benutzeravatar
Nepumuk
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 15214
Registriert: 10. Aug 2004, 08:40
Wohnort: Regensburg

Re: Autofilter als Makro für bestimmtes Datum

Beitragvon Flotter Feger » 23. Sep 2021, 14:38

Hallo,

ein Bisschen zu einfach gedacht ...
Code: Alles auswählen
Dim Filtergroup As Boolean

Filtergroup = ActiveWindow.AutoFilterDateGrouping
ActiveWindow.AutoFilterDateGrouping = False

'*** Filterbereich anpassen ***
Worksheets("Tabelle1").Range("A5:F1000").AutoFilter Field:=6, Criteria1:= _
        "=" & Range("A4"), Operator:=xlAnd

ActiveWindow.AutoFilterDateGrouping = Filtergroup

Sabina
Benutzeravatar
Flotter Feger
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 3259
Registriert: 24. Okt 2016, 16:40

Re: Autofilter als Makro für bestimmtes Datum

Beitragvon frenhof » 24. Sep 2021, 10:39

Hallo,

Sabina vielen vielen Dank!!! Das war die Lösung! hat uns sehr sehr geholfen.
Vielen Dank auch an alle anderen, die mich mit Lösungen versorgt haben!!!!!

Viele Grüße
Felix!
frenhof
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 3
Registriert: 23. Sep 2021, 13:10


Zurück zu Excel Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: DaPeif und 21 Gäste