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

Zaehler funktioniert nicht

Forumthread: Zaehler funktioniert nicht

Zaehler funktioniert nicht
abu
Hallo Zusammen,
hab wieder mal ein kleines Problem und hoffe das Ihr mir helfen koennt.
Per Makro wird ein Filter gesetzt. Da ich diese Daten nicht brauche sollen sie geloescht werden. Um die letzte Zeile zu finden benutze ich diesen Code
z = 2
While .Cells(z, 1) ""
z = z + 1
Wend
z = z - 1
Leider hoert der Zaehler nicht auf und ich vermute mal er laeuft auch die gefilterten Zeilen ab. Ich moechte aber des er nur die Zeilen zaehlt die Angezeigt werden....
Hoffe es hat jemand eine Loesung fue mein Problem.
Beste Gruesse
Abu
Anzeige
AW: Zaehler funktioniert nicht
17.08.2010 14:06:34
Gerd
Hallo Abu!
Bis ca. 16000 Zeilen.
Intersect(Tabelle1.Columns(1).SpecialCells(xlCellTypeVisible), Tabelle1.AutoFilter.Range.Offset(1).Resize(Tabelle1.AutoFilter.Range.Rows.Count - 1)).EntireRow.Select
Gruß Gerd
AW: Zaehler funktioniert nicht
17.08.2010 14:13:41
abu
Hallo Gerd,
danke fuer Deine Schnelle hilfe. Leider laeufts noch nicht.
Vorher:
With Worksheets("Sheet1")
z = 2
While .Cells(z, 1) ""
z = z + 1
Wend
z = z - 1
Rows(Cells.SpecialCells(xlCellTypeVisible).Areas(2).Row & ":" & x).Select
Selection.Delete Shift:=xlUp
End With
Nachher:
With Worksheets("Sheet1")
Intersect(Sheet1.Columns(1).SpecialCells(xlCellTypeVisible), Sheet1.AutoFilter.Range.Offset(1).Resize(Sheet1.AutoFilter.Range.Rows.Count - 1)).EntireRow.Select
Selection.Delete Shift:=xlUp
End With
Was mache ich denn noch falsch?
Gruss
Abu
Anzeige
AW: Zaehler funktioniert nicht
17.08.2010 14:20:12
Gerd
Hallo Abu,
unterstellt der Autofilter geht auch über Spalte A (Columns(1) nicht viel. Select ist nur zum Testen drin.
Stattdessen kannst Du ".Delete" direkt hintendran schreiben.
With Worksheets("Sheet1")
Intersect(.Columns(1).SpecialCells(xlCellTypeVisible), .AutoFilter.Range.Offset(1).Resize(.AutoFilter.Range.Rows.Count - 1)).EntireRow.Select
Selection.Delete Shift:=xlUp
End With
Gruß Gerd
Anzeige
Cells(Rows.Count, 1).End(xlUp).Row
17.08.2010 14:19:29
{Boris}
Hi Abu,
...ermittelt Dir die letzte gefilterte Zeile der Spalte A.
Grüße Boris
AW: Cells(Rows.Count, 1).End(xlUp).Row
17.08.2010 14:28:24
Hajo_Zi
Hallo Boris,
das ist falsch. Es wird Autofilter benutzt.

Teste es doch mal...
17.08.2010 14:29:23
{Boris}
Hi Hajo,
...es wird die letzte gefilterte Zeile ermittelt.
Grüße Boris
Anzeige
AW: Cells(Rows.Count, 1).End(xlUp).Row
17.08.2010 14:33:29
Gerd
Hallo Boris!
...ermittelt Dir die letzte gefilterte Zeile der Spalte A.
Mit gewissen Einschränkungen; keine Werte unterhalb des Filterbereichs; keine leeren Werte mitgefiltert.
Gruß Gerd
AW: Zaehler funktioniert nicht
17.08.2010 14:55:40
mpb
Hallo Abu,
aus Deinem Code schließe ich, dass Du beginnend ab Zeile 2 alle nach dem Filterprozess sichtbaren Zeilen löschen möchtest, und ich vermute weiterhin, dass es unter dem zu filternden Bereich keine weiteren Einträge in der Tabelle gibt. Ist das richtig? Dann brauchst Du keinen Zähler und keine Schleife. Folgende Codezeile unter Berücksichtigung von{Boris} Beitrag löscht diese Zeilen in einem Aufwasch:
Range(Cells(2, 1), Cells(Cells(Rows.Count, 1).End(xlUp).Row, 1)).SpecialCells(xlCellTypeVisible).EntireRow.Delete
Gruß
Martin
Anzeige
AW: Zaehler funktioniert nicht
17.08.2010 16:08:41
abu
Hallo an Alle,
Danke an Alle!
Habe jetzt die Zeile von Martin genommen. Sie funktioniert so nun aber das bringt leider ein anderes Problem.
Den Filter lege ich fuer bestimmte Buchstabenkombis fest, es sind aber nicht immer alle enthalten und wenn ich dann den Filter setze und nicht angezeigt wird dann loescht er mir die erste Zeile und danach laeuft alles schief.
Habe es mit If Zelle A2 "" probiert aber der Filter ist ja drauf....
Welche Abfrage kann ich denn machen nachdem der Filter gesetzt ist um vor der Zeile von Martin zu pruefen ob es ueberhauot Inhalt gibt?
Gruesse
Abu
Anzeige
nach Filter pruefen auf Inhalt
17.08.2010 16:09:58
abu
wie immer vergessen Frage auf offen zu stellen
AW: Zaehler funktioniert nicht
17.08.2010 16:59:14
abu
Noch mal Hallo,
hier noch ein kleines Danke an Alle.
Die Loesung ist If Cells(Rows.Count, 1).End(xlUp).Row groesser 1 Then
Gruss
Abu
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

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