RechercheV si absence cellule cherchée

Brigitte

XLDnaute Barbatruc
Bonjour,

Pourriez-vous nous aider sur le problème suivant (exposé dans la pièce jointe) :

Lorsqu'une rechercheV (ou index/equiv) n'aboutit pas (en raison de l'absence d'une référence dans la plage de recherche), comment obtenir en résultat au lieu de N#A ou bien du résultat immédiatement inférieur, la correspondance de la valeur de la cellule immédiatement SUPERIEURE.

La pièce jointe est, je l'espère, un peu plus claire.

Merci à vous. [file name=Pascal_Recherche.zip size=2827]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Pascal_Recherche.zip[/file]
 

Pièces jointes

  • Pascal_Recherche.zip
    2.8 KB · Affichages: 17

andré

XLDnaute Barbatruc
Rebonjour Brigitte,

Essai d'explication (et pas de commentaires de la part des 'pointilleux' s.v.pl.)

Il me semble que tu as compris le début de la formule.
Si la valeur cherchée est trouvée (NB.SI >0), alors la 1° formule est d'application, si non la 2°.

La 1° formule, il me semble aussi que tu l'as comprise.
Renvoie-moi la valeur correspondante au numéro de la ligne (INDEX) dans la plage X : X (1° argument) correspondante (EQUIV) au critère (2° argument) qui se trouve dans une autre colonne Y : Y (3° argument), ou bien dis que c'est faux (0 = 4° argument).

La 2° formule est identique à la 1°, à la différence de ce que le 4° argummnt est 1, c'est à dire : si tu ne trouves pas, renvoie-moi la valeur précédente.

Le +1 se trouve après la parenthèse de fermeture de la fonction EQUIV, et est donc un argument de la fonction INDEX.
Le +1 signifie donc : ne me renvoie pas la valeur correspondante au numéro de la ligne (INDEX), mais bien la valeur correspondante au numéro de la ligne suivante.

Si tu remplaces +1 par -1, la formule renverras la valeur de la ligne précédente.
Si tu veux, tu peux comparer cela à la fonction DECALER.

Je ne sais pas si mon explication est claire, mais je reste à ta disposition pour toute explication complémentaire que tu souhaiterais obtenir.

Bonne soirée.
Â+

PS : Puis-je te demander, à l'avenir, de quelque peu surveiller la rédaction de tes messages.
si j'arrivais à faire marcher ta tienne pourrait faire jaser des personnes qui ne te connaissent pas !

Message édité par: andré, à: 24/05/2006 19:05
 

Brigitte

XLDnaute Barbatruc
Ouah, ca valait le coup d'attendre, oui j'ai compris. Merci André et encore pardon de t'avoir confondu avec Gérard...

Je me demandais d'ailleurs pourquoi Gérard tout d'un coup me proposait un NBSI... au lieu de son ESTERREUR.

D'ailleurs, je n'ai pas réussi sa formule.

Et celle d'Eric vient enfin de marcher, en fait, fallait classer la source de manière décroissante, je croyais l'avoir fait, mais sûrement pas... Peut être que pour Gérard, c pareil.

Donc je persévère, je préfère ta tienne à celle d'Eric... :) :) bien que celle d'Eric soit assez sympa aussi.

En fait, je vais te dire, j'aime les deux.

Manquerait plus qu'une formule de BarbaMonique pour compléter le tableau.

Bisous
 
L

laM

Guest
Bonjour à tous

D’autres alternatives (c’est juste pour la chasse au ZouZou)

=INDEX(Source!B$2:B$23;EQUIV(A2;Source!A$2:A$23;-1))
Liste dans l'ordre décroissant avec le dernier paramètre d'EQUIV à -1
pour trouver la plus petite valeur supérieure ou égale au nombre cherché

ou alors

=RECHERCHEV(PETITE.VALEUR(Source!A$2:A$23;1+NB.SI(Source!A$2:A$23;'<'&Résultat!A5));Source!A$2:B$23;2;0)
Autre solution pour éviter les problèmes d'ordre croissant/décroissant
on compte, avec NB.SI les valeurs inférieures au nombre cherché
et avec PETITE.VALEUR on obtient la valeur correspondante au rang +1 (pour répondre à la condition égal ou supérieur)
il manque juste un RECHERCHEV pour avoir la valeur en vis à vis dans la 2ème colonne.

Au revoir à bientôt
Ou plutôt
BiZou [file name=Pascal_20060525055245.zip size=3899]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Pascal_20060525055245.zip[/file]
 

Pièces jointes

  • Pascal_20060525055245.zip
    3.8 KB · Affichages: 20
L

laM

Guest
Bonjour à tous

D’autres alternatives (c’est juste pour la chasse au ZouZou)

=INDEX(Source!B$2:B$23;EQUIV(A2;Source!A$2:A$23;-1))
Liste dans l'ordre décroissant avec le dernier paramètre d'EQUIV à -1
pour trouver la plus petite valeur supérieure ou égale au nombre cherché

ou alors

=RECHERCHEV(PETITE.VALEUR(Source!A$2:A$23;1+NB.SI(Source!A$2:A$23;'<'&Résultat!A5));Source!A$2:B$23;2;0)
Autre solution pour éviter les problèmes d'ordre croissant/décroissant
on compte, avec NB.SI les valeurs inférieures au nombre cherché
et avec PETITE.VALEUR on obtient la valeur correspondante au rang +1 (pour répondre à la condition égal ou supérieur)
il manque juste un RECHERCHEV pour avoir la valeur en vis à vis dans la 2ème colonne.

Au revoir à bientôt
Ou plutôt
BiZou [file name=Pascal_20060525055629.zip size=3899]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Pascal_20060525055629.zip[/file]
 

Pièces jointes

  • Pascal_20060525055629.zip
    3.8 KB · Affichages: 11

Brigitte

XLDnaute Barbatruc
Bonjour, bonjour,

Que vois-je de bon matin, Monique, LaM et André qui m'ont encore concocté de super formules !

Alors pour vous remercier tous, j'ai fait un petit fichier avec l'ensemble de vos formules reprises, ainsi on voit les différentes longueurs, facilités...

Merci encore mille fois.

Je soumets tout ca dès mardi à mon Directeur des Finances.

A bientôt pour d'autres aventures ! [file name=Pascal_RechercheV.zip size=5869]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Pascal_RechercheV.zip[/file]

Gros bisous nantais à tous !

Message édité par: Brigitte, à: 25/05/2006 12:03
 

Pièces jointes

  • Pascal_RechercheV.zip
    5.7 KB · Affichages: 20

Discussions similaires

Statistiques des forums

Discussions
312 381
Messages
2 087 818
Membres
103 666
dernier inscrit
gjoanou