Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1636to1640
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

AdvancedFilter in VBA

AdvancedFilter in VBA
08.08.2018 10:10:22
Mia
Hallo zusammen,
ich lese mich seit 2 Tagen durch das Internet und bekomme es noch nicht hin mit dem AdvancedFilter. Vielleicht kann mir hier jemand helfen.
Mein Problem:
Ich habe etwa 20 Listen mit jeweils etwa 10.000 Zeilen und benötige davon jeweils etwa 10 Einträge, das sind jedesmal die gleichen. Für den Anfang versuche ich aus einer Liste die 10 benötigten Zeilen auszulesen. Wenn das klappt, kann ich es ausweiten auf alle.
In meiner Datei "Test" habe ich drei Tabellenblätter: "Suchwerte", "Daten" und "Ergebnisse".
Suchwerte enthält genau die Liste mit den 10 gesuchten Variablennamen (A1:A10)
Daten enthält die große Tabelle mit 6 Spalten und 10.000 Zeilen. In Spalte D stehen die Variablennamen und in Spalte F die Werte dazu. Den Rest brauche ich nicht, falls es daran scheitert kann ich die überzähligen Spalten löschen.
In Ergebnisse sollen dann die 10 Variablen und daneben die zugehörigen 10 Werte stehen.
Wenn das nur erstmal funktioniert, will ich es verfeinern, mit benannten Bereichen anstatt fixer Zellbezeichnungen.
Das hab ich probiert:

Sub Daten_suchen()
Sheets("Daten").Range("D1:F10000").AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=Sheets("Suchwerte").Range("A1:A10"), _
CopyToRange:=Sheets("Ergebnis").Range("A1:C10"), _
Unique:=False
End Sub

Ergebnis ist, dass in meinem Blatt "Ergebnis" nur in A1:C1 die Spaltenüberschriften aus "Daten" stehen.
Was mache ich falsch? Wie mache ich es richtig?
Vielen Dank schon mal für eure Hilfe,
Mia.

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

Betreff
Datum
Anwender
Anzeige
AW: Name? Beispiel?
08.08.2018 10:54:29
Fennek
Hallo Mia,
aus dem Gedächtnis: Die Spalte der Kriterien muss den Variablen-Namen beinhalten.
Du verstehts, dass ich kein Beispiel selbst zusammenbasteln möchte, könntest du eine möglichst kleine Beispieldatei hochladen?
mfg
AW: Spaltenkopf
08.08.2018 14:01:31
Fennek
Hallo,
wenn im Blatt "Suchwerte" in A1 der Spaltenkopf, ab A2 die Suchwerte stehen, wird es klappen.
Im Code sind die Ranges fest eingetragen, dies sollte noch flexibler gemacht werden:
Anstell
.Range("D1:F29")
dann
.Cells(1,1).currentregion
oder den Bereich vorher bestimmen und einer Variablen zuweisen
set rng = .Range("D1:F29")
Ebenso reicht bei "copTo" einfach "Range("A1")
mfg
Anzeige
AW: Spaltenkopf
08.08.2018 15:04:09
Mia
Ja, mit dem Spaltenkopf geht das. Vielen Dank!
Morgen mache ich mich dann daran, das ganze schöner und flexibler zu machen, mit benanntem Bereich u.ä. Die festen Ranges wollte ich so nicht, nur für die erste Version, damit ich weiß wie es geht.
Wenn ich damit nicht weiterkomme, frage ich nochmal nach, aber bis hierhin schon mal danke!
LG, Mia
AW: Name? Beispiel?
08.08.2018 13:59:47
Mia
Die Variablenbezeichnungen der Suchliste sind auch in den Daten enthalten. Es müsste also was gefunden werden. Daran kann es nicht liegen.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige