Excel: Somme de valeurs identique entre elles

Résolu/Fermé
takitaka Messages postés 14 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 4 décembre 2008 - 11 févr. 2008 à 16:25
fred2los Messages postés 1 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 29 avril 2008 - 29 avril 2008 à 12:21
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
A voir également:

11 réponses

takitaka Messages postés 14 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 4 décembre 2008 1
12 févr. 2008 à 13:09
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
nannet Messages postés 5 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 13 février 2008 1
11 févr. 2008 à 17:04
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
0
takitaka Messages postés 14 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 4 décembre 2008 1
11 févr. 2008 à 17:13
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" ! ;-
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 207
11 févr. 2008 à 22:10
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
takitaka Messages postés 14 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 4 décembre 2008 1
12 févr. 2008 à 09:55
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
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 207
12 févr. 2008 à 13:52
et si tu essayais la formule que j'ai mis en 3 ? non ? pas envie ?
eric
0
takitaka Messages postés 14 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 4 décembre 2008 1
12 févr. 2008 à 15:02
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.
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 207
12 févr. 2008 à 15:29
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
0
takitaka Messages postés 14 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 4 décembre 2008 1
12 févr. 2008 à 17:00
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) ?
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 207
12 févr. 2008 à 17:28
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
0
takitaka Messages postés 14 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 4 décembre 2008 1
13 févr. 2008 à 09:19
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. :)
0
takitaka Messages postés 14 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 4 décembre 2008 1
13 févr. 2008 à 10:19
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.
0
fred2los Messages postés 1 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 29 avril 2008
29 avril 2008 à 12:21
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
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 207
13 févr. 2008 à 10:42
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
0