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

Anzahl2-Funktion unter VBA

Forumthread: Anzahl2-Funktion unter VBA

Anzahl2-Funktion unter VBA
15.10.2004 17:34:24
Lonni
Hallo Cracks,
ich bekomm das mit der WorksheetFunction irgendwie nicht auf die Reihe.
Habe in K6:K255 volle und leere Zellen und brauche nun unter VBA die Anzahl der vollen.
? helpme = Sheets(1).Range("K6:K255").WorksheetFunction.Count
Count ist aber zunächst nur analog Anzahl. Außerdem geht das insgesamt nicht ... Zudem gibt es wohl keine Übersetzung für Anzahl2?!
Danke für Ideen!!!
Gruß Lonni
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Anzahl2-Funktion unter VBA
Jürgen
Hallo,
muss es den mit VBA sein? Ansonsten kannst Du doch auch über ZÄHLENWENN die Anzahl der vollen oder leeren Zellen ermitteln.
Gruß
Jürgen
AW: Anzahl2-Funktion unter VBA
Lonni
Hallo Jürgen
Sollte unter VBA sein, da ich die Anzahl der vollen Zellen brauche um zu wissen wieviele Zeilen ich in der sub verarbeiten muss...
Ist ein Performance-Problem, da die Listen sehr lange sein KÖNNEN, aber nicht sein müssen.
Will eigentlich nur das notwendigste tun :-)
Gruß Lonni
Anzeige
AW: Anzahl2-Funktion unter VBA
Jürgen
Hallo
for i = 1 to activesheet.usedrange.rows.count
if cells (i,"deine Spalte").value "" then helpme=helpme+1
next i
Probiers mal so
Gruß
Jürgen
AW: Anzahl2-Funktion unter VBA
PeterW
Hallo Lonni,
Anzahl2 heißt in VBA CountA.
Gruß
Peter
AW: Anzahl2-Funktion unter VBA
Lonni
Hallo Peter,
hab ich schon versucht... ging aber nicht. Glaube die Syntax der ganzen Zeile stimmt nicht :-) ?!
Gruß Lonni
Anzeige
AW: Anzahl2-Funktion unter VBA
PeterW
Hallo Lonni,
helpme = WorksheetFunction.CountA(Sheets(1).Range("K6:K255"))
Gruß
Peter
AW: Anzahl2-Funktion unter VBA
Lonni
Hallo Peter,
Super !!
Genau das ist die Lösung... da war wohl die Syntax falsch :-)
VIELEN DANK!
Gruß Lonni
;
Anzeige

Infobox / Tutorial

Anzahl2-Funktion in VBA effizient nutzen


Schritt-für-Schritt-Anleitung

  1. Öffne den Visual Basic for Applications (VBA) Editor in Excel. Du kannst dies tun, indem du ALT + F11 drückst.

  2. Erstelle ein neues Modul: Klicke im VBA-Editor mit der rechten Maustaste auf „VBAProject (DeineDatei)“ und wähle „Einfügen“ > „Modul“.

  3. Füge den folgenden Code ein, um die Anzahl der vollen Zellen in einem bestimmten Bereich zu zählen:

    Sub ZaehleVolleZellen()
        Dim helpme As Long
        helpme = Application.WorksheetFunction.CountA(Sheets(1).Range("K6:K255"))
        MsgBox "Anzahl der vollen Zellen: " & helpme
    End Sub
  4. Führe das Makro aus: Drücke F5 oder gehe zu „Run“ > „Run Sub/UserForm“, um das Makro auszuführen.

  5. Prüfe die Ausgabe: Eine Meldung zeigt die Anzahl der vollen Zellen im Bereich K6:K255 an.


Häufige Fehler und Lösungen

  • Fehler: „Typenkonflikt“
    Lösung: Stelle sicher, dass die Zellen im Bereich K6:K255 keine Daten enthalten, die nicht gezählt werden können (z.B. Fehlerwerte).

  • Fehler: „Sub oder Function nicht definiert“
    Lösung: Überprüfe, ob du Application. vor WorksheetFunction.CountA hinzugefügt hast, um die Funktion korrekt aufzurufen.

  • Syntaxfehler
    Lösung: Achte darauf, dass du die Syntax genau befolgst, wie im obigen Beispiel. Ein fehlendes Zeichen kann den gesamten Code zum Scheitern bringen.


Alternative Methoden

Wenn du nicht mit VBA arbeiten möchtest, kannst du die ZÄHLENWENN-Funktion in Excel nutzen, um die Anzahl der vollen Zellen zu zählen:

=ZÄHLENWENN(K6:K255; "<>")

Diese Formel zählt alle Zellen im Bereich K6:K255, die nicht leer sind.


Praktische Beispiele

  1. Zählen von vollen Zellen in einem anderen Bereich:

    Wenn du z.B. die Anzahl der vollen Zellen in A1:A100 zählen möchtest, ändere den Code wie folgt:

    helpme = Application.WorksheetFunction.CountA(Sheets(1).Range("A1:A100"))
  2. Zählen von Zellen mit bestimmten Kriterien:

    Verwende die ZÄHLENWENN-Funktion:

    =ZÄHLENWENN(K6:K255; "Kriterium")

Tipps für Profis

  • Leistung optimieren: Wenn du mit sehr großen Datenmengen arbeitest, solltest du den Bildschirm aktualisieren deaktivieren, um die Ausführungsgeschwindigkeit zu erhöhen:

    Application.ScreenUpdating = False
    ' Dein Code hier
    Application.ScreenUpdating = True
  • Verwendung von VBA CountA: Denke daran, dass CountA alle nicht-leeren Zellen zählt. Falls du nur bestimmte Datentypen zählen möchtest, musst du zusätzliche Bedingungen einfügen.


FAQ: Häufige Fragen

1. Was ist der Unterschied zwischen Count und CountA?
Count zählt nur Zellen mit Zahlen, während CountA alle nicht-leeren Zellen zählt, einschließlich Text und Fehler.

2. Kann ich die Anzahl2-Funktion auch in Formeln verwenden?
Ja, in Excel kannst du die ZÄHLENWENN- oder ZÄHLENWENNS-Funktion verwenden, um flexiblere Zählungen durchzuführen, auch ohne VBA.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige