Correction de formule

Fermé
Nadji444 Messages postés 6 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 7 janvier 2015 - 30 déc. 2014 à 11:35
Nadji444 Messages postés 6 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 7 janvier 2015 - 7 janv. 2015 à 10:45
Bonjour à tous.

Pouvez-vous m'aider à corriger cette formule s'il vous plait.
C'est un défit de mon employeur que j'aimerai relevé ;-)

Voici la formule : =IF([Liste_des_profils_v3.xlsx]Sheet1!B=CREVITS_Caroline+[Liste_des_profils_v3.xlsx]Sheet1!C=Av_Char_CCTV];[RECHERCHEV5[Prise_de_poste_sur_poste.xlsx]CCTV!($B$1;CHAMPS)];[non])

En gros, voici ce que je dois faire :
Si dans le classeur Liste des profils, dans le Sheet1 colonne B il trouve le nom CREVITS Caroline et que dans la colonne C du même classeur il trouve le mot Av_Char_CCTV, je veux qu'il mette la date la plus récente qu'il trouvera dans le fichier Prise de poste sur poste Sheet CCTV colonne B avec en colonne E le nom de CREVITS Carolien et ce grace à un Vlookup et si pas il trouve pas ça alors je veux qu'il mette non dans la colonne.

Dans le fichier Prise de poste sur poste, j'ai classé les dates par ordre décroissant pour que la plus récente soit la première.

D'avance un grand merci pour votre aide si précieuse.

8 réponses

redaiwa Messages postés 351 Date d'inscription mardi 7 octobre 2008 Statut Membre Dernière intervention 25 janvier 2024 119
30 déc. 2014 à 13:35
Salam Nadji444.

Je crois que ta question n'est pas assez claire, pourrais-tu joindre un fichier exemple pour nous aider à comprendre comment sont disposées tes données ?

A+
0
Nadji444 Messages postés 6 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 7 janvier 2015
30 déc. 2014 à 13:47
Il m'est impossible de vous joindre un fichier malheureusement.

Il s'agit de document officiel que ma société n'autorise pas à divulguez.

Peut-être je peux vous expliquer si vous me dites ce dont vous avez absolument besoin.
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
30 déc. 2014 à 13:51
Bonjour,

Rien ne t'empêche de créer un exemple de fichier anonymisé de quelques lignes, il n'est pas question de nous fournir ton fichier.
0
Nadji444 Messages postés 6 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 7 janvier 2015
30 déc. 2014 à 14:04
Est ce que ceci est sufficant?

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
redaiwa Messages postés 351 Date d'inscription mardi 7 octobre 2008 Statut Membre Dernière intervention 25 janvier 2024 119
Modifié par redaiwa le 30/12/2014 à 15:17
Salam Nadji444.

S'il t'est permis de modifier le tableau du classeur "Prise de Poste" en mettant le nom de l'agent en C et la date en D, alors je te propose la formule suivante :

=SI(NON(ESTERREUR(RECHERCHEV("Av Char CCTV";C:C;1;FAUX)));RECHERCHEV(A3;[Prise_de_poste_sur_poste.xlsx]CCTV!$C:$D;2;FAUX);"NON")

Is it OK?

PS : Apparemment, tu utilises une version Excel en anglais, il faudrait donc modifier les mots-clés de la formule par leurs équivalents anglais tels que:
SI = IF
NON = NOT
ESTERREUR = ISERROR
RECHERCHEV = VLOOKUP
FAUX = FALSE

"Repousse le mal par le bien; et voilà que celui avec qui tu avais une animosité devient tel un ami chaleureux" (Coran)
"Celui qui ne sait pas partager est infirme de ses émotions". (Marc Levy)
0
Nadji444 Messages postés 6 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 7 janvier 2015
30 déc. 2014 à 15:39
Encore merci mais ça ne fonctionne pas.

Je vois que dans votre formule il n'est mentionné nul part le nom de la personne,
hors dans mes fichier il y a d'autres noms que celui que je cherche. Dans les 2 fichiers.
Est ce normal?

Merci
0
redaiwa Messages postés 351 Date d'inscription mardi 7 octobre 2008 Statut Membre Dernière intervention 25 janvier 2024 119
30 déc. 2014 à 15:48
Salam Nadji.

