Autres Formule pour trouver une série dans ligne eXcel

furiousxsi

XLDnaute Nouveau
J'aimerai utiliser des formules pour trouver dans les cases correspondantes:

la série en cours du nombre "1"

la série max en cours du nombre "1"

combien de fois la série max a t'elle eu lieu?

combien de série de 3 cases mentionnant le nombre "1"

J'ai joint un tableau pour que ce soit plus explicite ;)

à bientôt
 

Pièces jointes

  • séries de chiffre.xlsx
    11.6 KB · Affichages: 4
Solution
Bonjour @furiousxsi et bienvenue sur XLD :)

La fonction FREQUENCE() est votre amie (me semble-t-il). Voyez les formules dans les cellules B2 à E2.

FREQUENCE() est une fonction matricielle. Les formules qui l'utilisent nécessitent une validation spéciale dite "validation matricielle".
1665992081981.png


Les dernières versions d'Excel se passent de la validation matricielle (elles détectent si la formule est matricielle ou non). Vous n'indiquez pas dans votre profil la version d'Excel que vous utilisez. Vous pouvez le faire en complétant votre profil.

Si vous désirez quelques explications sur le fonctionnement de la fonction FREQUENCE(), voyez la discussion ICI .

edit 1 ...

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour @furiousxsi et bienvenue sur XLD :)

La fonction FREQUENCE() est votre amie (me semble-t-il). Voyez les formules dans les cellules B2 à E2.

FREQUENCE() est une fonction matricielle. Les formules qui l'utilisent nécessitent une validation spéciale dite "validation matricielle".
1665992081981.png


Les dernières versions d'Excel se passent de la validation matricielle (elles détectent si la formule est matricielle ou non). Vous n'indiquez pas dans votre profil la version d'Excel que vous utilisez. Vous pouvez le faire en complétant votre profil.

Si vous désirez quelques explications sur le fonctionnement de la fonction FREQUENCE(), voyez la discussion ICI .

edit 1 : formule en B2 simplifiée

edit 2 : Bonjour @JHA :) ;)
 

Pièces jointes

  • furiousxsi- séries de chiffre- v1a.xlsx
    14 KB · Affichages: 5
Dernière édition:

mapomme

XLDnaute Barbatruc
Supporter XLD
Re,

Concernant les séries de 3 chiffres 1 consécutifs, vous n'avez pas précisé si ce sont les séries d'exactement 3 chiffres (et pas un de plus) ou non.
Soit une série de huit chiffre 1. On peut considérer que cette série :
  • est une série de 8 et donc pas une série de 3
  • ou bien comporte deux séries de 3 chiffres 1
Pour le premier cas, la formule donnée en E2 est correcte.

Pour le second cas, utilisez en E2 la formule matricielle (validation avec Ctrl+Maj+Entrée) suivante :
VB:
=SOMME(ENT(FREQUENCE(SI(F2:AN2=1;COLONNE(F2:AN2));SI(F2:AN2<>1;COLONNE(F2:AN2)))/3))
 

furiousxsi

XLDnaute Nouveau
Bonjour @furiousxsi et bienvenue sur XLD :)

La fonction FREQUENCE() est votre amie (me semble-t-il). Voyez les formules dans les cellules B2 à E2.

FREQUENCE() est une fonction matricielle. Les formules qui l'utilisent nécessitent une validation spéciale dite "validation matricielle".
Regarde la pièce jointe 1152514

Les dernières versions d'Excel se passent de la validation matricielle (elles détectent si la formule est matricielle ou non). Vous n'indiquez pas dans votre profil la version d'Excel que vous utilisez. Vous pouvez le faire en complétant votre profil.

Si vous désirez quelques explications sur le fonctionnement de la fonction FREQUENCE(), voyez la discussion ICI .

edit 1 : formule en B2 simplifiée

edit 2 : Bonjour @JHA :) ;)
Bonjour mapomme,

Ton fichier je l'ai bien réceptionné; testé et approuvé.

J'ai mis à jour mon profil ;) merci

Merci pour le tuto 👍

J'irai lire la discussion ce soir au calme.

à bientôt
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re,

Pour le fun, on pourrait considérer qu'une série de cinq 1 comporte 3 séries de 1 différentes : les trois premiers 1, les trois 1 du milieu et les trois derniers 1. Dans ce cas la formule matricielle en E2 serait:
Code:
=SOMME(SI(FREQUENCE(SI(F2:AN2=1;COLONNE(F2:AN2));SI(F2:AN2<>1;COLONNE(F2:AN2)))>=3;1+FREQUENCE(SI(F2:AN2=1;COLONNE(F2:AN2));SI(F2:AN2<>1;COLONNE(F2:AN2)))-3))
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour JHA,
Déjà merci pour votre retour.
J'ai testé cette formule ça me notifie une erreur
Re,

