Fonction RECHERCHE

  • Initiateur de la discussion Hamid
  • Date de début
H

Hamid

Guest
Salut,

Une petite question: La fonction RECHERCHEV ou H ne distingue pas la casse MAJ/MIN. Comment distinguer entre une chaîne de caractère MAJ ou MIN surtout si c'est la valeur cherchée.

Merci
 
A

andré

Guest
Salut Hamid,

La fonction EXACT est la seule, à mon niveau de connaissance d'XL, qui fasse la différence entre les majuscules et les minuscules.
Je ne vois pas comment la combiner sous une formule avec un RECHERCHEV (ou H), mais je crois qu'il y a moyen de le faire par macro en boucle sur une colonne en employant un RECHERCHEV, puis qui teste par la fonction EXACT la valeur trouvée, pour la retenir ou pour continuer la recherche.

Mais là, c'est trop fort pour moi.
Les "gros bras" d'XLD ne manqueront pas de t'apporter la solution.

Un peu de patience.
Ândré.
 
J

Jean-Marie

Guest
Bonsoir

Je remercie André pour son intervention, je ne connaissais pas cette fonction,
Tu trouveras une fonction matricielle

@+Jean-Marie
 

Pièces jointes

  • RechercheExact.xls
    8.5 KB · Affichages: 45
M

Monique

Guest
Bonsoir,

Une envie de jouer.
Les noms de A2 à A7, le nom recherché (TOTO) tapé en B1
Un nombre ou rien de B2 à B7

Nombre de TOTO
Non matricielle :
=SOMMEPROD((EXACT($B$1;A$2:A$7))*1)
Matricielles :
=SOMME(SI((EXACT(A$2:A$7;$B$1)*1);1))
=SOMME(EXACT(A$2:A$7;$B$1)*1)

Somme des nombres correspondant à TOTO :
Non matricielle :
=SOMMEPROD((EXACT($B$1;A$2:A$7)*(B$2:B$7)))
Matricielles :
=SOMME(SI(EXACT(A$2:A$7;$B$1);B$2:B$7))
=SOMME(EXACT(A$2:A$7;$B$1)*B$2:B$7)

Tout ça ne dit pas comment intégrer EXACT dans RECHERCHEV ou INDEX EQUIV
 
J

Jean-Marie

Guest
Re...

Suivant le numéro d'index renvoyé pas la fonction matricielle, retourne l'info de cellule dans la colonne B.

=INDEX(B:B;SI(A11<=C$9;GRANDE.VALEUR(LIGNE(A$2:A$7)*(EXACT(A$2:A$7;$B$1)*1);C$9-A10);"")*1).

@+Jean-Marie
 
A

andré

Guest
Resalut Hamid, salut Monique et Jean-Marie,

Le schmilblik avance !

Comme Hamid parle d'un RECHERCHEV, je suppose qu'il n'y a pas de doublons dans sa liste, si ce n'est avec une casse différente.

La formule : =SI(EXACT(B1;RECHERCHEV(B1;A2:A7;1;FAUX))=VRAI;RECHERCHEV(B1;A:B;2;FAUX);"") renvoie la valeur de la colonne B si la casse est respectée et ne renvoie rien si la casse est différente.

Je ne suis pas encore parvenu à remplacer le "" de cette formule par un deuxième RECHERCHEV à partir de la première valeur non exacte trouvée.

Je cherche à y imbriquer la fonction LIGNE, mais n'y suis par encore parvenu.
C'est pourquoi, depuis le départ, j'avais songé à du VBA et au fore next.

Je ne désespère pas de trouver une solution par formule.

Ândré.
 

Discussions similaires

Réponses
6
Affichages
326
Réponses
20
Affichages
565

Membres actuellement en ligne

Statistiques des forums

Discussions
314 655
Messages
2 111 604
Membres
111 217
dernier inscrit
aladinkabeya2