Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

combien de fois de suite

  • Initiateur de la discussion Initiateur de la discussion jad73
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

jad73

XLDnaute Occasionnel
bonjour
je recherche une formule pour savoir combien de fois un numéro est sorti plusieurs fois de suite.
dans le fichier joint par exemple le 1 est sorti 5 fois 2 fois de suite et 1 fois 3 fois de suite.
merci
 

Pièces jointes

Re : combien de fois de suite

Bonjour

1) Je suppose que tu travailles par ligne ?

2) Est-ce que c'est ton fichier réel, ou est-ce un fichier simplifié ?

3) Veux tu que la solution proposée fonctionne avec des fichiers plus longs ?

@ plus
 
Re : combien de fois de suite

slt
les numéros sont verticales colonne W2:W71 et le résultat est par ligne pour le 1 sorti 5 fois 2fois de suite en cellule X2
c'est un fichier simplifié le vrai est trop gros mème compréssé.
merci
 
Re : combien de fois de suite

Bonsoir jad73 , cisco ,

Peut être une solution ici (pas très académique).
En créant une 2° feuille pour calculer les tirages qui se suivent.
le lien ici

Amicalement
 

Pièces jointes

Dernière édition:
Re : combien de fois de suite

bonsoir a tous
slt haonv je viens de lire ton post et je n'ai pas trés bien compris (je ne suis pas trés doué en excel) je n'ai pas vu de formules,faut-il créer une macro ou autre chose.
merci
 
Re : combien de fois de suite

Re ,
Tu cliques sur ce lien :
Cijoint.fr - Service gratuit de dépôt de fichiers

Ensuite ,sur la page internet tu cliques sur:
pour jad73.zip
tu ouvres le fichier.
J'ai créée une deuxième feuille appelé "base",
il n'y a pas de macro.
Les formules sont colonnes X à AC feuille "test"
et lignes 2 à 50 feuille "base".
Les formules peuvent être étirer vers le bas.
Voir aussi dans "noms" la définition de "tirage"

Amicalement
 
Dernière édition:
Re : combien de fois de suite

Bonjour à tous
Une formule est demandée. Je n'en ai pas qui me vienne à l'esprit. Donc je propose une solution par une procédure en VisualBasic.
Code:
[COLOR="DarkSlateGray"][B]Sub toto()
         [COLOR="SeaGreen"]'4 Pluviôse CCXVIII
         'ROGER2327 fecit.
         '[/COLOR]
Dim pDat As Object, oCol As Range, oCel As Range
Dim oNum As New Collection, oVar As New Collection
Dim oCpt, i As Long, j As Long, n As Long
   Set pDat = Range("DATA") [COLOR="SeaGreen"]'Plage contenant les données.(B2:U46)[/COLOR]
   With Range("SORT") [COLOR="SeaGreen"]'Première cellule de résultat. (W2)[/COLOR]
      .CurrentRegion.Offset(1, 0).ClearContents
      Application.ScreenUpdating = False
      On Error Resume Next
      For Each oCol In pDat.Columns
         For Each oCel In oCol.Cells
            oNum.Add oCel.Value
            oVar.Add oCel.Value, CStr(oCel.Value)
         Next oCel
      Next oCol
      On Error GoTo 0
      Set pDat = Nothing
      ReDim oCpt(1 To oVar.Count, 1 To 2) As Variant
      For i = 1 To oVar.Count
         oCpt(i, 1) = oVar(i)
         n = 0
         For j = 1 To oNum.Count
            If oNum(j) = oVar(i) Then
               n = n + 1
            Else
               If n > 1 Then
                  If n > UBound(oCpt, 2) Then ReDim Preserve oCpt(1 To oVar.Count, 1 To n)
                  oCpt(i, n) = oCpt(i, n) + 1
               End If
               n = 0
            End If
         Next j
      Next i
      Set oNum = Nothing
      Set oVar = Nothing
      With .Resize(UBound(oCpt, 1), UBound(oCpt, 2))
         .Value = oCpt
         .Sort Key1:=Range("SORT"), Order1:=xlAscending, Header:=xlNo, OrderCustom:=1, _
            MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
      End With
      Application.ScreenUpdating = True
   End With
End Sub[/B][/COLOR]
ROGER2327
#2632
 

Pièces jointes

Re : combien de fois de suite

Bonjour à tous


En fait il y a plusieurs possibilités pour résoudre ce problème, mais toutes me paraissent bien lourdes... Grrrrrr


En pièce jointe, une possibilité parmi d'autres, en travaillant en fonction des colonnes.
Je ne sais si c'est bon, car je ne trouve pas les mêmes résultats que toi, Jad73. J'ai essayé de compter le nombre de "binomes", de "trinomes"... à la main, mais c'est assez galère sur un tableau si grand... J'ai fait quelques tests à la main, en rajoutant des 1, et les résultats obtenus avec mes formules me semblent logiques.

A toi donc de vérifier... Si c'est bon, pour étendre le tableau de résultat en bleu vers le bas, il suffit d'étirer, toujours et uniquement vers le bas. Vers la droite, cela ne fonctionne pas. D'ailleurs, ce système ne fonctionne que si il y a au max 6 fois le même nombre les uns après les autres, parceque le cas 7 fois n'a pas été prévu, et aussi parcequ'excel refuse apparemment l'imbrication de plus de CHERCHE...

Conclusion : A toi de tester et de voir ce qui va ou ne va pas. On adaptera ensuite.


@ plus

Le 25/01.
Et une version avec des formules un tout petit peu plus simples, et acceptant, si besoin était, après modification, 7 ou plus encore de nombres identiques à la suite les uns des autres.
 

