nombre de suites

xddrmc

XLDnaute Junior
Bonsoir à vous tous,
j'aimerais connaitre une formule me permettant de savoir le nombre de suite par rapport à mon tableau que je vous joins,
une formule simple hors VBA, ni macro,
Merci d'avance à vous
 

Pièces jointes

  • ESSAI K.xls
    15.5 KB · Affichages: 50

hoerwind

XLDnaute Barbatruc
Re : nombre de suites

Bonjour,

une formule simple hors VBA, ni macro
J'apprécie ton humour !

Une première approche avec des formules simples, ... mais deux tableaux intermédiaires.
Au cas où cela pourrait en inspirer d'autres.

De mon côté je regarde si je trouve le moyen de supprimer au moins un tableau.
 

Pièces jointes

  • SuitesDeNuméros.xls
    22.5 KB · Affichages: 39
J

JJ1

Guest
Re : nombre de suites

Bonjour,

J'avais une formule sommeprod qui renvoyait 1 pour une suite d'au moins 3 nombres sinon 0, peut-être à adapter au cas ici?
Bonne journée
 

Pièces jointes

  • suite2.xls
    17.5 KB · Affichages: 47
  • suite2.xls
    17.5 KB · Affichages: 50
  • suite2.xls
    17.5 KB · Affichages: 51

ROGER2327

XLDnaute Barbatruc
Re : nombre de suites

Bonjour à tous
C'est tellement simple avec une fonction personnalisée que, même si notre ami n'en veut pas, en voici une :
VB:
Function tata&(r As Range, n&)
Application.Volatile
Dim i&, m&, a#, b#, x&
  For i = 2 To r.Count
    If IsNumeric(r(i)) And r(i) <> "" Then a = r(i) Else a = 1.79769313486231E+308
    If IsNumeric(r(i - 1)) And r(i - 1) <> "" Then b = r(i - 1) Else b = 1.79769313486231E+308
    If Abs(a - b) = 1 Then m = m + 1 - (r.Count = i) Else x = x - (m = n - 1): m = 0
  Next
  tata = x - (m = n)
End Function
Mettre
Code:
=tata($B4:$J4;COLONNE(B:B))
en K4, et recopier à droite et vers le bas.

Mais pourquoi faire simple si on peut faire compliqué ?​
ROGER2327
#4946


Mardi 17 Gueules 138 (Le Bétrou, SQ)
23 Pluviôse An CCXIX
2011-W06-5T12:04:51Z
 

ROGER2327

XLDnaute Barbatruc
Re : nombre de suites

Re…
Bonjour à tous

Simplement pour dire a ROGER que sa solution est effectivement extremement simple et qu'il ne me faudra qu'environ une quinzaine de jours pour la comprendre

en un mot comme en cent : BRAVO
Vous vous sous-estimez sans doute, mais il est vrai que la solution proposée n'est pas claire ! En fait, je me suis trompé de fonction, en copiant une version de travail. Voici la bonne version (qui donne évidemment les mêmes résultats, sans l'inutile complication m = m + 1 - (r.Count = i) de la précédente-:
VB:
Function titi&(r As Range, n&)
Application.Volatile
Dim i&, m&, a#, b#, x&
  For i = 2 To r.Count
    If IsNumeric(r(i)) And r(i) <> "" Then a = r(i) Else a = 1.79769313486231E+308
    If IsNumeric(r(i - 1)) And r(i - 1) <> "" Then b = r(i - 1) Else b = 1.79769313486231E+308
    If Abs(a - b) = 1 Then m = m + 1 Else x = x - (m = n - 1): m = 0
  Next
  titi = x - (m = n - 1)
End Function
Les quelques commentaires dans le classeur joint devraient vous convaincre de la simplicité de la fonction.​
Cordialement,

ROGER2327
#4949


Mercredi 18 Gueules 138 (Nativité de Deibler, prestidigitateur, SQ)
24 Pluviôse An CCXIX
2011-W06-6T02:03:23Z
 

Pièces jointes

  • 157983-nombre-de-suites.xls
    25.5 KB · Affichages: 34
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 582
Messages
2 089 953
Membres
104 317
dernier inscrit
UMP