Recherche sur >255 caractères
Les fonctions de recherche, aussi
bien recherche() – et ses cousins rechercheH() et rechercheV() – que la fonction equiv() – sont tout à fait incapables de trouver un résultat
quand la chaîne recherchée contient plus de 255 caractères.
Pour illustrer cela, nous avons
mis en scène l’exemple suivant.
En A1, un texte contenant l’alphabet.
En A2, recopiée vers le bas, la formule =A1&$A$1.
En B1, recopiée vers le bas, la formule =nbcar(A1).
Formule de C1 : =equiv(A1;A:A;0)
Formule de D1 : =recherchev(A1;$A$1:$B$14;2;faux)
Manifestement, quand on copie ces
deux formules vers le bas, on constate qu’elles ne fonctionnent plus quand le
texte recherché comporte plus de 255 caractères !
Formule de E1, trouvée dans ExcelWays :
=sommeprod(($B$1:$B$14=B1)*ligne($B$1:$B$14))
Formule de F1, inspirée d’une
formule proposée par Shane
Devenshire :
=equiv(vrai;$A$1:$A$14=A1;0)
Cette dernière formule est matricielle, donc validée avec [Ctrl]-[Maj]-[Entrée].
Et voilà ! Vous avez
désormais deux façons de faire des recherches sur des chaînes de plus de 255
caractères !
1 Commentaire(s):
Merci beaucoup ! Je préfère la seconde solution : Equiv() renvoie la première ligne avec laquelle ça matche ; alors que la première renvoie la somme des lignes avec lesquelles il y a match. Ainsi, la solution avec Equiv() permet d'utiliser directement un indirect() alors le SommeProd() ne sert pas à grand-chose s'il peut y avoir plusieurs fois la chaine recherchée dans la zone de recherche.
By Anonyme, sur 6:52 PM
Enregistrer un commentaire
<< Accueil