Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Autofilter über mehrere Tabellenblätter

Autofilter über mehrere Tabellenblätter
16.04.2013 08:44:18
Toumas
Hallo zusammen,
ich hatte am 05.04.2013 bereits das Problem eingestellt und Hubert war so freundlich darauf zu antworten, leider konnte ich wegen Krankheit keine Ergebnisse posten.
Leider besteht das Problem noch immer.
Ich habe von Klaus unten aufgeführtes Makro bekommen, nun kam mein Chef noch auf die Idee, dass man die Auswahlkriterien gleich vorbelegt. Dies habe ich auch versucht zu machen (bin auch über die Makroaufzeichnung gegangen, Aber bei 12 Tabellenblättern jeweils das Blatt auswählen, das Makro drüberlaufen lassen und dann das nächste Makro zu starten ist keine schöne Methode)
Ich soll für die Spalte D ein Auswahlkriterium und für die Spalte F drei Auswahlkriterien einfügen.
Die Zeilen die ich anstelle Field 1 eingefügt habe sind :
Field:=4, _
Criteria1:="=xxxxx", _
Operator:=xlAnd
Field:=6, Criteria1:=("xxxxx", "yyyyy", "zzzzz"), Operator:=xlFilterValues
Hubert hat mir den Tip gegeben, dass ich die Range A1 ändern sollte, dies habe ich versucht auf A1:F1000 aber er macht mir trotzdem nichts, bzw. bringt den Fehler 400
Wie kann ich nun für Spalte D und F jeweils die Auswahlkritierien einbauen.
Da ich mich erst in die Makros reinfuchse und noch wenig Ahnung habe, arbeite ich momentan viel mit der Makroaufzeichnung und schau mir dann an, was das Ding so macht... Also habe ich leider wenig Ahnung von VBA.
Danke schon mal im Voraus
Original Makro :
Sub Filter1()
Dim iWks As Integer
For iWks = 1 To Worksheets.Count
Call DoResetAutofilter(Worksheets(iWks), 1, 1, 1)
Worksheets(iWks).Range("A1").AutoFilter _
Field:=1, _
Criteria1:="*", _
Operator:=xlAnd
Next iWks
End Sub
Sub DoResetAutofilter(wksMySheet As Worksheet, iColFirst As Integer, iColLast As Integer, _
lRowFirst As Long)
'* in case a user used another autofiler, this makro resets the autofilter to where needed.
Dim lRowLast As Long
With wksMySheet
lRowLast = .Cells(.Rows.Count, iColFirst).End(xlUp).Row
If .AutoFilterMode Then .Cells.AutoFilter 'Turns OFF Autofilter, if any
'Selection.AutoFilter
.Range(.Cells(lRowFirst, iColFirst), .Cells(lRowLast, iColLast)).AutoFilter
'Turns ON _Autofilter on given range
'ActiveSheet.Range("$A$1:$F$151").AutoFilter Field:=1
End With
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autofilter über mehrere Tabellenblätter
16.04.2013 08:55:07
Klaus
Hi,
hier
Call DoResetAutofilter(Worksheets(iWks), 1, 1, 1)
rufst du den DoResetAutofilter Makro auf, um im iWks-Sheet einen Autofilter zu setzen. Und zwar von Spalte A bis Spalte A ab Zeile 1.
Wenn der Filter von Spalte A bis Spalte A geht, hat er nur ein Kriterium. Dann kannst du nicht nach Kriterum 4 Filtern!
Autofilter per Makro bis Spalte F
Call DoResetAutofilter(Worksheets(iWks), 1, 6, 1)
Dann klappts auch mit Kriterium 4 und 6!
(Achtung! Spalte F = Spalte 6, aber Kriterium 6 ist nicht unbedingt in Spalte F! Das kommt hier nur zufällig hin weil der Autofilter in Spalte A = 1 anfängt).
Das habe ich aber alles hier
https://www.herber.de/forum/messages/1308858.html
schon ausführlich geschrieben! Nicht nur blind die Codes kopieren, auch die Beiträge bis zum Ende lesen :-) Übrigens hätte ich mich unten über eine Rückmeldung gefreut.
Grüße,
Klaus M.vdT.
Grüße,
Klaus M.vdT.

Anzeige
AW: Autofilter über mehrere Tabellenblätter
16.04.2013 09:48:18
Toumas
Hallo Klaus,
danke für die schnelle Rückantwort, das mit dem Blind kopieren ist so eine Sache, wenn man sich gar nicht auskennt. Ich versuche schon Dinge zu ändern, aber meist seh ich dann den Wald vor lauter Bäumen nicht mehr und komme auch, man möge mir verzeihen, nicht auf die Idee zum Beispiel dort nachzuschauen wo du es erwähnt hast.... Ist leider der typischen Anfägnerpanik geschuldet, die sich bei der Ansicht solcher Formeln breitmacht.... (Ja ich weiß, ist keine Ausrede)
Das Problem mit der Rückantwort, wie auch der ausstehende auf Rückantwort auf Huberts Antwort ist meist daran geschuldet, dass, wenn ich nicht am gleichen Tag reinschaue (so wie in diesem Fall erst ne gute Woche später) ich über "Deine Beiträge" reingehe und da habe ich keine Antwortoption (gefunden).
Ich werde deinen Tipp nun befolgen und austesten...
Vielen Dank
Toumas

Anzeige
AW: Autofilter über mehrere Tabellenblätter
16.04.2013 12:03:58
Toumas
@Klaus,
bevor ich es wieder vergesse ;-)
nachdem ich dann langsam (sehr langsam.... leider) dahintersteige, funktioniert es nun auch.
Danke nochmals für deine Hilfe und die Tipps.
Viele Grüße
Toumas

Danke für die Rückmeldung! owT
16.04.2013 12:06:16
Klaus
.

381 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige