Fonction CountIf et tableau vba

marcobosio

XLDnaute Nouveau
Hello,

j'ai un petit souci pour compter le nombre d'occurrences (avec la fonction CountIf) dans un tableau généré par VBA (de type tableau() ).

Le problème est lié à cette ligne de code :

Sheets("TDB").Range("A3").Offset(i, 2).Value = Application.WorksheetFunction.CountIf(Etat, "J")
... sachant qu' "Etat" est un tableau VBA, de type Etat(0 To t)

J'ai essayé de tout détailler dans le fichier Excel joint, en espérant que ce soit clair...

Merci !!
 

Pièces jointes

  • Test_countif.xls
    48 KB · Affichages: 225

Pierrot93

XLDnaute Barbatruc
Re : Fonction CountIf et tableau vba

Bonjour Marco

a priori le 1er argument de la fonction "CountIf" est un objet "Range" et non un tableau...

il faut sans doute faire une boucle sur la plage concernée et alimenter un compteur..

bon après midi
@+
 

pierrejean

XLDnaute Barbatruc
Re : Fonction CountIf et tableau vba

bonjour Marco

Salut Pierrot

non testée because ton fichier n'a pas le fichier source, une fonction qui devrait te donner le compte cherché

declarer
Public Etat()

Function compte(cherche As String)
compte = 0
For n = 0 To UBound(Etat)
If Etat(n) = cherche Then compte = compte + 1
Next n
End Function
 

ninbihan

XLDnaute Impliqué
Re : Fonction CountIf et tableau vba

Bonjour Marcobosio, Pierrot et Pierre Jean
Une variante sans fonction
Sheets("TDB").Range("A3").Offset(i, 2).Value = UBound(Etat) + 1 - Len(Replace(Join(Etat, ""), "J", ""))

Bon après midi

@+
 

Discussions similaires

Statistiques des forums

Discussions
312 167
Messages
2 085 901
Membres
103 026
dernier inscrit
NAT dan