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

Forumthread: AutoFilter mit VBA

AutoFilter mit VBA
14.10.2015 13:39:48
Fabian
Hallo liebe Leute,
ich wollte in mein VBA einen AutoFilter einbauen, weil ich mir dachte, dass das am schnellsten geht, wenn ich aus einer Liste bestimmte Daten - nun ja - gefiltert haben will. ^^
Aktuell stehe ich aber auf dem Schlauch. Meines Spalten A bis E sind gefüllt bis Zeile 34, gefiltert werden soll nach allen Zellen in Spalte A, bei denen an 20. Stelle ein "F" steht. Hier die zwei Codezeilen, um die es geht (es passiert vorher nicht besonderes im Programm):

ActiveWorkbook.Worksheets(1).Range("A1:E1").AutoFilter
ActiveWorkbook.Worksheets(1).Range("$A$1:$E$34").AutoFilter Field:=20, Criteria1:="F",  _
Operator:=xlAnd Criteria1:="F"
"Die AutoFilter-Methode des Range-Objektes konnte nicht ausgeführt werden."
Was fehlt? Und benötige ich eigentlich das "xland"?
Ich hoffe, ihr könnt mir helfen.
Viele Grüße
Fabian
P.S.: Wie kann ich auf Antworten auf meine Frage zurück antworten, wenn ich keine Mail bekomme?

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: AutoFilter mit VBA
14.10.2015 13:56:56
Daniel
Hi
der Paramter FIELD legt fest, in welcher Spalte die folgenden Bedingungen erfüllt sein müssen, damit die Zeile angezeigt wird.
Field:=20 wäre die 20. Spalte, das kann schon mal nicht funktionieren, da du nur einen Zellbereich mit 5 Spalten angegeben hast.
du willst alle Zellen in Spalte A überprüften, also muss FIELD:=1 sein.
zum xlAnd:
du kannst pro Spalte 2 Filterkriterien angeben (Criteria1 und Criteria2)
über dein Paramter OPERATOR legst du fest, ob beide Bedingungen gleichzeitig (xlAnd) erfüllt sein müssen, oder ob es ausreicht, wenn nur eine der beiden zutrifft (xlOr).
du hast aber nur eine Bedingung, also brauchst du das 2. Kriterium und den Operator nicht.
für deine Bedingung brauchst du einen Textfilter, den du aus den entsprechenden Jokerzeichen zusammensetzen musst:
"?" = genau ein beliebiges Zeilen
"*" = beliebige Zeichen in beliebiger Anzahl
ergibt dann als Filter:
... .AutoFilter Field:=1, Criteria1:="=?F*"
bzw für die Menschen die maximal bis 3 Zählen wollen und der Meinung sind, dass für solche stupiden Aufgaben der Computer besser geeignet ist:
... .AutoFilter Field:=1, Criteria1:="=" & String(19, "?") & "F*"
Gruß Daniel

Anzeige
AW: AutoFilter mit VBA
15.10.2015 10:36:43
Fabian
Hallo Daniel,
super, danke, das wusste ich nicht, hatte gedacht Field steht für die Stelle im Text.
Hat funktioniert, also vielen Dank :)
Viele Grüße
Fabian
;

Forumthreads zu verwandten Themen

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