VBA COUNTIF-Funktion in Excel (6 Beispiele)

  • Teile Das
Hugh West

Die COUNTIF Funktion in Excel wird verwendet, um die Anzahl der Zellen innerhalb eines Bereichs zu zählen, die eine bestimmte Bedingung erfüllen. In diesem Artikel zeigen wir Ihnen, wie Sie die COUNTIF Funktion in Excel mit VBA Makro.

Arbeitsbuch herunterladen

Sie können die kostenlose Excel-Arbeitsmappe für die Praxis hier herunterladen.

COUNTIF-Funktion mit VBA.xlsm

COUNTIF-Funktion in Excel

  • Syntax

WorksheetFunction.CountIf( Arg1 Als Bereich, Arg2 ) als Double

  • Parameter
Parameter Erforderlich/ Fakultativ Datenart Beschreibung
Arg1 Erforderlich Bereich

Der Bereich der Zellen von count cells.

Arg2 Erforderlich Variante Eine Zahl, ein Ausdruck, ein Zellbezug oder ein Text, der definiert, welche Zellen gezählt werden sollen, z. B. 20, "20", ">20", "Obst" oder B2.
  • Rückgabe Typ

Wert als Double

6 Beispiele für die Verwendung der COUNTIF-Funktion in Excel mit VBA

In diesem Abschnitt erfahren Sie, wie Sie die COUNTIF Funktion in Excel zum Zählen von Texten, Zahlen usw. mit VBA Code.

1. worksheetFunction mit COUNTIF in Excel VBA

Excel's WorksheetFunction kann verwendet werden, um die meisten anderen Funktionen in Excel aufzurufen, die in die Funktion Einfügen COUNTIF Funktion ist eine dieser Funktionen.

Anhand des obigen Beispiels werden wir lernen, wie man die WorksheetFunction mit COUNTIF zum Zählen von Daten mit VBA in Excel.

Schritte:

  • Presse Alt + F11 auf Ihrer Tastatur oder gehen Sie auf die Registerkarte Entwickler -> Visual Basic zu öffnen Visual Basic-Editor .

  • Klicken Sie im Pop-up-Code-Fenster in der Menüleiste auf Einfügen -> Modul .

  • Kopieren Sie den folgenden Code und fügen Sie ihn in das Codefenster ein.
 Sub ExCOUNTIF() Bereich("B13") = Application.WorksheetFunction.CountIf(Bereich("B5:B10"), "<3") End Sub 

Ihr Code ist nun einsatzbereit.

  • Presse F5 auf Ihrer Tastatur oder wählen Sie in der Menüleiste Run -> Run Sub/UserForm Sie können auch einfach auf die Schaltfläche kleines Play-Symbol in der Untermenüleiste, um das Makro auszuführen.

Wir wollten herausfinden, wie viele Zahlen in unserem Datensatz kleiner als 3 sind. Nachdem wir den Code ausgeführt hatten, erhielten wir das Ergebnis 4, was die Anzahl der Zahlen ist, die kleiner als 3 in unserem Datensatz sind.

Lesen Sie mehr: Wie man COUNTIF zwischen zwei Zahlen verwendet (4 Methoden)

2. die Funktion COUNTIF zum Zählen eines bestimmten Textes in Excel

Wenn Sie einen bestimmten Text zählen möchten, z. B. wie viele Städte oder Namen oder Lebensmittel usw. in einem Excel-Blatt enthalten sind, können Sie die Funktion COUNTIF Funktion in VBA .

Anhand des obigen Beispiels werden wir lernen, wie man die COUNTIF um zu zählen, wie oft der Name John tritt in unserem Datensatz mit VBA Makro.

Schritte:

  • Auf die gleiche Weise wie zuvor, öffnen Sie Visual Basic-Editor von der Entwickler Registerkarte und einfügen. a Modul im Code-Fenster.
  • Kopieren Sie im Codefenster den folgenden Code und fügen Sie ihn ein.
 Sub CountifText() 'Eingabe countName = WorksheetFunction.CountIf(Range("B5:B10"), "John") 'Ausgabe Range("E7") = countName End Sub 

