Excel: Somme de valeurs identique entre elles [Résolu/Fermé]

Signaler
Messages postés
14
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
4 décembre 2008
-
Messages postés
1
Date d'inscription
mardi 29 avril 2008
Statut
Membre
Dernière intervention
29 avril 2008
-
Bonjour à tous,

Voila j'ai un tableau de 70 colonnes par 50 lignes. Chaque colonne représente une personne. Et chacune de ces personnes se voient attribuées plusieurs lettres. Mais parfois aucune (que je représente ici par un "..."!
Donc admettons l'exemple :

colonne (A) Jean-Louis a en A1 la valeur R, en A2 la valeur K en A3="...", A4=Q, A5="...", A6=Q
Fabrice (colonne B) a quant à lui: B1=R, B2=C, B3=R, B4="...", B5=K, B6=R, B7="..."
.
.
.
Colonne CA, Stephane: CA1=R, CA2=T, CA3="...", CA4="...", CA5="...", CA6=T, CA7=P

Je voudrais calculer la somme des valeurs identiques au sein de chaque colonne. Par exemple pour ma colonne "CA" (représentant Stephane), je voudrais voir le résultat "2" car il y a 2 fois la lettre T. POur Fabrice (colonne B), je voudrais voir le résultat "3" car j'ai 3 fois la lettre R.
Sachant qu'à chaque fois je ne connais pas la lettre d'avance.
Je recherche donc des valeurs identiques entre elles, et non pas identiques à une valeur donnée.
Si possible une formule (pas un script), même matricielle fera très bien l'affaire.

Merci de votre aide.
TK

11 réponses

Messages postés
14
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
4 décembre 2008
1
Je crois que le plus simple serait de te mettre mon fichier en ligne...
https://www.cjoint.com/?cmm5IGyH4m

En rouge, sont les éléments en double que je veux compter en bas de page, j'ai mis le nombre pour l'exemple...
Merci de votre aide.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 57384 internautes nous ont dit merci ce mois-ci

Messages postés
5
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
13 février 2008
1
bonjour,

J'ai lu ton message.

Il faut utiliser la formule : NB.SI(Plage;"T") ou la lettre que tu veux

Si tu ne connais pas d'avance la lettre il te suffira de la modifier dans la formule c'est facile ou tu crées une formale pour chaque lettre de el'aphabet que tu utilses

Bon courage
Messages postés
14
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
4 décembre 2008
1
oui, tout à fait, je pourrais faire cela, mais j'ai du mal m'exprimer, en fait je veux compter les doublons !
Et là je ne veux pas trop taper 26 fois la même formule dans une même cellule..
j'ai trouvé un truc dans le même esprit, à savoir me comptabiliser le nombre de fois ou j'aurais une lettre différente dans une ligne. Car je suis supposé avoir strictement la même lettre dans cette ligne, donc je veux compter combien va se présenter l'intrus.
=SOMME(SI(I6:CI6<>"";1/NB.SI(I6:CI6;I6:CI6)))

Dans ce cas, si j'ai 70 colonnes, j'ajoute cette formule tout à la fin. Admettons que j'ai 40 fois la lettre "S" et 3 fois la lettre "T", ma formule va m'afficher "3" ! ;-
Messages postés
23398
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 juillet 2020
6 256
Bonsoir,

Pas sûr d'avoir bien compris ta problèmatique mais si c'est le nombre max de doublons de lettres comprises entre A et Z cette formule devrait faire l'affaire :
=MAX(NB.SI($A$1:$A$5;CAR(LIGNE(65:90))))
formule matricielle à valider par CTRL+Shift+Enter

Si j'ai en vertical S S R R R elle me retourne bien 3
C'est ça ?
eric
Messages postés
14
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
4 décembre 2008
1
Bonjour,
Merci à vous 2, en fait, je veux juste que ça me compte le nombre de doublons (des caractères, dans mon cas ce sont simplement des lettres), mais je ne connais pas à l'avance le caractère à vérifier.
Là je m'aperçois que mon énoncé était bigremùent compliqué alors que j'ai pu le résumer en qq mots....ahhhh, la langue française...LOL
Messages postés
23398
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 juillet 2020
6 256
et si tu essayais la formule que j'ai mis en 3 ? non ? pas envie ?
eric
Messages postés
14
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
4 décembre 2008
1
Donc, si ma plage de données va de la colonne I à CI, et de la ligne 2 à 32, ma formule devient :
=MAX(NB.SI($I$2:$I$32;CAR(LIGNE(2:32)))) ?
Et Je dois modifier la lettre "I" pour chaque colonne ?
Parce que j'ai essayé, et ça me met 0 (zero) à chaque fois....hmmm...en modifiant ou non, bien sur.
Messages postés
23398
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 juillet 2020
6 256
pas bcp de temps mais ne modifier que la plage A1:A5, et pas de lettre à saisir

donc pour toi en B36:
=MAX(NB.SI(B2:B32;CAR(LIGNE(65:90))))
formule matricielle à valider par CTRL+Shift+Enter
à recopier vers la droite

eric
Messages postés
14
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
4 décembre 2008
1
Dis-moi Eric, c'est quoi ces 2 nombres 65 & 90 ?
Cela doit-il représenter mes lignes (celles du début et celle de fin) ?
Messages postés
23398
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 juillet 2020
6 256
non non, aucun rapport avec tes lignes...il ne faut pas changer cette partie.
J'utilise ligne() mais sans aucun rapport les lignes, c'est juste pour générer les caractères de A à Z (codes ASCII de 65 à 90)

eric
Messages postés
14
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
4 décembre 2008
1
OK nickel, ça me convient comme ça !
En fait, ça me sert à vérifier les lettres de lecteur réseau mappés sur mon domaine AD pour chaque utilisateur....Ca te dit peut-etre rien mais voila.
Merci beaucoup eriiic. :)
Messages postés
14
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
4 décembre 2008
1
J'ai cette macro là aussi, qui me colorie les doublons par colonne, pratique car très visuel, rapide et adapté à mon besoin.
[code]
Attribute VB_Name = "Module3"
Sub MarqueLesDoublons()
Dim Plage As Range, i&, Cell As Range, Rng As Range

On Error Resume Next
Set Plage = Application.InputBox("Plage à examiner", Type:=8)
If IsEmpty(Plage) Then Exit Sub

Application.ScreenUpdating = False

For Each Cell In Plage
For i = 1 To Plage.Count
Set Rng = Cell.Offset(i)
If Rng <> "" And Rng = Cell Then
Cell.Interior.ColorIndex = 43
Rng.Interior.ColorIndex = 43
Exit For
End If
Next i
Next Cell

End Sub
[code]
Mais ça peut etre long dépendamment de la plage à analyser. Moi avec mes 30lignes*60 colonnes ça a du me prendre 1 bonne minute.
http://www.excelabo.net/excel/comparerreperer.php
Merci à Frédéric Sigonneau pour ce script.
Encore merci à vous.
Messages postés
1
Date d'inscription
mardi 29 avril 2008
Statut
Membre
Dernière intervention
29 avril 2008

slt takitaka,

j'ai besoin de tes lumieres, à savoir, dans une colonne j'ai autant de lettres identiques que de chiffres identiques, je voudrais la formule pour pour avoir le pourcentage de chaque lettres et chaque chiffres pour chaque colonne.

merci si tu peux me donner la réponse
fred2los
Messages postés
23398
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 juillet 2020
6 256
Bonjour,

pour colorer les doublons sur une colonne tu as également la mise en forme conditionnelle avec "la formule est" =EQUIV(A1;A:A;0)<>LIGNE()

Peut-être plus rapide mais ça ne te colorie QUE les doublons, la 1ère valeur trouvée dans la colonne n'est pas colorée elle.

Bonne journée
eric