AIDE: formule créant un Vlookup avec plusieurs conditions

Bonjour,

Je recois un fichier qui est un extract de données et je souhaite le réorganisé dans un autre onglet.

Pour cela il faudrait que j'utilise une fonction qui soit une VLOOKUP avec plusieurs conditions.

Voici le fichier que je recois:

number simplified /NUMBER /R /ID /start date /end date /status

00041782 /00041782-X /A.12 /OWF /22.05.2011 /22.05.2011 /wwww

00041782 /00041782-Y /A /3DWF /23.05.2011 /23.05.2011 /xxx

00041782 /00041782-X /A /2DWF /25.05.2011 /25.05.2011 /yyy

00041782 /00041782-Y /B /3DWF /23.05.2011 /23.05.2011 /zzz

00041782 /00041782-X /B /2DWF /25.05.2011 /25.05.2011 /aaaaa

00041782 /00041782-Y /C /3DWF /27.05.2011 /blank /bbbb

Voici l'autre onglet où les données sont réorganisées , avec les conditions:

number simplified /R /ID /status /start date /end date /ID /status /start date /end date

00041782 /A/OWF /formula1 /formula2 /formula3 /3DWF /formula 4 /formula 5 /formula 6

Pour la formule 1:

souhaité: Prendre la valeur de la colonne G (soit le status), si number simplified=00041782 et R contient lettre A et ID=OWF

essayé: {INDEX(Extract!G:G;(MATCH(1;(A2=Extract!A:A)*(B2=Extract!C:C)*(C2=Extract!D:D);0)))}

obtenu: #REF!

Pour la formule 2:souhaité: Prendre la valeur de la colonne E (soit la date de début), si number siplified=00041482 et R contient lettre A et ID=OWF

et ainsi de suite...

J'ai regardé sur plein de sites, forums mais je n'arrive pas à obtenir le résultat voulu.

Désolé pour les tableaux mais je ne suis pas encore experte dans le forum et les copier/coller de mes tableaux ne marchent pas

S'il vous plait pourriez-vous m'aider, c'est tres important.

Merci d'avance

Salut et bienvenue sur le Forum,

Avec un fichier exemple (si possible en .xls), ce serait quand même plus facile à t'aider

A te relire.

bonjour

un essai

sans fichier ; je ne me suis pas pris la tete ; j'ai tout mis sur la meme feuille ; mais le principe est la (il me semble)

137larchd12.xls (19.50 Ko)

cordialement

ps Amadeus ; j'ai taté de la" bien belle soution" ;meme avec des col intermediaires pour simplifier le sommeprod : resultat = coton

Merci tulipe_4 !!

Je vois que dans la formule que tu as utilisé il faut rajouter un 1 ou 3 sur le coté. Cela ne m'est pas possible.

Après une énième tentative j'ai enfin eu le résultat escompté avec cette formule:

{INDEX(Extract!G:G;(MATCH(1;(A2=Extract!A:A)*(B2=Extract!C:C)*(C2=Extract!D:D);0)))}

J'ai joint le fichier, cette fois ci

La seule faiblesse de cette formule est que si j'ai dans la colonne R quelaue chose qui autre que la condition A, mais A.16, j'obtiens un non applicable.

Y aurait-il une une sigle ou fonction qui me permette de dire: doit contenir A et pas =A (soit changer la parti en gras ci-dessous)?

{INDEX(Extract!G:G;(MATCH(1;(A2=Extract!A:A)*(B2=Extract!C:C)*(C2=Extract!D:D);0)))}

95test.xlsx (12.45 Ko)

bonjour

le 1 et le 3 sont le resultat d'une formule qui positionne en fonction de tes criteres ; tu ne me feras pas croire que sur 36500lignes et x colonnes ,tu ne va pas trouver un petit coin pour caser cela ou meme sur un autre onglet ....... a defaut de masquer cette col intermediaire

a tout hasard essaye de caser la fonction CHERCHE dans ta formule qui doit etre magique

du coup je suis sur une autre piste

cordialement

-- 15 Août 2011, 22:04 --

re

j'ai cherché et, trouvé une solution ; disons "satisfaisante" sans colonne intermediaire

=INDEX(G$2:G$7;PETITE.VALEUR(SI(SI(A$2:A$7=A$2;SI(D$2:D$7=D$2;SI(ESTERREUR(CHERCHE("a";C$2:C$7)>0);0;CHERCHE("a";C$2:C$7)>0)));LIGNE(A$2:A$7)-1;"");LIGNE(A1)))

formule matricielle a valider avec ctrl/ maj (shift)/ Entrée les 3 touches en meme temps

je l'ai faite sur mon fichier ; je te laisse mettre les extract! au bons endroits ;si tu n'y arrives pas fais le savoir

bonne soirée

bonjour

sur ton fichier

127larch-4.zip (6.09 Ko)

cordialement

ca marche nickel!!

Est ce que je pourrais avoir une explication de cette partie de formule? pour être sur de pouvoir la maintenir ou la customiser si besoin:

=INDEX(Extract!G$2:G$7;SMALL(IF(IF(Extract!A$2:A$7=A$2;IF(Extract!D$2:D$7=C$2;IF(ISERROR(SEARCH($B$2;Extract!C$2:C$7)>0);0;SEARCH($B$2;Extract!C$2:C$7)>0)));ROW(Extract!A$2:A$7)-1"");ROW(A1)))

Juste par curiosité, j'ai eu une proposition de formule du type:

=INDEX(Extract!G2:G100;MATCH(1;(ISNUMBER(SEARCH(A2;Extract!A2:A100)))*(B2=Extract!C2:C100)*(C2=Extract!D2:D100);0)))

j'obtiens un NA mais elle a le petit plus de garder la meme philosophie de la formule ss cas particulier.

bonjour

explications

si les 3 criteres correspondent >>>donner leur n° de ligne respctif ensuite SMALL les classe par ordre croissant et continu ; ces n° sont utilises par INDEX

le tronçon SI(ESTRREUR( CHERCHE(......... detecte la presence de la condition pour les A....... mais comme CHERCHE peux renvoyer une valeur d'erreur (#valeur#)qui peux bouziller le melange des 3 conditions :il faut l'annuler avec SI (ESTERREUR

L' ensemble de cette fonction est matriciel donc avalider avec ctrl/ maj / Entée les 3 touches en meme temps sinon ça ne marche pas

cordialement

Super merci bcp.

Bonne continuation

Rechercher des sujets similaires à "aide formule creant vlookup conditions"