Rechercher la première valeur différente en remontant une colonne

Y compris Power BI, Power Query et toute autre question en lien avec Excel
l
l_autre
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 23 août 2019
Version d'Excel : 2016

Message par l_autre » 23 août 2019, 17:35

Bonjour,

N'étant pas un expert sur excel et ayant écumé votre forum pour trouver des solutions (et c'est fou tout ce que l'on peut trouver :wink: merci au passage), j'avoue que je sèche sur ce coup là.
Le but est d’effectuer une série de tirage aléatoire entre 0-6 (ça pas de soucis) et de parier sur tous les numéros sauf le zéro et les deux derniers précédemment sortis. Le zéro = échec systématique. Si succès=1 si echec=0.

grossomodo dans la colonne succès il me semble que cela aurait cette forme :
C5=SI(B5=0;0;SI(OU(B5 = B4 ; B5=le premier numéro différent de B4 en remontant la colonne B du bas vers le haut);0;1))

J'ai joint un petit fichier xls qui illustre la chose.

Merci par avance du temps pris pour me répondre.

Cordialement,
Cogitation_de_l_autre.xlsx
(12.85 Kio) Téléchargé 4 fois
l
l_autre
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 23 août 2019
Version d'Excel : 2016

Message par l_autre » 23 août 2019, 18:49

Je m'auto-corrige sur un manque de clarté dans mon blabla, vu que le zéro est toujours perdant :

Le but est d’effectuer une série de tirage aléatoire entre 0-6 (ça pas de soucis) et de parier sur tous les numéros sauf le zéro et les deux derniers précédemment sortis SAUF 0. Le zéro = échec systématique. Si succès=1 si echec=0.

grossomodo dans la colonne succès il me semble que cela aurait cette forme :
C5=SI(B5=0;0;SI(OU(B5 = B4 ; B5=le premier numéro différent de B4 SAUF 0 en remontant la colonne B du bas vers le haut);0;1))

Dsl et merci
m
m3ellem1
Membre impliqué
Membre impliqué
Messages : 1'821
Appréciations reçues : 163
Inscrit le : 18 décembre 2018
Version d'Excel : 2016

Message par m3ellem1 » 24 août 2019, 07:54

Bonjour et :bv: ,
l_autre a écrit :
23 août 2019, 18:49
C5=SI(B5=0;0;SI(OU(B5 = B4 ; B5=le premier numéro différent de B4 SAUF 0 en remontant la colonne B du bas vers le haut);0;1))
Si on suit cette logique la formule sera comme suivante:
=SI(OU(B5=B4;B5=0);0;SI(NB.SI($B$3:B3;B5);0;1))
Le problème c'est que les résultats fournis ne vont pas avec la logique notée en haut :??

exemple: pourquoi pour le 6 on a 2 fois 0 (ce qui est bon) et puis il y a un 1??? :scritch:
et puis tout ce qui est en rouge, il faut plus d'explications :mrgreen:
logique.png
logique.png (10.32 Kio) Vu 143 fois
À partir d'hier, j'ai décidé de ne plus expliquer les solutions proposées et de ne plus répondre aux MP!
l
l_autre
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 23 août 2019
Version d'Excel : 2016

Message par l_autre » 24 août 2019, 09:19

Bonjour m3ellem1,

Tout d'abord merci pour la bienvenue et du temps pris pour me répondre.
Effectivement je me rends compte que je n'avais plus les yeux en face de l'écran lorsque j'ai fait le xls test, comme tu l'as remarqué il y a des erreurs, dsl :lole: . Ci-dessous une version corrigée (également téléchargeable).

Je ne crois pas que la fonction NB.SI soit appropriée, car je souhaite rechercher le 1er nombre rencontré différent du précédent. Une fois trouvé il faut arrêter la recherche dans la colonne. Si la recherche continue, une fois que les 7 numéros seront sortis avec ta formule, je serai systématiquement perdant.
Le but du jeu est :
- Tirage aléatoire entre 0 et 6
- Miser sur tout sauf le 0 et les 2 derniers numéros sortis (sauf le zéro)

