Rechercher une valeur commençant par un "0" (exp 0.1) avec find

Résolu
MLbefes Messages postés 4 Statut Membre -  
yg_be Messages postés 24281 Statut Contributeur -
Bonjour,

j'ai deux listes de valeurs.

Liste 1 :
0
0.1
0.2
0.3
...
8
(avec un pas régulier)

Liste 2 :
-0.1
0
0.1
0.1
0.1
0.2
0.3
0.4
0.4
0.4
...
(toujours croissante mais pas de pas régulier)

j'utilise un code vba pour savoir où se situe la valeur de la Liste 2 dans la Liste 1. Connaissant la colonne, je fais une recherche sur les lignes.

Le code fonction très bien sauf pour les nombres entiers 2 ; 3 ; 4 ... qui sont identifiés comme 0.2 ; 0.3 ; 0.4 ; 0.5.

l'extrait du code est le suivant :
d=1 'valeur recherchée
Ligne = PlageRecherche.Find(d).Row

"Ligne" sera la ligne de la valeur 0.1 et non 1. Le 0 n'est pas identifié comme un caractère.

auriez-vous une idée pliiz ?

Configuration: Windows / Firefox 92.0
A voir également:

1 réponse

yg_be Messages postés 24281 Statut Contributeur Ambassadeur 1 584
 
bonjour,
je pense que, par défaut, find() recherche si le texte cherché est présent dans le contenu de la cellule.
tu veux sans doute que les texte cherché soit égal au contenu de la cellule.
tu devrais alors spécifier
LookAt:=xlWhole
.
Ligne = PlageRecherche.Find(What:=d,  LookAt:=xlWhole).Row
0
MLbefes Messages postés 4 Statut Membre
 
Merci beaucoup yg_be ! ça marche, je comprends mieux la fonction find.
0
yg_be Messages postés 24281 Statut Contributeur 1 584 > MLbefes Messages postés 4 Statut Membre
 
peux-tu alors marquer la discussion comme résolue?
0