VBA COUNTIF
Les fonctions basées sur des critères sont les règles d'Excel dans les calculs. Au début de l'apprentissage d'Excel, il faut avoir appris le processus COUTNIF en Excel. Dans nos articles précédents, nous vous avons montré comment utiliser la fonction COUNTIF dans Excel VBA.
Reportez-vous à notre article sur la formule COUNTIF dans Excel pour connaître les bases de la fonction COUNTIF dans Excel VBA. Dans cet article, nous allons vous montrer comment utiliser la même fonction dans le codage VBA. Maintenant, nous allons voir la même formule dans VBA. Tout d'abord, COUNTIF n'est pas une fonction VBA; au lieu de cela, il s'agit d'une fonction de feuille de calcul accessible sous la classe de fonctions de feuille de calcul.

Exemple de fonction Excel VBA Countif
Ok, voyons l'exemple simple.
Regardez le même exemple ci-dessous de comptage des valeurs du lot.

Dans l'image ci-dessus, nous avons les noms de villes de la cellule A1 à A10. Dans la cellule C3, nous devons compter combien de fois le nom de la ville «Bangalore» apparaît dans la plage A1 à A10.
Ok, suivez les étapes ci-dessous pour écrire le code pour appliquer la fonction COUNTIF.
Étape 1: Démarrez la procédure Sub.
Code:
Option Explicit Sub Countif_Example1 () End Sub

Étape 2: Puisque nous devons stocker le résultat dans la cellule C3, démarrez la plage («C3»).
Code:
Sub Countif_Example1 () Range ("C3"). Value = End Sub

Étape 3: Dans la cellule C3, en appliquant la fonction Excel VBA COUNTIF, nous essayons d'arriver au résultat. Donc, pour accéder à la fonction, nous devons d'abord utiliser la classe Worksheet Function.
Code:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction. End Sub

Étape 4: À partir de la fonction perdue, sélectionnez excel VBA COUNTIF.
Code:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (End Sub

Étape 5: Si vous regardez les paramètres de la fonction VBA COUNTIF, nous ne voyons pas le paramètre, comme nous le voyons dans la feuille de calcul.

Comme nous pouvons le voir dans l'image ci-dessus dans la feuille de calcul, nous avons la syntaxe exacte, mais dans VBA, nous ne pouvons voir que Arg 1 & Arg 2.
Arg 1 est Range, sélectionnez donc la plage entre A1 et A10.
Code:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (Range ("A1: A10"), End Sub

Étape 6: Arg 2 est la valeur à compter de la plage A1 à A10. Dans cet exemple, nous devons calculer "Bangalore".
Code:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (Range ("A1: A10"), "Bangalore") End Sub

Ok, nous avons terminé.
Exécutez le code pour voir le résultat dans la cellule C3.

Nous avons obtenu le résultat 4. Puisque le nom de la ville «Bangalore» apparaissant dans la cellule A1, A4, A7 et A10, la fonction VBA COUNTIF a renvoyé le produit comme 4.
Si vous pouvez voir que le code VBA n'a renvoyé que le résultat de la formule, nous ne connaissons pas la procédure dans la barre de formule.

Pour arriver à la formule, nous devons écrire le code légèrement différemment. Vous trouverez ci-dessous le code pour appliquer la formule elle-même à la cellule.
Code:
Sub Countif_Example1 () Range ("C3"). Formula = "= CountIf (A1: A10," "Bangalore" ")" End Sub
Cela appliquera la formule à la cellule C3.

Arriver résultat avec des variables
Les variables font partie intégrante de tout langage de codage. Nous devons déclarer des variables pour fonctionner efficacement avec le code VBA. Par exemple, regardez le code ci-dessous.
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"
Alors maintenant, la variable «CriteteriaValue» contient la valeur «Bangalore».
Dans la ligne suivante, comme d'habitude, j'ai appliqué la fonction COUTNIF.
ResultCell = WorksheetFunction.CountIf (ValuesRange, CriteriaValue)
Comme ça, nous pouvons appliquer la fonction COUNTIF dans Excel VBA pour répondre à nos besoins.