Excel: Somme de valeurs identique entre elles

Résolu
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
Configuration: Windows XP
Firefox 2.0.0.11

11 réponses

  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
    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
      0
      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" ! ;-
        0
        1. Contributeur
          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
          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
            0
            1. Contributeur
              et si tu essayais la formule que j'ai mis en 3 ? non ? pas envie ?
              eric
              0
              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.
                0
            2. Contributeur
              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
              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) ?
                0
                1. Contributeur
                  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
              2. 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
                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.
                  0
                  1. 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
                2. Contributeur
                  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