Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1708to1712
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datum-Filter in anderem Blatt mit VBA

Datum-Filter in anderem Blatt mit VBA
09.09.2019 08:59:10
Werner
Hallo Forum,
ich möchte aus einer Liste solche Einträge ausfiltern, die ein Datum kleiner als das vorgegebene Datum haben.
Mein Problem: ich möchte, um den Filter zu setzen, nicht auf das entsprechende Blatt wechseln, sondern in meinem "Basisblatt" verbleiben.
In meinem beigefügten Beispiel sind im Makro beide Versionen enthalten.
https://www.herber.de/bbs/user/131917.xlsm
Beim ersten Befehl "Worksheets(VerzTab).Range(...." erhalte ich den Laufzeitfehler 1004. Wenn ich diesen Befehl überspringe, in das Blatt "Verztab" wechsle und dort den Filter mit "Range(...." arbeite, läuft es fehlerfrei.
Wie kann ich das Problem lösen, ohne das Basisblatt zu verlassen?
Gruß
Werner

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum-Filter in anderem Blatt mit VBA
09.09.2019 09:14:23
Nepumuk
Hallo Werner,
es fehlen die Bezugspunkt vor den Cells-Eigenschaften.
Aber das genügt:
Sub Filtern()
Const VerzTab As String = "Namen"
Dim DFilter As String
DFilter = "

Gruß
Nepumuk
AW: Datum-Filter in anderem Blatt mit VBA
09.09.2019 09:23:56
Nepumuk
Ooooooooops,
so ist es sauber programmiert:
DFilter = "
Gruß
Nepumuk
AW: Datum-Filter in anderem Blatt mit VBA
09.09.2019 10:48:35
Werner
Schon wieder Nepumuk?
Jetzt musste ich erst einmal in meinem Kochbuch "Excel programmieren" aus dem Jahr 2002 und bei Google suchen, was "CSTr" macht.
Schlauer hat mich das nicht gemacht. In der Microsoft-Online-Dokumentation finde ich folgenden Code:
Dim MyDouble, MyString
MyDouble = 437.324 ' MyDouble is a Double.
MyString = CStr(MyDouble) ' MyString contains "437.324"

Mit "MyString = MyDouble" kommt aber das gleiche Ergebnis heraus.
Das versteht nur ein Fachman, ..... und der Laie staunt.
Ich werden den Vorschlag übernehmen, auch wenn ich ihn nicht verstehe. Schädlich ist es anscheinend nicht.
Danke und Gruß
Werner
Anzeige
AW: Datum-Filter in anderem Blatt mit VBA
09.09.2019 10:30:48
Werner
Hallo Nepumuk,
Danke für Deine Antwort. Es funktioniert.
Mir stellt sich aber die Frage, warum es - nach dem Wechsel auf das andere Blatt - ohne Row aber dafür mit Range funktioniert. Basis für meinen Ansatz war das, was der Recorder aufgezeichnet hat.
Gruß
Werner
AW: Datum-Filter in anderem Blatt mit VBA
09.09.2019 11:44:47
Nepumuk
Hallo Werner,
den zu filternden Range musst du nur angeben wenn sich in der Liste Leerzeilen befinden. Sind keine Leeren drin genügt die Angabe der Zeile. Excel nimmt sich dann den darunter liegenden Bereich automatisch.
Gruß
Nepumuk
AW: Datum-Filter in anderem Blatt mit VBA
09.09.2019 17:17:04
Luschi
Hallo Nepumuk und Werner,
der Vba-Datumsfilter ist schon ein Buch mit 7 Siegeln. Seit Jahrzehnten muß ich meine Excel-Schatzkiste bei jeder neuen Exce-Version korrigieren bzw. hinzufügen.
Nepumuks Lösung klappt bei mir weder in E2013 Prof+ noch 2019 Prof+ - es werden bei:
- ist Cells(1, 1) als Text formatiert - irgendwelche Zellen gefilter (auch Daten aus 1947)
- ist Cells(1, 1) als Datum formatiert - alle Zeilen im Filter ausgeblendet
Mein funktionierender Code sieht in beiden genannten Versionen so aus:

Sub Filtern_Luschi()
Const VerzTab As String = "Namen"
Dim DFilter As String
DFilter = "
Gruß von Luschi
aus klein-Paris
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige