A voir également:
- Nb.si.ens sans doublons
- Excel rang sans doublon - Meilleures réponses
- Nbval sans doublon - Meilleures réponses
- Excel : Décompte sans doublons d'une plage ✓ - Forum - Excel
- HELP : nb.si. ens sans doublons ? - Forum - Excel
- Nombre de valeurs (sans doubles) correspondant à un critère ✓ - Forum - Excel
- SOMMEPROD sans doublons ✓ - Forum - Bureautique
- Compter les doublons en fonction d'un critères ✓ - Forum - Excel
7 réponses
Vaucluse
- Messages postés
- 25816
- Date d'inscription
- lundi 23 juillet 2007
- Statut
- Contributeur
- Dernière intervention
- 22 février 2021
Bonjour
on peut aussi tenter d'utiliser celle ci:
=SOMME(SI(A1:A1000<>"";1/NB.SI(A1:A1000;A1:A1000)))
pour un champ de A1 à A1000 à adapter.
cette formule est matricielle et doit être entrée avec la touche enter en maintenant ctrl et shift enfoncée pour qu'elle se retrouve entre accolades dans la barre de formule.
(ça doit être le cas aussi, je pense, des propositions précédentes)
maintenant pour ajuster la formule à une plage "variable" il faudrait savoir ce qui varie dans la plage!
crdlmnt
on peut aussi tenter d'utiliser celle ci:
=SOMME(SI(A1:A1000<>"";1/NB.SI(A1:A1000;A1:A1000)))
pour un champ de A1 à A1000 à adapter.
cette formule est matricielle et doit être entrée avec la touche enter en maintenant ctrl et shift enfoncée pour qu'elle se retrouve entre accolades dans la barre de formule.
(ça doit être le cas aussi, je pense, des propositions précédentes)
maintenant pour ajuster la formule à une plage "variable" il faudrait savoir ce qui varie dans la plage!
crdlmnt
ccm81
- Messages postés
- 9673
- Date d'inscription
- lundi 18 octobre 2010
- Statut
- Membre
- Dernière intervention
- 19 février 2021
re
justement non
=DECALER(Feuil1!$A$3;0;0;NBVAL(Feuil1!$A:$A);1)
te definit la plage (unicolonne) commençant en A3 et dont le nb de ligne est le nb de valeurs de la colonne A
tu peux aussi remplacer NBVAL(Feuil1!A:A) par l'adresse d'une cellule contenant le nombre de ligne souhaité
bonne suite
justement non
=DECALER(Feuil1!$A$3;0;0;NBVAL(Feuil1!$A:$A);1)
te definit la plage (unicolonne) commençant en A3 et dont le nb de ligne est le nb de valeurs de la colonne A
tu peux aussi remplacer NBVAL(Feuil1!A:A) par l'adresse d'une cellule contenant le nombre de ligne souhaité
bonne suite
michel_m
- Messages postés
- 16390
- Date d'inscription
- lundi 12 septembre 2005
- Statut
- Contributeur
- Dernière intervention
- 22 février 2021
Bonjour
au passage:
FREQUENCE compte le nombre de valeurs uniques et numériques
si on passe par formule iml faut utiliser la formule indiquée par Vaucluse...
Il es vrai aussi que les matricielles n'acceptent pas des colonnes ou ligne entière comme A:A
maintenant, au delà de 5000 lignes, le temps de calcul sera long...
j'va proposer une fonction personalisée, je reviens...
au passage:
FREQUENCE compte le nombre de valeurs uniques et numériques
si on passe par formule iml faut utiliser la formule indiquée par Vaucluse...
Il es vrai aussi que les matricielles n'acceptent pas des colonnes ou ligne entière comme A:A
maintenant, au delà de 5000 lignes, le temps de calcul sera long...
j'va proposer une fonction personalisée, je reviens...
michel_m
- Messages postés
- 16390
- Date d'inscription
- lundi 12 septembre 2005
- Statut
- Contributeur
- Dernière intervention
- 22 février 2021
Je vois que je dérange mais je mets la fonction quand m^me
on peut aussi filtrer en utilisant "unique" et compter le nombre de cellule mais je laisse le bébé à d'autres
Bonne soirée
Function val_uniques(plage As Range) As Integer Set uniq = CreateObject("scripting.dictionary") Dim cellule As Range For Each cellule In plage ref = cellule.Value If Not uniq.exists(ref) Then uniq.Add ref, ref End If Next val_uniques = uniq.Count End Function
on peut aussi filtrer en utilisant "unique" et compter le nombre de cellule mais je laisse le bébé à d'autres
Bonne soirée
ccm81
- Messages postés
- 9673
- Date d'inscription
- lundi 18 octobre 2010
- Statut
- Membre
- Dernière intervention
- 19 février 2021
bonjour,
c'est peut être le A:A qui ne lui plait pas
tu peux tenter de nommer plage (insertion/nom/definir) la zone (variable) à traiter
nom : plage
=DECALER(Feuil1!$A$3;0;0;NBVAL(Feuil1!A:A);1)
ta formule devient
=SOMME(SI(FREQUENCE(EQUIV(plage;plage;0);EQUIV(plage;plage;0))>0;1))
bonne suite
c'est peut être le A:A qui ne lui plait pas
tu peux tenter de nommer plage (insertion/nom/definir) la zone (variable) à traiter
nom : plage
=DECALER(Feuil1!$A$3;0;0;NBVAL(Feuil1!A:A);1)
ta formule devient
=SOMME(SI(FREQUENCE(EQUIV(plage;plage;0);EQUIV(plage;plage;0))>0;1))
bonne suite
Philippe
Bonjour et merci à vous de répondre
@Vaucluse : ce qui varie, c'est la longueur de la plage, parfois j'ai 5.000 mots dans ma colonne et parfois 6500.
Si je mets A1:A10000, la formule me renvoie #N/A.
N'est-il pas possible de compter le nb de ligne et de mettre A1:AX où X est le nb de lignes?
@ccm81 d'après ce que je comprends DECALER est pour un nb déterminée de lignes et c'est justement ce qui varie à chacun de mes calculs.
@Vaucluse : ce qui varie, c'est la longueur de la plage, parfois j'ai 5.000 mots dans ma colonne et parfois 6500.
Si je mets A1:A10000, la formule me renvoie #N/A.
N'est-il pas possible de compter le nb de ligne et de mettre A1:AX où X est le nb de lignes?
@ccm81 d'après ce que je comprends DECALER est pour un nb déterminée de lignes et c'est justement ce qui varie à chacun de mes calculs.
Vaucluse
- Messages postés
- 25816
- Date d'inscription
- lundi 23 juillet 2007
- Statut
- Contributeur
- Dernière intervention
- 22 février 2021
Comprend pas...
voyez ce modèle et dites nous ce qui diffère dans le votre?
http://www.cijoint.fr/cjlink.php?file=cj201105/cijTNwVGWb.xls
crdlmnt
voyez ce modèle et dites nous ce qui diffère dans le votre?
http://www.cijoint.fr/cjlink.php?file=cj201105/cijTNwVGWb.xls
crdlmnt
Merci
soit avec les touches ctrl + shift + enter.
crdlmnt