Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

gefilterte Zeilen zählen

Betrifft: gefilterte Zeilen zählen
von: Florian
Geschrieben am: 17.04.2003 - 10:49:44

Hallo Zusammen,
ich möchte gerne in der Statusleiste angezeigt bekommen, wieviele Datensätze als 'Treffer' des Autofilterkriteriums gefunden wurden.
Dabei scheitere ich am Zählen der Zeilen.
Mir schwebt irgendetwas im Kopf mit specialcells_(xlcelltypevisible) und intersect, aber ich krieg es nicht zusammen.
Könnte mir da bitte jemand helfen?
Grüße aus Aachen,
Florian

  

Re: gefilterte Zeilen zählen
von: Nike
Geschrieben am: 17.04.2003 - 11:29:42

Hi,
ganz ohne Makro:
Blende die Statuszeile ein
(Menü:Ansicht/Statusleiste Haken rein)
mach nen rechten Mausklick unten in die linke untere Ecke wo
bereit steht und wähle dort dann Anzahl aus.

Bye

Nike

  

Re: gefilterte Zeilen zählen
von: Florian
Geschrieben am: 17.04.2003 - 11:44:00


Hallo Nike,
dafür müßte ich ja jedesmal die Trefferzeilen markieren.
Folgenden Code hattest Du schonmal im Archiv geschrieben, funktioniert aber leider nicht.
Sowas in der Art stelle ich mir aber prinzipiell vor.

Sub check()
Dim lngZeil As Long
Dim lngSaetze As LongFor lngZeil = 1 To 10000
If Cells(lngZeil, 1).Visible = True And Cells(lngZeil, 1) <> "" Then
lngSaetze = lngSaetze + 1
End If
Next
MsgBox lngSaetze
End Sub

Vielleicht könntest Du da mal rübergucken,
Gruß,
Florian

  

Re: gefilterte Zeilen zählen
von: Yal
Geschrieben am: 17.04.2003 - 12:29:20

Ein Trick:
mach eine zusätliche Spalte, wo für alle Zeile ein 1 steht, z.B. Spalte E.
Es kann z.B. mit eine Formel automatichbefüllt werden:
=(ANZAHL(Ax:Dy)>0)*1
In eine nicht von Filter ausgeblendete Zelle fügt die Formel:
= TEILERGEBNIS(9;E:E)

Teilergebnis bildet die Summe der gefilterte Werte. Da alle 1 sind, ergibt sich damit den Anzahl von gefilterte Zeilen.

Yal


  

Re: gefilterte Zeilen zählen
von: Florian
Geschrieben am: 17.04.2003 - 13:05:33

Hallo,
das ist etwas anderes als ich wollte, aber
habs jetzt selber:

Sub DatensaetzeZaehlen()

Dim rng As Range
Dim zaehler As Variant
Dim i As Variant

For zaehler = 8 To 65000
If ActiveSheet.Cells(zaehler, 1).Value <> "" And ActiveSheet.Rows(zaehler).Hidden = False

Then
i = i + 1
End If
Next
application.statusbar = i

End Sub

 

Beiträge aus den Excel-Beispielen zum Thema "gefilterte Zeilen zählen"