COUNTA-Arbeitsblattfunktion in Excel VBA
In unserem früheren Artikel „Excel COUNTA“ haben wir gesehen, wie die COUNT-Funktion verwendet wird, um die numerischen Werte aus dem Wertebereich zu zählen. Wie wäre es, alle Werte im Zellbereich zu zählen? Ja, das können wir auch zählen. Um alle Zellenwerte im Zellbereich zu zählen, müssen wir in Excel VBA die Formel „COUNTA“ verwenden. In diesem Artikel zeigen wir Ihnen, wie Sie mit der COUNTA-Funktion in VBA alle Zellenwerte im angegebenen Bereich zählen.
Beispiele für die COUNTA-Funktion in VBA
Eine der Wahrheiten ist, dass die COUNTA-Funktion keine VBA-Funktion ist. Ich weiß, Ihre Frage ist, wenn es keine VBA-Funktion ist, wie verwenden wir sie dann? Keine Sorge, auch wenn es sich nicht um eine VBA-Funktion handelt, können wir sie in der VBA-Codierung unter der Arbeitsblatt-Funktionsklasse verwenden.
Sie können diese VBA COUNTA Excel-Vorlage hier herunterladen - VBA COUNTA Excel-VorlageOk, schreiben wir den Code, um die Excel VBA COUNTA anzuwenden.
Schritt 1: Erstellen Sie einen Unterprozedurnamen.
Schritt 2: Entscheiden Sie nun zunächst, wo das Ergebnis der VBA COUNTA-Funktion gespeichert werden soll. In diesem Beispiel möchte ich das Ergebnis in Zelle C2 speichern. Mein Code lautet also Range ("C2"). Value.
Code:
Sub Counta_Example1 () Range ("C2"). Value = End Sub
Schritt 3: In Zelle C2 benötigen wir den Wert der VBA COUNTA-Funktion. Um die Excel VBA COUNTA-Funktion anzuwenden, wenden Sie zunächst die Arbeitsblatt-Funktionsklasse an.
Code:
Sub Counta_Example1 () Range ("C2"). Value = Work End Sub
Schritt 4: Wählen Sie nach dem Anwenden der Arbeitsblatt-Funktionsklasse die Formel COUNTA aus, indem Sie einen Punkt einfügen.
Code:
Sub Counta_Example1 () Range ("C2"). Value = WorksheetFunction.Count End Sub
Schritt 5: Jetzt müssen wir den Bereich der zu zählenden Zellen angeben. In diesem Beispiel müssen wir den Zellbereich von A1 bis A11 zählen. Stellen Sie die Zellen also mit dem VBA RANGE-Objekt bereit.
Code:
Sub Counta_Example1 () Range ("C2"). Value = WorksheetFunction.CountA (Range ("A1: A11")) End Sub
Ok, lassen Sie uns den Code ausführen, um das Ergebnis in Zelle C2 zu erhalten.
Das gleiche Ergebnis lieferte also auch VBA COUNTA.
Auf diese Weise können wir COUNTA verwenden, um die nicht leeren oder nicht leeren Zellen aus dem angegebenen Bereich zu zählen.
Codierung mit Variablen
VBA-Variablen sind der Schlüssel zum Erstellen eines Projekts. Jetzt können wir für dieselben Daten VBA-Variablen deklarieren und zum Ergebnis gelangen.
Ein Beispiel finden Sie im folgenden Code.
Code:
Sub Counta_Example2 () Dim CountaRange As Range Dim CountaResultCell As Range Set CountaRange = Range ("A1: A11") Set CountaResultCell = Range ("C2") CountaResultCell = WorksheetFunction.CountA (CountaRange) End Sub
Lassen Sie uns jetzt den obigen Code erklären.
Zuerst habe ich die Variable "CountaRange" als Bereich deklariert, um auf den Wertebereich zu verweisen.
CountaRange As Range dimmen
Als nächstes habe ich die Referenz als Bereich A1 bis A11 eingestellt.
Setze CountaRange = Range ("A1: A11")
Die zweite Variable verweist auf die COUNTA-Ergebniszelle.
CountaResultCell As Range dimmen
Für diese Variable habe ich die Zelle als C2 festgelegt.
Setze CountaResultCell = Range ("C2")
Jetzt habe ich wie üblich die COUNTA-Funktion mit Variablen anstelle von fest codierten Bereichen angewendet. Schauen Sie sich nun den alten Code und diesen VBA-Code an.
Code 1:
Code 2:
In Code 1 haben wir Bereich C2, in Code 2 haben wir den Variablennamen "CountaResultCell". Hier setzt die Variable "CountaResultCell" die Referenz als C2-Zelle. Diese Variable ist also jetzt C2-Zelle.
In Code 1 ist der COUNTA-Funktionsbereich A1 bis A11, in Code 2 die Variable „CountaRange“. Diese Variable enthält einen Verweis auf den Bereich A1 bis A11.
Dies ist der Unterschied zwischen altem Code und Code mit Variablen.
Die COUNTA-Funktion hilft uns also, alle nicht leeren Zellen aus dem angegebenen Bereich zu zählen, unabhängig von den Daten, über die sie verfügen.