Ihr Code ist nun einsatzbereit.

  • ausführen. das Makro und Sie erhalten die Gesamtzahl.

Wenn Sie den Text nicht direkt in Ihren Code schreiben wollen, können Sie ihn zunächst in einer Variablen speichern und diese später in den Code einfügen, so wie im folgenden Code,

 Sub CountifText() 'Eingabe Name = Bereich("E6") countName = WorksheetFunction.CountIf(Bereich("B5:B10"), Name) 'Ausgabe Bereich("E7") = countName End Sub 

Lesen Sie mehr: Zählen von Text am Anfang mit den Funktionen COUNTIF & LEFT in Excel

3. die Funktion COUNTIF zum Berechnen von Zahlen mit VBA

Sie können die COUNTIF Funktion, um bestimmte Ergebnisse zu extrahieren.

Anhand des obigen Beispiels werden wir lernen, wie man die COUNTIF zu zählen, wie viele Zahlen in unserem Datensatz enthalten sind, die größer als 1,1 mit VBA Makro.

Schritte:

  • Auf die gleiche Weise wie zuvor, öffnen Sie Visual Basic-Editor von der Entwickler Registerkarte und einfügen. a Modul im Code-Fenster.
  • Kopieren Sie im Codefenster den folgenden Code und fügen Sie ihn ein.
 Sub CountifNumber() 'Eingabe countNum = WorksheetFunction.CountIf(Range("B5:B10"), ">1.1") 'Ausgabe Range("E7") = countNum End Sub 

Ihr Code ist nun einsatzbereit.

  • ausführen. das Makro und Sie erhalten die Gesamtzahl.

Wenn Sie die Zahl nicht direkt in Ihren Code schreiben wollen, können Sie sie zunächst in einer Variablen speichern und diese später in den Code einfügen, wie im folgenden Code,

 Sub CountifNumber() 'input Num = Range("E6") countNum = WorksheetFunction.CountIf(Range("B5:B10"), ">" & Num) 'output Range("E7") = countNum End Sub 

Lesen Sie mehr: Excel COUNTIF mit Größer-als- und Kleiner-als-Kriterien

Ähnliche Lektüre

  • Excel COUNTIF-Funktion zum Zählen von Zellen größer als 0
  • Gemeinsame Verwendung der Funktionen IF und COUNTIF in Excel
  • Excel COUNTIF zu zählen Zelle, die Text aus einer anderen Zelle enthält
  • Verwendung der Funktion COUNTIF zur Berechnung des Prozentsatzes in Excel

4. die Funktion COUNTIF mit einem Objektbereich in Excel

Sie können eine Gruppe von Zellen dem Bereich Objekt und verwenden Sie dann diese Bereich Objekt um Werte in Excel zu zählen.

Schritte:

  • Öffnen Sie Visual Basic-Editor von der Entwickler Registerkarte und einfügen. a Modul im Code-Fenster.
  • Kopieren Sie im Codefenster den folgenden Code und fügen Sie ihn ein.
 Sub ExCountIFRange() Dim iRng As Range 'den Bereich der Zellen zuweisen Set iRng = Range("B5:B10") 'den Bereich in der Formel verwenden Range("B13") = WorksheetFunction.SumIf(iRng, ">1") 'das Bereichsobjekt freigeben Set iRng = Nothing End Sub 

Ihr Code ist nun einsatzbereit.

  • ausführen. den Code und Sie erhalten die Gesamtzahl mit einem Summenwert.

Lesen Sie mehr: Verwendung von COUNTIF für nicht zusammenhängende Bereiche in Excel

5. die COUNTIF-Formelmethode in Excel

Sie können auch die Formel und/oder FormelR1C1 Methode zur Anwendung einer COUNTIF zu einer Zelle in VBA Diese Methoden sind flexibler bei der Durchführung solcher Operationen.

5.1 Die Formelmethode

Die Formel Methode ermöglicht die Angabe des Zellbereichs als B5:B10 wie unten im Beispiel gezeigt.

