Dépassé par formule 'Recherche' qui ne fonctionne pas

Bonjour,

Suite à de nombreuses recherche et tentative dans tous les sens, je n'arrive à comprendre pourquoi la formule de recherche ne fonctionne pas dans le cas ou il y a un une donnée (0,0XXXXXXXXXXXX) .

je joint une fichier qui sera certainement utile .

Quelqu'un aurait il réponse ?

D'avance grand merci

Il faut que tu mettes toujours ta plage de manière à ce que la cellule que tu recherches soit au début :

De cette manière

Désolé mais tu as changer ma formule .

Ta formule est une "RechercheV" alors que la mienne est une "Recheche".

Je suis d'accord avec ta réponse si la formule est "RechercheV" mais avec la formule "Recheche" je ne penses pas que ta réponse soit adapté, surtout que mes besoins sont pour la formule "Recheche" et non la formule "RechercheV".

Une autre piste ?

Aucune piste, c'est comme ça la fonction n'aime pas les décimales.. va savoir pourquoi.

Construis une fonction personnalisée

Ahhhhhh quel mister !

Justement c'était ma base d'une fonction personnalisée.

Si je débloque pas ça, je me trouve dans une impasse!

Si un génie détient la clé de ce mister je suis plus que preneur

Bonjour

Copie de l'aide d' Excel sur cette fonction:

"Important Les valeurs de l'argument vecteur_recherche doivent être placées en ordre croissant : ...,-2, -1, 0, 1, 2, ..., A-Z, FAUX, VRAI. Sinon, la fonction RECHERCHE peut donner une valeur incorrecte. Les majuscules les et minuscules sont traitées indifféremment."

Ce qui n'est pas le cas dans ton exemple

Cordialement

Je pense que ça imite la fonction recherche

function recherchespeciale(r1 as range, r2 as range, r3 as range) as variant
decalage = r3.column - r2.column
for each c in r2
if c.value = r1.value then
recherchespeciale = c.offset(0, decalage)
end if
next c
end function

Puis dans ta feuille

=recherchespeciale(C1;C4:C6;B4:B6)

Edit:

@Amadeus

Prennons cet exemple, qui devrait en théorie être équivalent à la boucle ci dessus.. Il marche dans un Sub, mais pas dans en worksheetfunction.. Je pense qu'ils ont un problème avec la fonction find qui ne marche pas bien sur du WS.. et que la fonction recherche de ws doit s'en servir.

Function recherchespeciale(r1 As Range, r2 As Range, r3 As Range) As Variant
decalage = r3.Column - r2.Column
recherchespeciale = r2.Find(r1.Value).Offset(0, decalage)
End Function

@ Amadéus

J'avais déjà lu l aide dans excel, je m étais bien arrêté sur la phrase qui stipule un ordre croissant et pour moi qui ne voulais pas dire grand chose car avec la fonction recherche dans le vecteur de recherche j ai toujours utilisé des donnés dans aucun ordre précis et cela fonctionnais bien . Seulement suite à ton message je vient de faire de nouveaux testes et il s’avère que l'ordre croissant n'est pas toujours inutile .

D'après ce que j'en déduit l'ordre croissant est à respecter que quand les valeurs dans le vecteur recherche sont des valeurs avec beaucoup de chiffre après la virgule et bien entendu supérieur à 0

Malheureusement pourquoi et surtout existe t'il une astuce pour (bifurquer)?car cela devient totalement illogique ....

@ EngueEngue

Merci pour ton code VBA , seulement mes besoins seront sur une référence relative qui seras la cellule active.

En faite, au finale je désire via Macro établir, dans la cellule active, le renvoie d'une valeur texte suivant 2 conditions par ligne de recherche . Je penses poster nouveau sujet pour cela si besoin.

Et bien il suffit d'utiliser activecell en l'appelant depuis un sub!

Ma recherchespecialefait que ton exemple marche.. si tu veux autre chose donne un autre exemple...

Bonjour

En D4 La fonction RECHERCHE peut être remplacée par

=CHOISIR(EQUIV(C1;C4:C6;0);B4:B6)

ce qui devrait résoudre le problème

Cordialement

Bonjour

Dixit, tu devrais tester ta formule, c'est pas très compliqué.

Si tu as lu le sujet depuis le début, tu as du voir que slash179 ne voulait pas d'une autre formule que RECHERCHE...

Parce que sinon, comme sur ce fichier joint (qui contient aussi une fonction personnalisée très polyvalente pour des recherches simples ou multiples) on peut élaborer plein de formules.

Je n'en ai mis que 3 ou 4

Cordialement

Rechercher des sujets similaires à "depasse formule recherche qui fonctionne pas"