Compter doublon triplon etc

Bonjour,

Je bloque pour trouver les formules qui concernent le comptage des doublons triplons et +, et aussi trouver une suite de combinaison.

merci de votre aide.

Bonsoir,

Mon poste manque peut être de clarté.

Pour la 1e question je voudrais calculer le nombre de double, triple etc...

Dans chaque cellule une valeur (nombre ou lettre), quand 2 valeurs (ou+) identiques se suivent ça fait

double, triple...

Par exemple G1&H1 (AA) on compte 1 double.

Pour la 2e question je voudrais calculer les combinaisons parmi la Ligne de référence (G1:AW1)

Par exemple si je veux compter le nombre de 13AA : il y'en a 1 (BR1 à BU1)

Merci pour votre aide

Salut Filait7,

en vba, d'ac ?

A+

Bonsoir,

S'il n'y a pas le choix pourquoi pas en vba, mais j'ai peur de ne pas pouvoir l'utiliser avec mon ""gros dossier"

300 lignes environ

merci

a+

Bonjour,

Sans VBA ...

Ton premier message sur le Forum ... se pose là ...

Joli challenge pour une matricielle qui sort du commun ...

Dès que j'ai un moment ... je vais essayer de creuser plus avant ...

salut james

ça fait 1heure que je planche ......... en vain car l'ennui c'est qu'un triplon compte 2 doublonS

je vais tater un truc qui va compter par paquets continus de 2/3/4/5 cel en jouant du DECALER

Bonjour à tous,

une solution avec une fonction perso,

Function Test_Doublon(plgT As Range, plgV As Range) As Integer
For Each c In plgT
 t = t & c
Next

For Each c In plgV
 t1 = t1 & c
Next

If t1 <> "" Then
 For i = 1 To Len(t)
  v = Mid(t, i, Len(t1))
  If v = t1 Then n = n + 1
Next
End If

Test_Doublon = n
End Function

Salut Filait,

Bonjour sabV, Tulipe, James,

une solution VBA, pour ne pas changer, qui fait tout à la fois :

- un double-clic sur la première cellule d'une combinaison ou d'une simple lettre :

° pour les lettres simples : le nombre de doublons, triplons, quadruplons,... vingtspentatuplons de cette lettre (inutile de créer ces types d'assemblage : la macro les calcule seule) avec indication du type en ligne 3 ;

° pour les combinaisons : le nombre d'apparitions.

- clic sur le bouton calcule le tout en une fois.

La remarque de Tulipe est pertinente : faut-il considérer qu'un triplon compte deux doublons, ainsi qu'un quadruplon compterait deux triplons et trois doublons, etc... ? Ça changerait tout!

Outre ce détail, comment se présentent tes 300 lignes?

Faut-il considérer qu'elles constituent une phrase unique (pas d'interruption de comptage) ou sont-elles des unités de test à part entière?

Dans ces deux cas, où faut-il afficher les résultats?

Un fichier réel nous aiderait beaucoup!

For x = 2 To IIf(iRow > 10, 2, 25)
    For y = 1 To UBound(tData, 2)
        sData = IIf(iRow > 10, tTest(1, IIf(iRow > 10, iFlag, 0) + 1), Cells(iRow, 2))
        iFlag = IIf(tData(1, y) = sData, iFlag + 1, 0)
        If iFlag = 0 And iRow > 10 Then iFlag = IIf(tData(1, y) = tTest(1, iFlag + 1), iFlag + 1, 0)
        If iFlag = IIf(iRow > 10, Cells(iRow, 2).End(xlToRight).Column - 1, x) Then
            Cells(iRow, IIf(iRow > 10, 9, 7 + x)) = Cells(iRow, IIf(iRow > 10, 9, 7 + x)) + 1
            If iRow < 10 Then Cells(3, 7 + x) = x
            iFlag = 0
        End If
    Next
Next

Bon, c'est vrai, j'ai un peu déc... côté condensé...

@ sabV : pas pensé à la fonction perso... Très joli!

A+

Bonjour à tous,

D'abord merci à tous d'avoir réfléchi à ma demande.

Je comprend que c'est compliqué.

Un triplon ne doit pas compter comme 2 doublons etc...

je mets une partie du fichier final (feuille 2), mais je peux m'adapter avec ce qui est proposé.

curilis 57, à moins de ne pas avoir compris il y' a des erreurs sur le comptage des doubles et+, les combinaisons c'est OK

a+

Bonjour le forum,

B1 :

=GRANDE.VALEUR((FREQUENCE(SI(Plage="A";LIGNE(Plage));SI(Plage<>"A";LIGNE(Plage))));LIGNE())

Formule matricielle.

doubons triplons

Bonjour mbbp,

Je n'arrive pas à adapter votre formule car mes valeurs sont situés sur une ligne, votre exemple sur une colonne.

Lorsque je remplace dans votre formule LIGNE par COLONNE ça ne donne pas non plus le résultat escompté.

merci

A3 :