Dans ton fichier image que tu as joint, le nom de la personne (en l'occurrence CREVITS Caroline) est en cellule A3 et la formule fait référence à cette cellule dans le 2ème RECHERCHEV.

Je dois quitter. A demain inchallah.
0
Nadji444 Messages postés 6 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 7 janvier 2015
30 déc. 2014 à 15:57
ok merci beaucoup.
Je vais encore chercher de mon côté.
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
Modifié par Mike-31 le 30/12/2014 à 18:48
Re,

Lorsqu'on te demande de créer un exemple de fichier anonymisé, ce n'est pas une capture écran qu'on attend.

bon essaye cette formule matricielle qu'il faudra confirmer en cliquant en même temps sur les trois touches de ton clavier Ctrl, Shift et Entrée, si tu fais bien la formule se placera entre accolades {} comme ceci { la formule}

si tes données commencent en ligne 1 jusqu'à la ligne 25
=INDEX(D1:D25;MAX(SI(("CREVITS Caroline
"=B1:B25)*("Av_Char_CCTV"=C1:C25);LIGNE(D1:D25);0)))

si tu places les critères en cellule I1 et I2 par exemple la formule se simplifie
=INDEX(D1:D25;MAX(SI((I1=B1:B25)*(I2=C1:C25);LIGNE(D1:D25);0)))

par contre si tes données commencent en ligne 2 il faudra apporter une correction -1 à ligne
=INDEX(D2:D25;MAX(SI((I1=B2:B25)*(I2=C2:C25);LIGNE(D2:D25)-1;0)))

si les données sont sur une autre onglet il vaudrait mieux nommer tes plages, exemple B2:B25 nommer Nom, la plage C2:C25 nommée Réf et la plage D2:D25 nommée Date
la formule
=INDEX(Sheet1!D2:D25;MAX(SI((I1=Sheet1!B2:B25)*(I2=Sheet1!C2:C25);LIGNE(Sheet1!D2:D25)-1;0)))
la formule devient
=INDEX(Date;MAX(SI((I1=Nom)*(I2=Réf);LIGNE(Date)-1;0)))

et si les données sont sur un autre classeur la formule compliquée
=INDEX([Liste_des_profils_v3.xlsx]Sheet1!D2:D25;MAX(SI((I1=[Liste_des_profils_v3.xlsx]Sheet1!B2:B25)*(I2=[Liste_des_profils_v3.xlsx]Sheet1!C2:C25);LIGNE([Liste_des_profils_v3.xlsx]Sheet1!D2:D25)-1;0)))

devient
=INDEX([Liste_des_profils_v3.xlsx]Date;MAX(SI((I1=[Liste_des_profils_v3.xlsx]Nom)*(I2=[Liste_des_profils_v3.xlsx]Réf);LIGNE([Liste_des_profils_v3.xlsx]Date)-1;0)))

en version Anglaise il n'y a que ligne à remplacer par ROW et la formule devient

=INDEX([Liste_des_profils_v3.xlsx]Date;MAX(SI((I1=[Liste_des_profils_v3.xlsx]Nom)*(I2=[Liste_des_profils_v3.xlsx]Réf);ROW([Liste_des_profils_v3.xlsx]Date)-1;0)))

et n'oublie pas de confirmer la formule en matricielle, la prochaine fois fourni un fichier on placera la formule dessus
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Nadji444 Messages postés 6 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 7 janvier 2015
7 janv. 2015 à 10:45
Merci beaucoup à toi.

ça devient un peu trop compliquer pour moi là perso.

J'ai trouvé quoi mettre dans ma formule mais il me la refuse et je ne sais pas pourquoi.

J'ai du faire un IF à 2 conditions avec un Vlookup en True et un NOT en False.

=IF(AND('[Liste des profils v3.xlsx]Sheet1'!$B:$B=A4 ;'[Liste des profils v3.xlsx]Sheet1'!$C:$C=D3);=VLOOKUP(B4;'\\bebscafs01\Public\12. Equipement - KU\Suivi\[Prise de poste sur poste].xlsxCCTV'!$C:$D;2;FALSE);"NOT")

Je vais essayer de vous faire un fichier et le joindre.

Bav.
0