Pour mon 1000ème, fichier doublons

david84

XLDnaute Barbatruc
Re : Pour mon 1000ème, fichier doublons

Re,
mromain, content que cela te plaise. Si tu as besoin d'autres explications sur des points que je n'ai pas expliqués, n'hésite pas. Quelquefois un petit détail permet de comprendre car il débloque la situation;).

Hasco, serait-ce donc un problème de version ?

chris, je t'ai placé un fichier avec les formules de cet onglet expurgées de la partie conditionnelle. Vois si cela change quelque chose:rolleyes:.
Sinon, je pourrais toujours essayer de passer par des formules nommées pour essayer...
Concernant le bug de l'étape 6, je l'avais réglé dans la version 2 (et donc dans celui-là, normalement c'est ok).
Si ce n'est pas cela, dis-moi dans quel onglet il se trouve.
Merci à tous pour vos retours et à bientôt:)
 

Pièces jointes

  • XLD_GestionDoublonsFonctionFréquence_V3.zip
    71.1 KB · Affichages: 45

mromain

XLDnaute Barbatruc
Re : Pour mon 1000ème, fichier doublons

Bonjour à tous,

Re david
Je me demandais (toujours sur le premier exemple, je n'ai pas encore eu le temps de creuser les autres), pourquoi n'utilises-tu pas cette formule plutôt que
Code:
Somme(N(Frequence(Equiv;Equiv)>0))
pour l'étape 8, à savoir la formule conditionnelle pour ne pas afficher les #NA.

L'utilisation d'un SOMMEPROD n'est-elle pas plus performante ?

a+
 
Dernière édition:

david84

XLDnaute Barbatruc
Re : Pour mon 1000ème, fichier doublons

Re,
bonjour mromain, dans le cas que tu cites, tu as raison, j'aurais pu l'utiliser.
En fait, j'ai préféré utiliser
=SOMME(N(FREQUENCE(EQUIV(Nom;Nom;0);EQUIV(Nom;Nom;0))>0)) à des fins pédagogiques, histoire de montrer que la partie utilisée dans la formule
FREQUENCE(EQUIV(Nom;Nom;0);EQUIV(Nom;Nom;0))>0))
peut être adaptée pour servir à la partie conditionnelle.

De plus, comme le thème porte sur l'utilisation de la fonction Fréquence, autant rester dans le thème.

Ceci-dit, comme c'est une formule validée matriciellement, pas besoin de l'écrire
=SOMMEPROD(1/NB.SI(Nom;Nom)) mais =SOMME(1/NB.SI(Nom;Nom)) comme me l'avait précisé Tibo lors d'un ancien fil.

Enfin, =SOMMEPROD(1/NB.SI(Nom;Nom)) ne s'utilise pas si ta matrice comporte des cellules vides.
Dans ce cas : =SOMME(SI(Nom<>"";1/NB.SI(Nom;Nom))), ou
=NB(1/FREQUENCE(SI(Nom<>"";EQUIV(Nom;Nom;0));LIGNE(INDIRECT("1:"&LIGNES(Nom))))) (par exemple) comme utilisée dans l'onglet "SansDoublonCelluleVideTriée".
Si tu veux d'autres précisions, n'hésite pas.
A+


=SI(LIGNES($1:1)<=SOMME(N(FREQUENCE(EQUIV(Nom;Nom;0);EQUIV(Nom;Nom;0))>0));INDEX(Nom;EQUIV(PETITE.VALEUR(SI(FREQUENCE(EQUIV(Nom;Nom;0);EQUIV(Nom;Nom;0))>0;LIGNE(Nom));LIGNES($1:1));SI(FREQUENCE(EQUIV(Nom;Nom;0);EQUIV(Nom;Nom;0))>0;LIGNE(Nom));0));"")
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 348
Messages
2 087 508
Membres
103 568
dernier inscrit
NoS