Bonjour Tracor, André
Je suis comme André, un peu dans le flou avec ton problème
Regarde le fichier ci-joint, dis-nous si l'exemple donné correspond à ta demande.
Les formules sont assez barbares, elles n’ont pas besoin de récupérer les valeurs dans d'autres cellules, donc tu pourrais les utiliser directement si tu adaptes les contantes liées au positionnement des formules dans la feuille (partie en gras dans les formules ci-dessous).
Exemple :
=SI(LIGNES(FREQUENCE(B:E;B:E))-SOMMEPROD((FREQUENCE(B:E;B:E)=0)*1)>=LIGNE()-3;INDEX($B$4:E$98;1+ENT((PETITE.VALEUR(SI(INDEX(FREQUENCE(B:E;B:E);LIGNE($B$1:$B$200);1)>0;LIGNE(A$1:A$200);65536);LIGNE()-3)-1)/COLONNES(B:E));1+MOD((PETITE.VALEUR(SI(INDEX(FREQUENCE(B:E;B:E);LIGNE($B$1:$B$200);1)>0;LIGNE(A$1:A$200);65536);LIGNE()-3)-1);COLONNES(B:E)));"")
=SI(LIGNES(FREQUENCE(B:E;B:E))-SOMMEPROD((FREQUENCE(B:E;B:E)=0)*1)>=LIGNE()-3;PETITE.VALEUR(INDEX($B$4:E$53;1+ENT((LIGNE($A$1:$A$200)-1)/COLONNES(B:E));1+MOD((LIGNE($A$1:$A$200)-1);COLONNES(B:E)))*(INDEX(FREQUENCE(B:E;B:E);LIGNE($A$1:$A$200);0)>0);SOMMEPROD((FREQUENCE(B:E;B:E)=0)*1)+LIGNE()-4);"")
le 4 n'est pas une erreur la matrice de fréquence à toujours une ligne en plus
=SI(LIGNES(FREQUENCE(B:E;B:E))-SOMMEPROD((FREQUENCE(B:E;B:E)=0)*1)>=LIGNE()-3;GRANDE.VALEUR(INDEX($B$4:E$53;1+ENT((LIGNE($A$1:$A$200)-1)/COLONNES(B:E));1+MOD((LIGNE($A$1:$A$200)-1);COLONNES(B:E)))*(INDEX(FREQUENCE(B:E;B:E);LIGNE($A$1:$A$200);0)>0);LIGNE()-3);"")
Si tu as une garde quantité de données, il est préférable d'utiliser une macro VBA, ce sera plus rapide. Ces formules indiquées dans le fichier, ont une limite physique, la plage ne doit pas contenir plus de 65535 cellules.
@+Jean-Marie