En espérant avoir été plus claire dans mes explications ce coup ci :D
Capture1.JPG
Cogitation_de_l_autre_v2.xlsx
(13.13 Kio) Téléchargé 2 fois
m
m3ellem1
Membre impliqué
Membre impliqué
Messages : 1'821
Appréciations reçues : 163
Inscrit le : 18 décembre 2018
Version d'Excel : 2016

Message par m3ellem1 » 24 août 2019, 13:06

Re,

c'est déjà mieux comme ca :) une seule faute encore, à vérifier de ta part. Pour la formule je vais voir si je peux la simplifier :wink:

Edit: Si si on a besoin du NB.SI :mrgreen:

voir nouveau fichier

Cogitation_de_l_autre_v2_2.xlsx
(14.45 Kio) Téléchargé 3 fois
À partir d'hier, j'ai décidé de ne plus expliquer les solutions proposées et de ne plus répondre aux MP!
l
l_autre
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 23 août 2019
Version d'Excel : 2016

Message par l_autre » 24 août 2019, 14:02

Re,

J'ai regardé mon tableau et ta formule, l'erreur provient de la formule, le xls test est juste cette fois ci :roll: .

C16=SI(OU(B16=B15;B16=0;B15=B14;B14=0;B15=0);0;SI(NB.SI(B14:B15;B16);0;1))

Le problème vient d'ici.

En revanche ce qui me pose problème de manière générale sur la formule (si je la comprend bien) c'est qu'elle ne compare que les 2 précédents tirages. De plus si on structure la formule uniquement avec des SI, si je suis au tirage n°10 il va falloir embriquer 9x formule SI, si je suis au tirage n°100 il va falloir embriquer 99x formule SI. Or excel ne prends que 36 imbrication de SI il me semble et dans mon tableau je fais 1000 tirages. D'où ma question principale qui est de trouver la première valeur différente (sauf zéro) en remontant une colonne.

C'est comme un jeu de roulette qui consiste à éviter de miser sur les 2 derniers numéros sortis et ne jamais miser sur le zéro :mrgreen:
m
m3ellem1
Membre impliqué
Membre impliqué
Messages : 1'821
Appréciations reçues : 163
Inscrit le : 18 décembre 2018
Version d'Excel : 2016

Message par m3ellem1 » 24 août 2019, 14:39

l_autre a écrit :
24 août 2019, 14:02
J'ai regardé mon tableau et ta formule, l'erreur provient de la formule, le xls test est juste cette fois ci :roll: .

C16=SI(OU(B16=B15;B16=0;B15=B14;B14=0;B15=0);0;SI(NB.SI(B14:B15;B16);0;1))

Le problème vient d'ici.
je comprend pas ton commentaire était "cas de figure ou il y a un zéro dans les deux précédent tirage du coup je ne joue pas ni le 3 ni le 6 ni le 0"
donc la formule est correcte!!
l_autre a écrit :
24 août 2019, 14:02
En revanche ce qui me pose problème de manière générale sur la formule (si je la comprend bien) c'est qu'elle ne compare que les 2 précédents tirages. De plus si on structure la formule uniquement avec des SI, si je suis au tirage n°10 il va falloir embriquer 9x formule SI, si je suis au tirage n°100 il va falloir embriquer 99x formule SI. Or excel ne prends que 36 imbrication de SI il me semble et dans mon tableau je fais 1000 tirages. D'où ma question principale qui est de trouver la première valeur différente (sauf zéro) en remontant une colonne.
Pourquoi veux tu ajouter des conditions?? puisque le jeu qui consiste à éviter de miser sur les 2 derniers numéros sortis et ne jamais miser sur le zéro!!!! ET la formule elle verifie à chaque fois exactement les les deux tirages précédents, ce qui fait partie de tes conditons non?
À partir d'hier, j'ai décidé de ne plus expliquer les solutions proposées et de ne plus répondre aux MP!
l
l_autre
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 23 août 2019
Version d'Excel : 2016

Message par l_autre » 24 août 2019, 18:39

Re,

