Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1800to1804
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

Autofilter

Autofilter
30.12.2020 12:44:41
Peter
Guten Tag
Ich möchte in meiner Tabelle einen Autofilter setzen.
Mein Code:
Sub xxx()
With AKB
.Range(.Cells(8, 1), .Cells(LastRow(AKB), LastCol(AKB))).AutoFilter
End With
End Sub
.
Da passiert aber gar nix, wenn ich den Code laufen lasse.
Ich habe den Range im Direktbereich getestet, der Bereich, der gefiltert werden soll, scheint zu stimmen:
?akb.Range(akb.Cells(8, 1), akb.Cells(LastRow(AKB), LastCol(AKB))).Address
$A$8:$L$132
Wenn ich das Filtersetzen mit dem Macrorecorder festhalte, wird Folgendes aufgezeichnet:
Sub Makro1()
'' Makro1 Makro
Application.Goto Reference:="R8C1:R132C12"
Selection.AutoFilter
End Sub
Brauche ich in meinem Code das Selection oder weshalb klappt das so nicht?
Gruss, Peter

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autofilter
30.12.2020 12:46:41
Hajo_Zi
Hallo Peter,
benutze den Makrorecorder.

AW: Autofilter
30.12.2020 12:48:25
Peter
Hallo Hajo
Den habe ich ja benutzt, um herauszufinden, was falsch ist, bin jedoch nicht schlau geworden. Ich möchte mit den Variablen arbeiten, da diese immer wieder ändern.
Gruss, Peter
AW: Autofilter
30.12.2020 12:50:23
Hajo_Zi
Hallo Peter,
zu deinenm aufgezeichneten Code kann ich nichts schreiben, der im ersten Beitrag war es nicht.
Zu Deiner Datei kann ich nichts schreiben, was wohl daran liegt das ich nicht auf fremde Rechner schaue.Ich baue keine Datei nach.
Sollte die Datei verlinkt werden?
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten
http://www.ms-office-forum.de/forum/showthread.php?t=322895
ändern.
Bilder lade ich mir nicht runter, da Excel damit nichts anfangen kann.
http://www.excel-ist-sexy.de/bilder-statt-datei/
Hochgeladene Bilder können zwar als solche in Excel importiert werden, sind jedoch bei der Lösung von Problemen nicht sehr hilfreich, da man die eigentlichen Daten nicht ohne große und zeitraubende Umwege direkt in die Tabelle übertragen kann.
Das ist nur meine Meinung zu dem Thema.
http://www.excel-ist-sexy.de/bilder-statt-datei/
Hochgeladene Bilder können zwar als solche in Excel importiert werden, sind jedoch bei der Lösung von Problemen nicht sehr hilfreich, da man die eigentlichen Daten nicht ohne große und zeitraubende Umwege direkt in die Tabelle übertragen kann.
Das ist nur meine Meinung zu dem Thema.
Gruß Hajo
Anzeige
AW: Autofilter
30.12.2020 13:12:44
MatthiasG
Hallo Peter,
mit .Autofilter schaltest du den Autofilter um (ein/aus).
Die Zeilen werden automatisch alle gefiltert, egal was du als LastRow angibst.
Den Status des Autofilters kannst du mit
? ActiveSheet.AutoFilterMode
abfragen.
Vielleicht hilft das besser als Hajos Textbausteine?
Gruß Matthias
AW: Autofilter
30.12.2020 13:58:50
Nepumuk
Hallo Peter,
versuch es mal so:
With AKB
    If Not .AutoFilterMode Then .Rows(8).AutoFilter
End With