Cela est bien étrange puisque la formule de @JHA est exactement identique à la mienne (aux $ près mais cela ne change rien - j'ai testé).

Je pense plutôt que vous avez sélectionné la formule de @JHA, puis copier et enfin coller la formule sur votre feuille.
Dans ce cas, il faut vérifier la copie qui embarque souvent des retours à la ligne indésirables.
Il est préférable d'utiliser la petite icône qui permet de copier la formule
1665996159421.png

et qui souvent n'embarque pas les caractères indésirable.
 
Dernière édition:

furiousxsi

XLDnaute Nouveau
Re,

Concernant les séries de 3 chiffres 1 consécutifs, vous n'avez pas précisé si ce sont les séries d'exactement 3 chiffres (et pas un de plus) ou non.
Soit une série de huit chiffre 1. On peut considérer que cette série :
  • est une série de 8 et donc pas une série de 3
  • ou bien comporte deux séries de 3 chiffres 1
Pour le premier cas, la formule donnée en E2 est correcte.

Pour le second cas, utilisez en E2 la formule matricielle (validation avec Ctrl+Maj+Entrée) suivante :
VB:
=SOMME(ENT(FREQUENCE(SI(F2:AN2=1;COLONNE(F2:AN2));SI(F2:AN2<>1;COLONNE(F2:AN2)))/3))
oui j'aimerai que ce soit les séries à 3 chiffres uniquement pas un de plus pas un de moins.
Belle réflexion pour la série de 8 je n'y avais pas pensé.

Petite question pourriez vous me faire le même code pour le nombre zéro? car j'ai testé sur la ligne suivante j'ai remplacé les 1 par des 0 pour voir si j'avais compris quelque chose. en changeant les 1 par des 0 dans les différentes formules. mais ça me met des # .... mon tableur n'aime pas les 0.

Merci d'avance de l'intérêt porté a ma demande
 

furiousxsi

XLDnaute Nouveau
Re,

Pour le fun, on pourrait considérer qu'une série de cinq 1 comporte 3 séries de 1 différentes : les trois premiers 1, les trois 1 du milieu et les trois derniers 1. Dans ce cas la formule matricielle en E2 serait:
Code:
=SOMME(SI(FREQUENCE(SI(F2:AN2=1;COLONNE(F2:AN2));SI(F2:AN2<>1;COLONNE(F2:AN2)))>=3;1+FREQUENCE(SI(F2:AN2=1;COLONNE(F2:AN2));SI(F2:AN2<>1;COLONNE(F2:AN2)))-3))
répondre oui je saisi la chose.
11111 pourrait donner
111--
-111-
--111
ou -111-

mais j'en demande pas autant mais cette formule pourra m'être utile dans un projet futur ;)
 

furiousxsi

XLDnaute Nouveau
Re,

Cela est bien étrange puisque la formule de @JHA est exactement identique à la mienne (aux $ près mais cela ne change rien - j'ai testé).

Je pense plutôt que vous avez sélectionné la formule de @JHA, puis copier et enfin coller la formule sur votre feuille.
Dans ce cas, il faut vérifier la copie qui embarque souvent des retours à la ligne indésirables.
Il est préférable d'utiliser la petite icône qui permet de copier la formule Regarde la pièce jointe 1152527
et qui souvent n'embarque pas les caractères indésirable.
Exacte j'ai fais un copié collé qui a embarqué un retour à la ligne ;) désolé pour la remise en question faite à JHA
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Petite question pourriez vous me faire le même code pour le nombre zéro? car j'ai testé sur la ligne suivante j'ai remplacé les 1 par des 0 pour voir si j'avais compris quelque chose. en changeant les 1 par des 0 dans les différentes formules. mais ça me met des # .... mon tableur n'aime pas les 0.
Re,

Dans le fichier, j'ai remplacé les 1 par des 0 et dans les formules j'ai remplacé =1 et <>1 par =0 et <>0.
Les formules fonctionnent et donnent exactement les mêmes résultats :)

Mais pas chez vous :(. Les points qu'on peut voir:
  • Les zéros sont ils bien les chiffres 0 et non des textes "0" ?
  • Après avoir modifié les formules, les avez-vous bien re-validées avec Ctrl+Maj+>Entrée ?
  • ou bien alors joignez votre fichier en cause...
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 453
Messages
2 088 553
Membres
103 881
dernier inscrit
malbousquet