Je crois que je m'exprime mal et je m'en excuse.
En effet il faut vérifier les deux tirages précédents, mais si 1er et 2eme tirages précédents sont identiques ou contiennent un zéro il faut aller vérifier et prendre le 3ème, puis si le 3ème est 0 ou égale au 1er ou 2eme tirage il faut aller vérifier le 4ème tirage précédent et ainsi de suite...jusqu'à ce que la condition de pour un tirage n <>0 ET <>n-1 ET <>n-2 si n-2<>n-1 sinon prendre n-3<>n-2 etc...

Exemple :
Tirage Misé sur Succès
5 test test
6 test test
3 1,2,3,4 1
4 1,2,4,5 1
2 1,2,5,6 1
0 1,3,5,6 0
2 1,3,5,6 0 tirage n : n-1=0, donc je choisis de ne pas miser sur n-2 et n-3 car n-3<>n-2 ET<>n-1 ET<>0
4 1,3,5,6 0 tirage x : x-2=0, donc je choisis de ne pas miser sur x-1 et x-4 car x-4<>x-3 ET x-1 ET<>0
2 1,3,5,6 0
5 1,3,5,6 1
1 1,3,4,6 1
4 2,3,4,6 1
4 2,3,4,6 0
4 2,3,4,6 0 tirage y : y-2=y-1, donc je choisis de ne pas miser sur y-1 et y-3 car y-3<>y-2 ET<>y-1 ET<>0
4 2,3,4,6 0 tirage z : z-3=z-2=z-1, donc je choisis de ne pas miser sur z-1 et z-4 car z-4<>z-3 ET<>z-2 ET<>z-1
1 2,3,4,6 0 tirage v : v-4=v-3=z-2=z-1, donc je choisis de ne pas miser sur z-1 et z-4 car z-4<>z-3 ET<>z-2 etc...
6 2,3,4,6 1 tirage w : w-2<>w-1, donc je choisis de ne pas miser sur w-1 et w-2

D'où mon problème de devoir remonter la colonne "tirage" au fur et à mesure jusqu'à avoir les 2 premiers numéro de tirage différents. Bon après, au vu la proba de mon événement, au bout du 9ème tirage consécutif perdant j'ai quasiment 100% de chance de gagner au 10ème tirage.

En espérant avoir été plus concis ce coup ci, et encore dsl et merci !
l
l_autre
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 23 août 2019
Version d'Excel : 2016

Message par l_autre » 24 août 2019, 18:53

Bon, le fofo m'a bouffé les espaces et donc ma mise en page.
Du coup j'ai refais l'excel pour que ce soir lisible.
Du coup pour la formule je viens de me dire qu'il faut peut-être la prendre par un autre bout car en fait ce que je veux c'est dès que j'ai perdu 1 fois, je mise sur les mêmes numéros jusqu'à ce que je gagne (succès=1).
Capture1.JPG
Cogitation_de_l_autre_v3.xlsx
(13.81 Kio) Téléchargé 3 fois
m
m3ellem1
Membre impliqué
Membre impliqué
Messages : 1'821
Appréciations reçues : 163
Inscrit le : 18 décembre 2018
Version d'Excel : 2016

Message par m3ellem1 » 24 août 2019, 19:58

ok merci pour les explications, maintenant je commence à mieux comprendre ton but, je vais voir ca ce soir! :)

mais juste par curiosité j'ai testé la formule avec tes nouvelles mises et le resultat est le suivant :??
logique1.png
logique1.png (14.62 Kio) Vu 96 fois
Edit: voici une formule matricielle à valider avec Ctrl + Maj + Entrée
voir le fichier
=SI(OU(C29=C30;C30=C31;SOMMPROD(--(C29:C31=0))>0;INDEX($C$29:C29;MAX(SI($C$29:C29<>C30;LIGNE($C$29:C29)-MIN(LIGNE($C$29:C29))+1));1)=C31);0;1)
Cogitation_de_l_autre_v4.xlsx
(12.93 Kio) Téléchargé 4 fois
Bonne nuit
À partir d'hier, j'ai décidé de ne plus expliquer les solutions proposées et de ne plus répondre aux MP!
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message