Comment utiliser la fonction COUNTA dans VBA (avec exemples)



Vous pouvez utiliser la méthode CountA dans VBA pour compter le nombre de cellules non vides dans une plage spécifique.

Voici une façon courante d’utiliser cette méthode dans la pratique :

Sub CountARange()
    Range("C1") = WorksheetFunction.CountA(Range("A1:A10"))
End Sub

Cet exemple particulier compte le nombre de cellules non vides dans la plage A1:A10 et affiche le résultat dans la cellule C1 .

Si vous souhaitez plutôt afficher le nombre de cellules non vides dans une boîte de message, vous pouvez utiliser la syntaxe suivante :

Sub CountARange()
    'Create variable to hold results of CountA
    Dim counta As Single
    
    'Calculate number of non-empty cells in range
    counta = WorksheetFunction.CountA(Range("A1:A10"))
    
    'Display the result
    MsgBox "Number of Non-Empty Cells in Range:" & counta 
End Sub

Les exemples suivants montrent comment utiliser chacune de ces méthodes en pratique avec la colonne de valeurs suivante dans Excel :

Exemple 1 : compter les cellules non vides dans la plage et afficher les résultats dans la cellule

Supposons que nous souhaitions calculer le nombre de cellules non vides dans la plage A1:A10 et afficher les résultats dans une cellule spécifique.

Nous pouvons créer la macro suivante pour ce faire :

Sub CountARange()
    Range("C1") = WorksheetFunction.CountA(Range("A1:A10"))
End Sub

Lorsque nous exécutons cette macro, nous recevons le résultat suivant :

Notez que la cellule C1 contient la valeur 7 .

Cela nous indique qu’il y a 7 cellules non vides dans la plage A1:A10 .

Exemple 2 : compter les cellules non vides dans la plage et afficher les résultats dans la zone de message

Supposons que nous souhaitions plutôt compter le nombre de cellules non vides dans la plage A1: A10 et afficher les résultats dans une boîte de message.

Nous pouvons créer la macro suivante pour ce faire :

Sub CountARange()
    'Create variable to hold results of CountA
    Dim counta As Single
    
    'Calculate number of non-empty cells in range
    counta = WorksheetFunction.CountA(Range("A1:A10"))
    
    'Display the result
    MsgBox "Number of Non-Empty Cells in Range:" & counta 
End Sub

Lorsque nous exécutons cette macro, nous recevons le résultat suivant :

Exemple de fonction VBA CountA

La boîte de message nous indique qu’il y a 7 cellules non vides dans la plage A1:A10 .

Notez que si vous souhaitez plutôt compter le nombre de cellules non vides dans une colonne entière, vous pouvez plutôt taper A:A .

Cela calculera le nombre de cellules non vides dans toute la colonne A.

Remarque : Vous pouvez trouver la documentation complète de la méthode VBA CountA ici .

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :

VBA : Comment écrire des fonctions AVERAGEIF et AVERAGEIFS
VBA : Comment écrire des fonctions SUMIF et SUMIFS
VBA : Comment écrire les fonctions COUNTIF et COUNTIFS

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *