Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1452to1456
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
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?

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

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige