VBA COUNTIF
Kriterienbasierte Funktionen sind die Herrscher von Excel in Berechnungen. Zu Beginn des Lernens von Excel müssen wir den COUTNIF-Prozess in Excel gelernt haben. In unseren früheren Artikeln haben wir Ihnen gezeigt, wie Sie mit der COUNTIF-Funktion in Excel VBA arbeiten.
In unserem Artikel zur COUNTIF-Formel in Excel finden Sie Informationen zu den Grundlagen der COUNTIF-Funktion in Excel VBA. In diesem Artikel zeigen wir Ihnen, wie Sie dieselbe Funktion in der VBA-Codierung verwenden. Jetzt sehen wir die gleiche Formel in VBA. Als erstes ist COUNTIF keine VBA-Funktion. Stattdessen handelt es sich um eine Arbeitsblattfunktion, auf die unter der Arbeitsblattfunktionsklasse zugegriffen werden kann.

Beispiel für eine Excel VBA Countif-Funktion
Ok, sehen wir uns das einfache Beispiel an.
Sehen Sie sich das folgende Beispiel für das Zählen von Werten aus dem Los an.

Im obigen Bild haben wir Städtenamen von Zelle A1 bis A10. In Zelle C3 müssen wir zählen, wie oft der Städtename „Bangalore“ im Bereich von A1 bis A10 erscheint.
Ok, befolgen Sie die folgenden Schritte, um den Code zum Anwenden der COUNTIF-Funktion zu schreiben.
Schritt 1: Starten Sie die Sub-Prozedur.
Code:
Option Explicit Sub Countif_Example1 () End Sub

Schritt 2: Da wir das Ergebnis in Zelle C3 speichern müssen, starten Sie den Bereich („C3“). Wert.
Code:
Sub Countif_Example1 () Range ("C3"). Value = End Sub

Schritt 3: In Zelle C3 versuchen wir durch Anwenden der Excel VBA COUNTIF-Funktion, zum Ergebnis zu gelangen. Um auf die Funktion zugreifen zu können, müssen wir zuerst die Worksheet Function-Klasse verwenden.
Code:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction. End Sub

Schritt 4: Wählen Sie aus der verlorenen Excel-Funktion VBA COUNTIF aus.
Code:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (End Sub

Schritt 5: Wenn Sie sich die Parameter der VBA COUNTIF-Funktion ansehen, sehen wir den Parameter nicht, wie wir im Arbeitsblatt sehen.

Wie wir im obigen Bild im Arbeitsblatt sehen können, haben wir eine genaue Syntax, aber in VBA können wir nur Arg 1 und Arg 2 sehen.
Arg 1 ist Range, wählen Sie also den Bereich A1 bis A10.
Code:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (Range ("A1: A10"), End Sub

Schritt 6: Arg 2 ist der Wert, den wir vom Bereich A1 bis A10 zählen müssen. In diesem Beispiel müssen wir "Bangalore" berechnen.
Code:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (Range ("A1: A10"), "Bangalore") End Sub

Ok, wir sind fertig.
Führen Sie den Code aus, um das Ergebnis in Zelle C3 anzuzeigen.

Wir haben das Ergebnis als 4 erhalten. Da der Stadtname „Bangalore“ in den Zellen A1, A4, A7 und A10 VBA COUNTIF angezeigt wird, wurde das Produkt als 4 zurückgegeben.
Wenn Sie sehen, dass VBA-Code nur das Ergebnis der Formel zurückgegeben hat, lernen wir die Prozedur in der Formelleiste nicht kennen.

Um zur Formel zu gelangen, müssen wir den Code etwas anders schreiben. Unten finden Sie den Code, mit dem Sie die Formel selbst auf die Zelle anwenden können.
Code:
Sub Countif_Example1 () Range ("C3"). Formula = "= CountIf (A1: A10," "Bangalore" ")" End Sub
Dadurch wird die Formel auf die Zelle C3 angewendet.

Ergebnis mit Variablen ankommen
Variablen sind ein wesentlicher Bestandteil jeder Codierungssprache. Wir müssen Variablen deklarieren, um effizient mit dem VBA-Code arbeiten zu können. Schauen Sie sich zum Beispiel den folgenden Code an.
Code:
Sub Countif_Example2() Dim ValuesRange As Range Dim ResultCell As Range Dim CriteriaValue As String Set ValuesRange = Range("A1:A10") Set ResultCell = Range("C3") CriteriaValue = "Bangalore" ResultCell = WorksheetFunction.CountIf(ValuesRange, CriteriaValue) End Sub
Let me decode the code for you to understand better.
Firstly I have declared the two variables as Range.
Dim ValuesRange As Range: This is to reference the list of values.
Dim ResultCell As Range: This to reference the result cell.
Then I have set the range of references to both the variables.
Set ValuesRange = Range(“A1: A10”): This is the range where all the city names are there.
Set ResultCell = Range(“C3”): In this cell, we will store the result of the COUNTIF function.
In the meantime, I have declared one more variable to store the criteria value.
Dim CriteriaValue As String
CriteriaValue = "Bangalore"
Die Variable "CriteteriaValue" enthält nun den Wert "Bangalore".
In der nächsten Zeile habe ich wie üblich die COUTNIF-Funktion angewendet.
ResultCell = WorksheetFunction.CountIf (ValuesRange, CriteriaValue)
Auf diese Weise können wir die COUNTIF-Funktion in Excel VBA anwenden, um unseren Anforderungen zu entsprechen.