=SIERREUR(GRANDE.VALEUR((FREQUENCE(SI(Plage="A";COLONNE(Plage));SI(Plage<>"A";COLONNE(Plage))));COLONNE());"")

G5 :

=NB.SI(3:3;4)
q d t

Salut Filait,

Bonjour l'équipe,

Bon Week-end ensoleillé, le forum!

un aperçu des avancées de VBA

For y = 1 To UBound(tData, 2)
    sData = IIf(iIdx > 1, tTest(iFlag + 1, 1), Cells(iRow, 1))
    iFlag = IIf(tData(1, y) = sData, iFlag + 1, IIf(iIdx > 1, 0, iFlag * 100))
    If iFlag = 0 And iIdx > 1 Then iFlag = IIf(tData(1, y) = tTest(1, iFlag + 1), iFlag + 1, 0)
    If iFlag >= IIf(iIdx > 1, UBound(tTest, 1), 200) Then
        Cells(iRow, IIf(iIdx > 1, iIdx, iFlag / 100)) = Cells(iRow, IIf(iIdx > 1, iIdx, iFlag / 100)) + 1
        iFlag = 0
    End If
    If iIdx = 1 And iFlag >= 100 Then iFlag = 0
Next

Un double-clic en [A], sur la cellule "Nb Doublon+" de la ligne de datas à calculer...

Le petit bouton ne fonctionne pas encore!

Petite question corollaire à la définition de doublon : la suite "1111" peut-elle être considérée comme 2 combinaisons "111" ou comme une seule? Ici, elle est considérée comme unique combinaison.

A venir, si tout cela te convient, la possibilité de créer une nouvelle ligne avec tout l'affichage qui va avec et le recalcul automatique (tu me diras qu'une formule le fait aussi, je sais) lors d'un changement de valeur dans les lignes de datas.

A tester, comme on dit...

A+

15doublontriplon.xlsm (144.10 Ko)

Bonsoir mbbp et curilis57,

mbbp : j'ai testé votre formule mais je ne trouve pas comme vous

=SIERREUR(GRANDE.VALEUR((FREQUENCE(SI(A1:BQ1="A";COLONNE(A1:BQ1));SI(A1:BQ1<>"A";COLONNE(A1:BQ1))));COLONNE());"")

je trouve 4-3-2-2-2-1-1-1-1-1-1, il manque un 2 et un 1

Lorsque je fais insertion d'une colonne (colonne A) ça fausse le résultat. Je ne peux pas le réutiliser comme je veux.

curilis57

C'est pas mal du tout, en effet si le calcul peut se faire en un clic ou automatiquement c'est bien.

Une suite "1111" ne doit être compté que comme un quadruple de 1 (et non 1 triple ou autre)

Petite question si je change le 1 ou A par autre chose est ce que ça marche encore.

merci encore

a+

La formule doit être adaptée selon la position de la 1ère colonne :

G3 :

=SIERREUR(GRANDE.VALEUR((FREQUENCE(SI(Plage="A";COLONNE(Plage));SI(Plage<>"A";COLONNE(Plage))));COLONNE()-6);"")

"je trouve 4-3-2-2-2-1-1-1-1-1-1, il manque un 2 et un 1"

Absolument pas si tu regardes ton 1er fichier : le compte est bon !

dtq

Bonsoir mbbp, le forum,

Désolé mais il y'a quelque chose qui m'échappe. J'ai bien compris le fait de décaler les colonnes mais malgré ça

je ne trouve pas le bon résultat.

Voir en feuille 3

merci de votre patience mbbp

a+

Bonsoir à l'équipe,

voici la dernière mouture.

  • le petit bouton calcule toute la feuille ;
  • un changement dans la ligne des datas recalcule cette ligne ;
  • en bas de ta feuille, un double-clic sur la cellule colorée affiche un nouveau bloc vierge, prêt pour de nouveaux datas.
  • double-clic sur "Nb Doublon+" calcule le bloc. Un peu inutile puisque un changement le fait déjà...

A tester!

Petite question subsidiaire : à quoi travailles-tu ?

Bon travail!

A+

17doublontriplon.xlsm (148.93 Ko)

Si tu utilises G1:BW1 au lieu de nommer cette définition "plage", il faut figer cette plage :

=SIERREUR(GRANDE.VALEUR((FREQUENCE(SI($G$1:$BW$1="A";COLONNE($G$1:$BW$1));SI($G$1:$BW$1<>"A";COLONNE($G$1:$BW$1))));COLONNE()-6);"")
33d-t-q.xlsx (32.16 Ko)

Bonsoir curulis57, mbbp,

Vous êtes trop fort.

curulis57 gros gros boulot merci beaucoup, en plus de ça trés rapidement, ça concerne une analyse sur les événements sportifs.

mbbp merci aussi pour vos réponses, je n'avais pas saisi la subtilité sur les "plage", ça me donne une autre solution sans VBA.

Je vais regarder tout cela à tête reposée.

a+

bonsoir

A Mbbp

cordialement

Rechercher des sujets similaires à "compter doublon triplon etc"