Gruß
Nepumuk
Anzeige
AW: Autofilter
30.12.2020 18:14:56
Peter
Hallo Matthias und Nepumuk
Vielen Dank.
"Die Zeilen werden automatisch alle gefiltert."
Wahrscheinlich ist mein Problem, dass ich blockweise Daten habe.
Wenn ich also mit
With AKB
If Not .AutoFilterMode Then .Rows(8).AutoFilter
End With
die Datenfilterung einschalte, berücksichtigt es nur die Zeilen bis 17, weil Zeilen 18-21 leer sind und es dann erst wieder weiter geht bei Zeile 22. Dann folgen weitere Blöcke und Zeile 132 ist die letzte mit Inhalt.
Scheinbar stören hier mit VBA die leeren Zeilen.
Händisch kann ich den Filter setzen - es wird folgendes aufgezeichnet:
Sub Makro5()
Application.Goto Reference:="R8C1:R132C12"
Selection.AutoFilter
End Sub
Wenn ich dann aber diesen Codeschnipsel in meinen Code integriere, wird der Filter nicht gesetzt.
Anscheinend muss ich in einem solchen Fall mit Select vorgehen - denn mit folgendem Code funktioniert es jetzt:
With AKB
If .AutoFilterMode = True Then .AutoFilterMode = False
.Range(.Cells(8, 1), .Cells(LastRow(AKB), LastCol(AKB))).Select
.Range(.Cells(8, 1), .Cells(LastRow(AKB), LastCol(AKB))).AutoFilter
End With
Vielen Dank für die Unterstützung.
Gruss, Peter
Anzeige
AW: Autofilter
30.12.2020 18:21:06
Nepumuk
Hallo Peter,
sind die Zellen dann auch in Spalte A leer?
Gruß
Nepumuk
AW: Autofilter
30.12.2020 19:17:15
Peter
Hallo Nepumuk
Ja, es gibt Zeilen innerhalb des zu filternden Bereichs, die sind ganz leer.
Gruss
Peter
AW: Autofilter
30.12.2020 19:46:31
Nepumuk
Hallo Peter,
ich habe das jetzt mal durchgetestet. Die Range-Eigenschaft des ListObjects gibt den kompletten Bereich von der ersten bis zur letzten Zelle zurück. Und der wird mit meinem Makro in Spalte A gefiltert. Sollte das bei dir nicht so sein, dann lade bitte eine Mappe hoch in welcher der Fehler auftritt.
Gruß
Nepumuk
AW: Autofilter
30.12.2020 20:25:18
Peter
Hallo Nepumuk
https://www.herber.de/bbs/user/142670.xlsm
Es handelt sich um eine einfache Buchhaltung - ich muss nur die Buchungen (Tabelle: "Buchungen") erfassen und dann im benutzerspezifischen Menu "Hauptbuch ummodeln" anwählen - dann werden die Kontenblätter erstellt und zusätzlich alle Kontenblätter in eine Tabelle "Alle_Kontenblätter" geschrieben. In dieser Tabelle wollte ich einen neuen Filter setzen. Es handelt sich um das Modul "A20201230_Alle_Kontenblätter" und dort ab der 12. letzten Zeile.
Ich habe die Datei hochgeladen.
Gruss
Peter
Anzeige
AW: Autofilter
31.12.2020 09:44:59
Nepumuk
Hallo Peter,
du musst die einzelnen Listen in "Alle_Kontenblätter" Als Tabelle formatieren. Dann kannst du auf jede einzelne einen Autofilter setzen. Filtern kannst du dann in einer Schleife über die einzelnen ListObjects.
Gruß
Nepumuk
AW: Autofilter
31.12.2020 16:20:42
Peter
Hallo Nepumuk
Danke.
Mit dieser Art von "Tabellen" und den dazugehörigen Möglichkeiten muss ich mich erst schlau machen. Wir nächstest Jahr :-) .
Gruss, Peter
AW: Autofilter
31.12.2020 08:50:02
Oberschlumpf
Hi Peter,
hab mir die Bsp-Datei + Code auch angesehen.
Eigentlich funktioniert doch alles.
Aber was genau möchtest du erreichen?
Willst du erreichen, dass oberhalb jeder Tabelle im Blatt "Alle_Kontenblätter" der Autofilter gesetzt wird, damit du unabhängig in den einzelnen Tabellen autofiltern kannst?
DAS ist nicht möglich, da pro Tabellenblatt der Autofilter - nur einmal - gesetzt werden kann.
Ist deine Frage beantwortet, oder habe ich dich komplett falsch verstanden? :-)
Ciao
Thorsten
Anzeige
AW: Autofilter
31.12.2020 16:09:57
Peter
Hallo Thorsten
Ja, es funktioniert alles. Nepumuk hat mir einen Code zur Verfügung gestellt, der so nicht funktionierte (wegen Leerzeilen) - und deshalb habe ich die Datei hochgeladen.
Es ist alles ok, aber ich lerne immer wieder dazu (hoffe ich :-) )
Gruss, Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige