• Initiateur de la discussion Initiateur de la discussion andré
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

andré

XLDnaute Barbatruc
Salut à vous tous,

J'ai à nouveau un trou de mémoire (lol).

Quelqu'un pourrait-il m'aider à retrouver la formule permettant de définir le contenu de la chaîne alpha-numérique d'une plage qui compte le plus d'occurences ?

Exemple :
Une plage contenant : oui, oui, 1, non, 2, non, oui
Dans une cellule je voudrais afficher 'oui', parce qu'il y a 3 oui dans la plage et seulement 2 non et 1

Problème évidemment s'il y a deux chaînes avec le même nombre d'occurences.
Il y a-t-il moyen d'afficher les deux chaînes ?

Â+
 
Bonjour André

Si tes données sont dans la plage A1:A6

=INDEX(A1:A6;EQUIV(MAX(SI(A1:A6<>0;NB.SI(A1:A6;A1:A6)));SI(A1:A6<>0;NB.SI(A1:A6;A1:A6));0);1)

André, j'avais répondu la semaine dernière sur cette question, tu oublies de me lire ?.

@+Jean-Marie
 
Bonjour Monique,

Avant tout, merci.

J'avais bien écrit : j'ai un trou de mémoire.
Ce n'était peut-être pas les termes exacts que j'aurais du employer.

Donc : SUBSTITUE() ou REMPLACE(), à ton choix, par :

Ayant été ébloui par la réponse de Monique à une question similaire, j'ai tout-à-fait oublié d'en prendre bonne note, et je ne la retrouve pas.

La réponse évidemment, parce que toi tu es toujours au poste (lol), et c'est très bien ainsi.

Bon dimanche.
Â+
 
Rebonjour Monique,

Heureusement que tu m'as dit que c'est une formule matricielle (lol).

Je le précise toutefois pour les autres.

J'avais bien trouvé une solution avec une colonne supplémentaire et la fonction NB.SI, puis dans une autre cellule la fonction RECHERCHEV(GRANDE.VALEUR(..., mais la tienne est bien plus subtile.
Cela me permettait toutefois d'afficher les doublons.

Vois-tu une possibilité d'afficher les doublons avec ta formule, soit deux ou plusieurs chaînes avec le même nombres d'occurences ?

Merci d'avance.
Â+
 
Bonjour,

Jean-Marie, à quoi tu joues ?

André,
toutes les occurrences, ordre décroissant
en D2 puis copier vers le bas
=INDEX(Zone;EQUIV(MAX(SI(NB.SI(D$1😀1;Zone)=0;NB.SI(Zone;Zone)));SI(NB.SI(D$1😀1;Zone)=0;NB.SI(Zone;Zone));0))

Au conditionnel, en F2 :
=SI(SOMME(SI(Zone<>'';1/NB.SI(Zone;Zone)))<LIGNES(F$2:F2);'';INDEX(Zone;EQUIV(MAX(SI(NB.SI(F$1:F1;Zone)=0;NB.SI(Zone;Zone)));SI(NB.SI(F$1:F1;Zone)=0;NB.SI(Zone;Zone));0)))

Ordre croissant, en H2 :
=INDEX(Zone;EQUIV(MIN(SI(Zone<>'';SI(NB.SI(H$1:H1;Zone)=0;NB.SI(Zone;Zone))));SI(Zone<>'';SI(NB.SI(H$1:H1;Zone)=0;NB.SI(Zone;Zone)));0))

Le fil en question, il y en a au moins 1 de Jmr,
les 2 véhicules qui ont consommé le plus de carburant,
et les 2 qui ont consommé le moins,
avec possibilité d'ex aequo
 
Bonjour André, Monique

J’aimerai votre avis sur ces autres versions
(formules matricielles adaptées de celles de Monique)

A1 :A6 contiennent : oui, oui, 1, non, 2, non
{=SI(MAX(NB.SI(A1:A6;A1:A6))=NB.SI(A1:A6;A1:A6);A1:A6;'')}
ce qui donne : oui, oui, , non, , non

Et avec
{=SI(MAX(NB.SI(A1:A6;A1:A6))=NB.SI(A1:A6;A1:A6);SI(1=NB.SI(DECALER(A1:A6;;;LIGNE());A1:A6);A1:A6;'');'')}
on vérifie qu’il n’y a qu’une occurrence de la « valeur testée positivement », entre la première cellule et la position actuelle
ce qui donne : oui, , , non, ,

Au revoir, à bientôt
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
7
Affichages
987
Retour