Problème de types dans l'écriture d'une fonction VBA

Résolu
Chloé -  
 Chloé -
Bonjour,

Je dois rédiger une fonction VBA qui va chercher un indicateur dans la colonne E d'un onglet donné. Une fois cette indicateur trouvé, j'aimerais que ma fonction compte le nombre d'occurence d'un mot donné dans une plage à droite de l'indicateur. Voici mon code:

Public Function CompteOcc(onglet As String, numctrl As Integer, texte As String) As Double
Dim cellule As range 
Dim ligne As Integer 
Dim plage As range
Dim compte As Double
Set cellule = Sheets(onglet).range("E:E").Find(numctrl)
ligne = cellule.Row 
Sheets(onglet).Activate
Set plage = Sheets(onglet).range(Cells(ligne, 6), Cells(ligne, 30))
compte = WorksheetFunction.CountIf(plage, texte)
CompteOcc = compte
End Function 


Mais lorsque j'essaie d'appliquer cette fonction dans une cellule en prenant d'autres cellules en arguments, celle-ci me renvoie une erreur #VALEUR!

Pourriez-vous m'aider à comprendre mon erreur?
Merci d'avance,

Chloé

A voir également:

4 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

Pour moi, avec votre code et des cellules en arguments, ca marche. #VALEUR apparait si le numctrl n'existe pas.
Il faudrait un exemple de votre fichier ou cela ne marche pas

A+
0
Chloé
 
Ci-joint un exemple dans lequel je n'arrive pas à faire fonctionner mon code: http://cjoint.com/?0IcvCQev3AV

Merci pour votre aide :)
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

fichier modifie:

https://www.cjoint.com/c/CIdiqsWeBOc

A+
0
Chloé
 
Merci beaucoup pour votre rapidité! C'est parfait!
0