RechercheV avec conditions ?

Fermé
lorisb91 Messages postés 7 Date d'inscription dimanche 3 mai 2015 Statut Membre Dernière intervention 22 mai 2015 - 3 mai 2015 à 14:40
lorisb91 Messages postés 7 Date d'inscription dimanche 3 mai 2015 Statut Membre Dernière intervention 22 mai 2015 - 3 mai 2015 à 18:45
Bonjour,

Je suis en stage en entreprise et j'ai un problème sur excel.
Voilà, j'ai une colonne A avec une liste de code barre (exemple : R11-0013906) qui correspondent chacun à un capteur. Chaque code barre est donc unique et n'apparaît qu'une fois. Dans la colonne B j'ai leurs sensibilités. C'est deux colonnes sont les colonnes de "références"

L'entreprise a enregistré chaque étalonnage. Ainsi, pour chaque étalonnage, j'ai sur la colonne D, les codes barres (ils y sont tous plusieurs fois) et sur la colonne E les dates correspondants. J'ai classés la colonne A et D par ordre alphabétique et la colonne E par ordre chronologique en respectant la correspondance avec le code barre.

Mon problème est d'associer la sensibilité disponible en colonne B à chaque capteur uniquement pour la dernière date d'étalonnage.

Exemple: colonne A colonne B colonne D colonne E colonne F
R11-0013906 3.10^-3 R11-0013906 02/02/2013 ?
R11-0013906 15/01/2012 vide
R11-0013906 07/01/2011 vide
R11-0013907 3,2.10^-3 R11-0013907 15/03/2015 ?
R11-0013907 11/02/2014 vide

? sont les cases à remplir et "vide" les cases à ne rien mettre. J'ai essayé plein de fonctions, comme recherchev mais ils remplie les cases "vides", j'ai essayé plein de chose mais ça ne marche pas. Faudrait utiliser la fonction rechercheV avec une condition sur la date mais je ne sais pas faire.

3 réponses

DjiDji59430 Messages postés 4037 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 26 avril 2024 646
3 mai 2015 à 15:20
Bonjour lorisb91, et bienvenue,

Quand on joint un fichier-test, (avec TOUTES les explications) ou le fichier, c'est plus commode pour les intervenants. Et tu as plus de chances que quelqu'un s'intéresse à ton problème

1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans la discussion, et, dans ton message de réponse, tu fais : "Coller".

Cordialement.
0
lorisb91 Messages postés 7 Date d'inscription dimanche 3 mai 2015 Statut Membre Dernière intervention 22 mai 2015
3 mai 2015 à 16:32
oui désolé, c'est mieux comme ça. Donc dans la dernière colonne, je dois compléter la sensibilité pour chaque capteur uniquement pour la date la plus récente. La sensibilité est obtenue a partir de la colonne B.
https://www.cjoint.com/c/EEdqSzlCMp7
0
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523
3 mai 2015 à 16:53
Bonjour,

J'ai effectué un tri personnalisé sur le code barre (1er niveau, de A à Z) et la date d'étalonnage (2ème niveau, du plus récent au plus ancien).
Ensuite, j'ai appliqué la formule :
=SI(D3<>D2;RECHERCHEV(D3;$A$3:$B$88;2;FAUX);"")

https://www.cjoint.com/c/EEdrgVY13BI

A+
0
lorisb91 Messages postés 7 Date d'inscription dimanche 3 mai 2015 Statut Membre Dernière intervention 22 mai 2015
3 mai 2015 à 17:20
ok merci beaucoup
0
lorisb91 Messages postés 7 Date d'inscription dimanche 3 mai 2015 Statut Membre Dernière intervention 22 mai 2015
3 mai 2015 à 17:48
c'est encore moi...

je viens d'essayer ta formule pour une autre série de capteurs, au début ça fonctionne sans problème, puis tout d'un coup, il y a une erreur qui apparaît. J'ai essayé de trouver la source du problème, apparemment il s'agit d'une erreur de valeur qui serait fausse...je suis sur que c'est quelque chose de bête, mais j'avoue ne pas trouver...
https://www.cjoint.com/c/EEdsaj4O61R
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
3 mai 2015 à 18:02
Bonsoir
je débarque un peu en attendant l'ami Gyrus, (salut) mais je crois que le défaut est dans le fait que votre formule de RECHERCHE s'adresse au champ A3:B88, alors que le tableau de vos références est A3:B378
Ce n'est peut être pas là le problème, mais ça ne parait pas logique et en tous cas les références au dessous de A88 ne peuvent pas être prises en compte.
crdlmnt
0
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523 > Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022
3 mai 2015 à 18:30
Re-bonjour lorisb91,
Bonjour Vaucluse,

Effectivement, il faut adapter la formule selon la plage de recherche.
Dans ce nouvel exemple, la formule devient :
=SI(D3<>D2;RECHERCHEV(D3;$A$3:$B$378;2;FAUX);"")


Si cette plage est variable, tu peux déclarer une plage dynamique.
Voir l'exemple avec la déclaration de MaPlage, faisant référence à :
=DECALER(Feuil1!$A$3:$B$3;;;NBVAL(Feuil1!$A:$A)-2)

https://www.cjoint.com/c/EEdsSXGHytS

A+
0
lorisb91 Messages postés 7 Date d'inscription dimanche 3 mai 2015 Statut Membre Dernière intervention 22 mai 2015
3 mai 2015 à 18:45
ok merci beaucoup
0