countif problématique

E

Edouard

Guest
Bonjour le forum,
j'ai un problème qui ne date pas d'hier, il y a qq chose qui m'échappe en VB.

Tout ce que je veux faire, c'est mettre dans une variable NbCom le résultat d'un CountIf... Jusqu'ici, je mettais en fait le countif dans une cellule, et je récupérais la valeur.

J'ose croire qu'il est possible de faire ce genre d'opération sans encombrer mes cellules de formules !!!

Seulement voilà, j'ai une erreur d'objet manquant à la ligne

NbCom = application.worksheetfunction.countif( MaZone, LaCom)

avec le debugger, je sais voir que MaZone et LaCom sont corrects.

Mais comment faire alors ?

Est-ce que la variable doit être spéciale ?
Est-ce qu'il faut obligatoirement déclarer un objet (lequel?, et dont je ne saurais quoi faire) ?
Est-ce que je m'y prends vraiment mal ???

merci de m'éclairer
 
W

wally

Guest
Bonjour Edouard et le forum,

MaZone doit être un objet de type "Range". Il faut donc lui affecter une valeur à l'aide de l'instruction Set.

Voici un petit exemple permettant de compter le nombre d'apparitions de "Toto" dans la colonne A de la feuille "Feuil1" :

Dim MaZone As Range
Dim LaCom As String
Dim NbCom As Integer

Set MaZone = Worksheets("Feuil1").Range("A:A")
LaCom = "Toto"

NbCom = Application.WorksheetFunction.CountIf(MaZone, LaCom)


Slts

wally
 
E

Edouard

Guest
Merci Wally,

je vais essayer de ce pas, d'autant plus que dans l'aide, j'a effectivement vu qu'il semble falloir un Set.
Je ne savais pas quoi "Setter", je m'en étais donc abstenu...

Je dirai si ça résout mon problème...
 

Statistiques des forums

Discussions
312 229
Messages
2 086 422
Membres
103 206
dernier inscrit
diambote