Recherchv sur références similaire
Fermé
Maoandnano
Messages postés
37
Date d'inscription
lundi 8 janvier 2018
Statut
Membre
Dernière intervention
30 mai 2018
-
22 mai 2018 à 16:32
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 23 mai 2018 à 10:29
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 23 mai 2018 à 10:29
A voir également:
- Recherchv sur références similaire
- Site similaire a coco - Guide
- Site similaire zone telechargement - Guide
- Il existe une ou plusieurs références circulaires ✓ - Forum Excel
- Remplaçant de Coco : quelles solutions pour tchater gratuitement en ligne ? - Guide
- Excel a rencontré un problème au niveau d'une ou de plusieurs références de formules - Forum Bureautique
2 réponses
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 411
Modifié le 22 mai 2018 à 16:45
Modifié le 22 mai 2018 à 16:45
Bonjour
si on comprend bien, vous pouvez avoir deux fois la même référence en colonne C, une avec une date en A et l'autre vide?
essayez alors (formule matricielle à limiter au nombre de lignes utiles pour ne pas alourdir le fichier):
=INDEX(Feuil1!$A$1:$C$100;SOMMEPROD(($C$1:$C$100=A1)*($A$1:$A$100>0)*(LIGNE($A$1:$A$100)));1)
formule à entrer avec la touche enter en maintenant les touches ctrl et shift enfoncées. elle doit s'afficher automatiquement entre accolades dans la barre de formule
ou plus simplement si vous ne voulez ressortir que la date de la colonne A, toujours en matricielle:
=MAX(SI(C1:C100=A1;B1:B100))
crdlmnt
si on comprend bien, vous pouvez avoir deux fois la même référence en colonne C, une avec une date en A et l'autre vide?
essayez alors (formule matricielle à limiter au nombre de lignes utiles pour ne pas alourdir le fichier):
=INDEX(Feuil1!$A$1:$C$100;SOMMEPROD(($C$1:$C$100=A1)*($A$1:$A$100>0)*(LIGNE($A$1:$A$100)));1)
formule à entrer avec la touche enter en maintenant les touches ctrl et shift enfoncées. elle doit s'afficher automatiquement entre accolades dans la barre de formule
- ne fonctionne que si une seule ligne contenant la référence contient une date
- les champs commencent obligatoirement en ligne 1
ou plus simplement si vous ne voulez ressortir que la date de la colonne A, toujours en matricielle:
=MAX(SI(C1:C100=A1;B1:B100))
crdlmnt
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 411
Modifié le 23 mai 2018 à 10:27
Modifié le 23 mai 2018 à 10:27
Bonjour
Plusieurs remarques:
_il faut bloquer les plages avec les signes $ pour pouvoir tirer la formule, par ex:$E$6:$F$10
exemple RECHERCHEV(I6;$E$6:$F$10;2;FAUX)) ou ;0)
sinon le code va chercher une valeur proche inférieure dans une liste classée
=MAX(SI(E6:E10=I6;F6:F10))
(Rappel matricielle à entrer avec la touche enter en maintenant les touches ctrl et shift enfoncées)
soit vous allez dans les options Excel et dans "options avancées", vous décochez la ligne "afficher un 0 dans les cellules de valeurs nulles"
soit vous écrivez:
=SI(MAX(SI(E6:E10=I6;F6:F10))=0;"";MAX(SI(E6:E10=I6;F6:F10)))
toujours en matricielle
=SI(NB.SI($I$6:I6;I6)>1;"doublon";SI(MAX(SI($E$6:$E$10=$I6;$F$6:$F$10))=0;"";MAX(SI($E$6:$E$10=$I6;$F$6:$F$10))))
dans tous les cas, surveillez bien les positions des $ et l'entrée en matricielle
voila ce que ça pourrait donner:
https://mon-partage.fr/f/M0FiMwrT/
revenez si besoin
crdlmnt
Plusieurs remarques:
- 1°) pour le principe: vous avez "tiré" la formule vers le bas sans bloquer les adresses des plages, ce qui fait qu'elles se décalent à chaque ligne par ex: E6:F10 devient E7:F11 etc...
_il faut bloquer les plages avec les signes $ pour pouvoir tirer la formule, par ex:$E$6:$F$10
- 2°)Accessoirement, la formule de recherche ne fonctionnera correctement (et encore, voir la suite au point suivant) que si vous compléter le code avec un 0 ou FAUX
exemple RECHERCHEV(I6;$E$6:$F$10;2;FAUX)) ou ;0)
sinon le code va chercher une valeur proche inférieure dans une liste classée
- 3°)Après ces précisions sur le code RECHERCHEV, i reste à dire qu'il ne peut pas résoudre votre problème, car cette formule retournera toujours la 1° valeur de F sur la ligne qui contient le code en E. Autrement dit: ressort une date si la 1° ligne du code affiche une date, ne ressort rien si la 1° ligne du code est vide en F
- 4°) d'où la nécessité d'utiliser une matricielle pour ressortir la valeur maximum de nF selon le code en E, soit en J6, et celle ci devrait convenir:
=MAX(SI(E6:E10=I6;F6:F10))
(Rappel matricielle à entrer avec la touche enter en maintenant les touches ctrl et shift enfoncées)
- 5°) cette formule va renvoyer 0 quand le code est vide. (il n'y en a pas dans votre exemple)Deux options pour éviter ce 0:
soit vous allez dans les options Excel et dans "options avancées", vous décochez la ligne "afficher un 0 dans les cellules de valeurs nulles"
soit vous écrivez:
=SI(MAX(SI(E6:E10=I6;F6:F10))=0;"";MAX(SI(E6:E10=I6;F6:F10)))
toujours en matricielle
- 6°) cette formule va vous renvoyer plusieurs fois le même résultat si vous avez plusieurs fois le même code en I c'est le cas en I6,I8,I10. Vous pouvez éviter ça en écrivant:
=SI(NB.SI($I$6:I6;I6)>1;"doublon";SI(MAX(SI($E$6:$E$10=$I6;$F$6:$F$10))=0;"";MAX(SI($E$6:$E$10=$I6;$F$6:$F$10))))
dans tous les cas, surveillez bien les positions des $ et l'entrée en matricielle
voila ce que ça pourrait donner:
https://mon-partage.fr/f/M0FiMwrT/
revenez si besoin
crdlmnt
Maoandnano
Messages postés
37
Date d'inscription
lundi 8 janvier 2018
Statut
Membre
Dernière intervention
30 mai 2018
23 mai 2018 à 10:23
23 mai 2018 à 10:23
Bonjour, il semblerait que votre réponse n'est pas était publié en entier.
Cordialement
Maoandnano
Cordialement
Maoandnano
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 411
23 mai 2018 à 10:29
23 mai 2018 à 10:29
Elle était partie un peu vite, maintenant elle est complète
22 mai 2018 à 16:44
22 mai 2018 à 16:46
23 mai 2018 à 09:40
https://www.cjoint.com/c/HExhN6XUDsB
Encore merci