Bonjour.
J'ai fait une fonction qui renvoi un boolean si il trouve une certaine valeur dans une plage de cellule.
Seulement la fonction "find" me retourne une erreur si elle ne trouve pas le mot alors qu'elle devrait me renvoyer "Nothing".
Je ne comprend pas mon erreur ...
*EDIT* : en fait je viens de me rendre compte que la fonction find me renvoie une valeur de type string contenant le résultat de ma recherche. Normalement elle ne devrait pas me renvoyer un type "Range" ? ...
Du coup ma fonction ne fonctionne jamais si ma variable "rngCellTx" n'est pas de type string ou variant ...
Bon bin là je suis complètement perdu ...
*/EDIT*
Voici ma fonction :
Si quelqu'un à une idée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Private Function AvecTaux() As Boolean ' Renvoie true si la valeur "Taux" est trouvé dans l'onglet VAP du fichier "0001-95.xls" Dim rngCellTx As Range ' Initialise le retour de la fonction AvecTaux= False ' On recherche la valeur dans le fichier excel rngCellTx = Workbooks("0001-95.xls").Sheets("VAP").Range("A1:AZ50").Find("Taux", , , xlPart, , , False) 'Cherche si la valeur "Taux" est présente ' Si on trouve un résultat on retourne la valeur true au résultat de la fonction If Not rngCellTx Is Nothing Then AvecTaux= True End If End Function
Pour le moment je peu me débrouiller avec une gestion d'erreur mais je trouve pas ça très propre.
L'erreur qu'il me retourne est "Variable objet ou variable de block with non définie". ... o_O?
Merci d'avance pour vos réponses.![]()
Partager