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

Résolu
MLbefes Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   -
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 23541 Date d'inscription   Statut Contributeur Dernière intervention   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 Date d'inscription   Statut Membre Dernière intervention  
 
Merci beaucoup yg_be ! ça marche, je comprends mieux la fonction find.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > MLbefes Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
peux-tu alors marquer la discussion comme résolue?
0