Compter le nombre de cellules qui separe des valeur

Bonjour

Je suis nouveau sur ce site et je sais pas si je post au bonne endroit.

Voila je cherchais de l'aide afin de trouver une formule qui me permettrai de compter le nombre de cellules qui séparent deux valeurs sous certaines conditions. C'est un peu dur a expliquer alors je vais essayer avec un exemple.

A B C D E

0 1 2 3

10

15

12

13

34

20 5 Je veux connaitre en faite, pour chaque groupe de nombre (groupe des nombre se

21 finissant par 0, par 1, par 2, par 3, etc) dans une liste de nombre au bout de combien

23 4 de cellule un nombre faisant parti du même groupe réapparait.

35 exemple pour ce tableau. Apres le 10, le 20 apparait 5 cellules plus-tard

31 3 ou après le 21 le 31 apparait 3 cellules plus-tard

32 8

Voila j'espère que j'ai été clair et désolé d'avance si je ne suis pas au bonne endroit pour poster.

Merci de votre aide.

Bonjour,

Dans la mesure où j'ai compris votre demande voici une piste en VBA.

Copiez le code suivant dans un module standard

Sub NbCellulesEntreValeurs()
Dim S As Worksheet
Dim R As Range
Dim var
Dim Cible%
Dim i&
Dim j&
Dim A$
Dim T()
With Selection
  If .Columns.Count > 1 Then
    MsgBox "La sélection doit être sur une seule colonne."
    Exit Sub
  End If
  If .Rows.Count = 1 Then Exit Sub
  .Copy
End With
Set S = Sheets.Add
S.Paste
Application.CutCopyMode = False
Set R = S.UsedRange
var = R
For Cible% = 0 To 9
  ReDim T(1 To UBound(var, 1), 1 To 1)
  j& = 0
  For i& = 1 To UBound(var, 1)
    A$ = CStr(var(i&, 1))
    If Right(A$, 1) = CStr(Cible%) Then
      If j& = 0 Then
        j& = i&
        T(i&, 1) = 0
      Else
        T(i&, 1) = i& - j&
        j& = i&
      End If
    End If
  Next i&
  Set R = R.Offset(0, 1)
  R = T
  Erase T
Next Cible%
S.Rows(1).Insert
Set R = S.Range("b1:k1")
R = Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
R.Font.Bold = True
R.HorizontalAlignment = xlCenter
R.Interior.ColorIndex = 3
S.[a1].Select
End Sub

1) Mettez des données numériques en colonne (ex : de A1 à A100)

2) Sélectionnez les données puis lancez la macro NbCellulesEntreValeurs. Le résultat s'affiche dans une nouvelle feuille.

Cordialement.

PMO

Patrick Morange

Bonsoir

Avec une formule Matricielle en B2 à incrémenter sur tout le tableau

(Formule à valider avec les 3 touches Ctrl+Maj+Entrée)

=SI(ET(SOMMEPROD(--(DROITE($A$2:$A3;1)=TEXTE(B$1;"Standard")))=2;DROITE($A3;1)*1=B$1);LIGNE()-EQUIV(DROITE($A3;1);DROITE($A$2:$A2;1);0)-1;"")

Cordialement

32classeur1.zip (3.19 Ko)

bonsoir

un grand merci pour vos reponses je pensais ne jamais voir de réponse a mon problème. Un grand bravo a toi PMO, ta macro fonctionne parfaitement c'est exactement se que je voulais tu es vraiment trop fort! Je reve de pouvoir faire ça un jour...

Merci a tous encore et à bientot.

Rechercher des sujets similaires à "compter nombre qui separe valeur"