Schritte:

  • Im Codefenster des Programms Visual Basic-Editor kopieren Sie den folgenden Code und fügen Sie ihn ein.
 Option Explicit Sub ExCountIfFormula() Range("B13").Formula = "=COUNTIF(B5:B10, "">1"")" End Sub 

Ihr Code ist nun einsatzbereit.

Dieses Codestück liefert Ihnen die Gesamtzahl der gewünschten Daten.

5.2 Die FormelR1C1-Methode

Die FormelR1C1 Methode ist flexibler, da sie nicht auf einen bestimmten Bereich von Zellen beschränkt ist.

Mit demselben Datensatz werden wir nun lernen, wie man FormelR1C1 zum Zählen der Werte in VBA .

Schritte:

  • Im Codefenster des Programms Visual Basic-Editor kopieren Sie den folgenden Code und fügen Sie ihn ein.
 Option Explicit Sub ExCountIfFormulaRC() Range("B13").FormulaR1C1 = "=COUNTIF(R[-8]C:R[-1]C,"">2"")" End Sub 

Ihr Code ist nun einsatzbereit.

Mit diesem Code erhalten Sie auch die Gesamtzahl der von Ihnen benötigten Daten.

Wenn Sie den Ausgabebereich nicht festlegen möchten, können Sie diesen Code noch flexibler gestalten, indem Sie ihn wie folgt schreiben,

 Option Explicit Sub ExCountIfFormulaRC() ActiveCell.FormulaR1C1 = "=COUNTIF(R[-8]C:R[-1]C,"">2"")" End Sub 

Die Formel zählt die Zellen, die die Bedingung erfüllen, und setzt die Antwort in das Feld ActiveCell in Ihrem Arbeitsblatt. Der Bereich innerhalb der COUNTIF Funktion muss mit der Option Reihe (R) und Säule (C) Syntax.

Lesen Sie mehr: Wie wendet man COUNTIF zwischen zwei Zellwerten in Excel an?

6 Zuweisung des Ergebnisses der Funktion COUNTIF an eine Variable

Wenn Sie das Ergebnis Ihrer Formel nicht in Ihrem Excel-Datensatz, sondern an anderer Stelle verwenden möchten, können Sie das Ergebnis einer Variablen zuweisen und später in Ihrem Code verwenden.

Die VBA Der Code dafür lautet,

 Sub AssignCountIfVariable() Dim iResult As Double 'Die Variable zuweisen iResult = Application.WorksheetFunction.CountIf(Range("B5:B10"), "<3") 'Das Ergebnis anzeigen MsgBox "Die Anzahl der Zellen mit einem Wert kleiner als 3 ist " & iResult End Sub 

Das Ergebnis wird in der Excel-Meldungsbox angezeigt.

Lesen Sie mehr: COUNTIF Excel Beispiel (22 Beispiele)

Schlussfolgerung

In diesem Artikel haben Sie erfahren, wie Sie die COUNTIF Funktion in Excel mit VBA Ich hoffe, dass dieser Artikel für Sie von Nutzen war. Wenn Sie Fragen zum Thema haben, können Sie sich gerne an mich wenden.

Hugh West ist ein äußerst erfahrener Excel-Trainer und -Analyst mit über 10 Jahren Erfahrung in der Branche. Er verfügt über einen Bachelor-Abschluss in Rechnungswesen und Finanzen sowie einen Master-Abschluss in Betriebswirtschaft. Hugh hat eine Leidenschaft für das Unterrichten und hat einen einzigartigen Lehransatz entwickelt, der leicht zu befolgen und zu verstehen ist. Seine Expertenkenntnisse in Excel haben Tausenden von Studenten und Berufstätigen auf der ganzen Welt geholfen, ihre Fähigkeiten zu verbessern und in ihrer Karriere herausragende Leistungen zu erbringen. Über seinen Blog teilt Hugh sein Wissen mit der Welt und bietet kostenlose Excel-Tutorials und Online-Schulungen an, um Einzelpersonen und Unternehmen dabei zu helfen, ihr volles Potenzial auszuschöpfen.