Pièces jointes

Dernière édition:
Re : combien de fois de suite

bonjour a tous, bonjour Roger
j'ai donc crée une macro et inséré votre code dedans, je pense que c'est ce qu'il fallait faire.Mais quand je clique sur le bouton je n'obtiens pas les bons résultats.je joins le fichier avec dans les colonnes jaunes(AI-AN) le bon résultat qu'on devrait avoir.
Merci
 

Pièces jointes

Re : combien de fois de suite

Re...
C'est simplement parce que je n'ai rien compris : que je lise verticalement ou horizontalement le tableau de données, je ne vois jamais "18" figurer six fois de suite.
A moins que vous considériez que la cellule qui suit la cellule F9 est la cellule K10, ce qui est nouveau. Jusqu'à aujourd'hui, la cellule qui suit la cellule F6 est G6 lorsqu'on lit la feuille horizontalement et F7 lorsqu'on lit le tableau verticalement.
J'ai cru un moment que vous vouliez trouver le nombre de lignes (et non le nombre de cellules) consécutives contenant chacun des nombres du tableau, ce que fait le code suivant :
Code:
[COLOR="DarkSlateGray"][B]Sub toto2()
         [COLOR="SeaGreen"]'5 Pluviôse CCXVIII
         'ROGER2327 fecit.
         '[/COLOR]
Dim pDat As Object, oCel As Range
Dim oVar As New Collection
Dim oCpt, i As Long, j As Long, k As Long, n As Long, tf As Boolean
   Set pDat = Range("DATA")[COLOR="SeaGreen"] 'Plage contenant les données.(B2:U46)[/COLOR]
   With Range("SORT") [COLOR="SeaGreen"]'Première cellule de résultat. (W2)[/COLOR]
      .CurrentRegion.Offset(1, 0).ClearContents
      Application.ScreenUpdating = False
      On Error Resume Next
      For Each oCel In pDat.Cells
         oVar.Add oCel.Value, CStr(oCel.Value)
      Next oCel
      On Error GoTo 0
      ReDim oCpt(1 To oVar.Count, 1 To 2) As Variant
      For i = 1 To oVar.Count
         oCpt(i, 1) = oVar(i)
         n = 0
         For j = 1 To pDat.Rows.Count
            tf = False
            For k = 1 To pDat.Columns.Count
               If pDat.Cells(j, k).Value = oVar(i) Then
                  tf = True
                  n = n + 1
                  Exit For
               End If
            Next k
            If Not tf Or j = pDat.Rows.Count Then
               If n > 1 Then
                  If n > UBound(oCpt, 2) Then ReDim Preserve oCpt(1 To oVar.Count, 1 To n)
                  oCpt(i, n) = oCpt(i, n) + 1
               End If
               tf = False
               n = 0
            End If
         Next j
      Next i
      Set oVar = Nothing
      With .Resize(UBound(oCpt, 1), UBound(oCpt, 2))
         .Value = oCpt
         .Sort Key1:=Range("SORT"), Order1:=xlAscending, Header:=xlNo, OrderCustom:=1, _
            MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
      End With
      Application.ScreenUpdating = True
   End With
End Sub[/B][/COLOR]
Malheureusement, ce n'est pas ce que vous voulez puisque :
  • pour 2, j'obtiens 1 fois deux lignes consécutives (Tirs 40 et 41) alors qu'il ne faut rien trouver ;
  • pour 4, j'obtiens 1 fois trois lignes consécutives (Tirs 15, 16 et 17), 1 fois sept lignes consécutives (Tirs 25, 26, 27, 28, 29, 30 et 31) alors que la bonne réponse est 2 fois 3 tirages.
  • Etc. (voir 6, 8, 9, 11, 12, 14, 19, 20...)
Comme je ne comprends rien, j'en resterai là.
Bon courage.
ROGER2327
#2636
 
Dernière édition:
Re : combien de fois de suite

Bonsoir à tous, bonsoir ROGER2327, bonsoir haonv, bonsoir Jad13

C'est étrange, ROGER2327 et moi trouvons les mêmes résultats, me semble t'il...

Conclusion 1 : Nous avons compris la même chose, mais nous n'avons pas compris ce que tu nous demande, Jad13...

Conclusion 2 : Jad13, il ne te reste plus qu'à préciser ta méthode de calcul. Travailles tu colonne par colonne (F11, F12...), ou ligne par ligne (F11, G11...), ou autrement ?

@ plus
 
Dernière édition:
Re : combien de fois de suite

bonsoir a tous,bonsoir Roger,Cisco
Milles excuses Roger, c'est moi qui est fait plein d'erreurs.Votre code fonctionne trés bien comme d'habitude.Encore mes excuses a toi aussi Cisco et merci pour votre patience.
merci,bonsoir
 
Re : combien de fois de suite

Re...
bonsoir a tous,bonsoir Roger,Cisco
Milles excuses Roger, c'est moi qui est fait plein d'erreurs.Votre code fonctionne trés bien comme d'habitude.Encore mes excuses a toi aussi Cisco et merci pour votre patience.
merci,bonsoir
Ce n'est pas bien grave et je ne vous en veux pas. Mais nous perdons beaucoup de temps avec ces erreurs facilement évitables. C'est pourquoi on peut percevoir un léger agacement dans mon message précédent.
L'essentiel est que le résultat vous convienne.​
Bonne continuation.
ROGER2327
#2643
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
395
Réponses
23
Affichages
680
  • Question Question
Microsoft 365 Fonction si
Réponses
7
Affichages
223
Réponses
16
Affichages
506
Réponses
2
Affichages
240
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…