Jump to content

Bewegliches Permanenzfenster ...


Recommended Posts

Hallo Excel-Cracks,

ich komme mit einer Aufgabe nicht weiter, stoße damit an meine Excel-Grenze:

Ich möchte ein Permanenzfenster von 18 Coups auswerten, das also ab dem 19. Coup immer eins nach unten rutscht. Konkret möchte ich die Serienlängen auf den 6 EC feststellen.

Ein Beispiel:

Vom ersten Coup an bildet sich eine 7er-Serie auf Rot. In einer extra Spalte neben jeder EC zähle ich bei jedem Erscheinen in Folge immer 1 dazu, das ist easy. Dann kommt im 8. Coup der Abbruch und es geht irgendwie weiter bis Coup #18.

Mit Coup #19 rutscht das Fenster eins nach unten. Die anfängliche 7er-Serie ist jetzt folglich nur noch eine 6er-Serie. Neben Coup #7 steht aber immer noch die Zahl 7, eigentlich müsste jetzt eine 6 daraus werden, dann eine 5, eine 4 usw.

Wie kriege ich das hin?

:jump2:

Ich sag schon mal Danke für eure Tipps.

webpirat

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Webpirat!

Mein erster Gedanke ist: "das geht nicht". Und zwar deßhalb, weil sich zumindest bei mir alle geschriebenen Exceltabellen komplett berechnen. Also von "A:1" bis "IV:65536" im Stück, mir ist es noch nicht gelungen bestimmte Zellen von der Berechnung auszuschließen, und das würdest Du anscheinend brauchen.

Als ich das Problem mal hatte habe ich es mit einem Makro gelöst, das setzt aber Bedingungen vorraus die fixiert sind. Unter denen das Makro dann ausgeführt wird (und in einer Zelle den Wert ändert). Das ist glaub ich für Dein Ding nicht die Lösung, ich wollte es jetzt nur aufführen als Möglichkeit für andere Probleme.

Eine Lösung sehe ich nur darin, jedem Zeitfenster von 18 Coups einen eigenen Bereich zu geben in dem es berechnet wird. Der Übersichtlichkeit wegen und weil 256 Spalten eventuell auch nicht ausreichen würde ich für jedes Fenster ein anderes Tabellenblatt nehmen. Das wären dann 19 Blätter, ein Allgemeines und 18 für die Fenster die dann auch so stehen bleiben, oder 20+19 wenn die Zero vollständig berücksichtigt ist bei Pleinspielen z.B. Also dann würden die Daten in jedem "Zeitfenster" sich nur durch eine neue Permanenz verändern.

Grüße

Matthias s.

bearbeitet von matthias s.
Link zu diesem Kommentar
Auf anderen Seiten teilen

@ Revanchist

Nicht ganz - es wären 18 Spalten pro EC, also zusammen 108 Spalten. Mit denen, die ich sonst noch benötige, werden es noch mehr, aber wohl kaum 256.

Den Vorschlag von Matthias (pro 18er-Fenster ein Tabellenblatt) gefällt mir eigentlich ganz gut.

Ich gebe aber nicht auf und denke weiter über eine Lösung nach, die ohne Zusatzspalten und -tabellen auskommt. Wenn ich's hab' werde ich es hier beschreiben.

Auf jeden Fall danke für diese und weitere Tipps.

webpirat

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe eine Lösung gefunden!

:jump2:

Sie ist weder besonders elegant noch universell einsetzbar, aber für meine spezielle Anforderung ausreichend.

Zur Erinnerung:

Ich möchte für jede EC die längste Kette innerhalb eines gleitenden 20er-Fensters erfassen.

Wenn man Coup für Coup bucht ist das auch gar nicht so schwer zu programmieren. Problematisch wird es, wenn man – das hat Matthias gut erkannt – ganze Permanenzen am Stück in die Tabelle reinkopiert.

Meine Lösung:

Ich habe jetzt neben den Zähl-Spalten EN bis ES für die Kettenlängen für jede Chance eine weitere Spalte (ET bis EY). In diesen Spalten erscheinen – ebenfalls gleitend – für jeden Coup die jeweils längsten Ketten der 20 zurückliegenden Coups. Das sieht so aus:

MAX-Fenster.gif

Die Formel, die das Wunder bewirkt, ist zwar sehr lang, aber eigentlich ganz einfach. Sie wird auch ohne Murren von Excel verarbeitet. Hier die Formel in der Zelle ET23:

=MAX(WENN(EN4>=1;1;EN4-EN3);

WENN(ZÄHLENWENN(EN4:EN5;0)=0;EN5-EN3;EN5);

WENN(ZÄHLENWENN(EN4:EN6;0)=0;EN6-EN3;EN6);

WENN(ZÄHLENWENN(EN4:EN7;0)=0;EN7-EN3;EN7);

WENN(ZÄHLENWENN(EN4:EN8;0)=0;EN8-EN3;EN8);

WENN(ZÄHLENWENN(EN4:EN9;0)=0;EN9-EN3;EN9);

WENN(ZÄHLENWENN(EN4:EN10;0)=0;EN10-EN3;EN10);

WENN(ZÄHLENWENN(EN4:EN11;0)=0;EN11-EN3;EN11);

WENN(ZÄHLENWENN(EN4:EN12;0)=0;EN12-EN3;EN12);

WENN(ZÄHLENWENN(EN4:EN13;0)=0;EN13-EN3;EN13);

WENN(ZÄHLENWENN(EN4:EN14;0)=0;EN14-EN3;EN14);

WENN(ZÄHLENWENN(EN4:EN15;0)=0;EN15-EN3;EN15);

WENN(ZÄHLENWENN(EN4:EN16;0)=0;EN16-EN3;EN16);

WENN(ZÄHLENWENN(EN4:EN17;0)=0;EN17-EN3;EN17);

WENN(ZÄHLENWENN(EN4:EN18;0)=0;EN18-EN3;EN18);

WENN(ZÄHLENWENN(EN4:EN19;0)=0;EN19-EN3;EN19);

WENN(ZÄHLENWENN(EN4:EN20;0)=0;EN20-EN3;EN20);

WENN(ZÄHLENWENN(EN4:EN21;0)=0;EN21-EN3;EN21);

WENN(ZÄHLENWENN(EN4:EN22;0)=0;EN22-EN3;EN22);

WENN(ZÄHLENWENN(EN4:EN23;0)=0;EN23-EN3;EN23))

Kritisch sind ja nur die Serien, die von oben ins Fenster hineinlaufen. Also prüfe ich für jeden der 20 Coups, ob er einen Treffer produziert hat, der zur Start-Serie gehört (keine Null in der Abfolge) Wenn das der Fall ist, ziehe ich den Wert aus der letzten Zelle vor dem Fenster davon ab. Auf diese Weise gleiten die Werte genau so, wie ich es brauche.

Man sieht in der Spalte EW sehr schön, wie die Zahl immer eins kleiner wird.

Wenn jemand eine professionellere Lösung hat – nur her damit.

webpirat

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Webpirat!

Was Thomas meint denke ich auch, oder =KGRÖSSTE(EN4:EN23).

In Deiner Beschreibung hatten mich die Worte gleitendes Fenster irritiert.

Wenn ich es richtig verstehe suchst Du doch einfach nur die grösste Zahl in EN:ES, also die größte Serie innerhalb der 20 Coups,oder?

Grüße

matthias s.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo tomas39 und matthias s.

mit

Spalte ET23: =MAX(EN4:EN23) + KGRÖSSTE(EN4:EN23)
erreicht man nicht die gleichen Ergebnisse wie webpirat mit seiner Formel.

Bei Max und KGRÖSSTE erhälst du zwar den höchsten angezeigten Wert, aber nur im Startbereich EN4:EN23. Im Bereich EN8:EN27 erhälst du zwar immer noch die 9 als höchste Zahl angezeigt, die ist es aber eigentlich schon an dieser Stelle nicht mehr. Hier muss nämlich jetzt die 7 stehen. Also die Formel von Webpirat scheint mir konsequenter - da ja immer die längste Serie innerhalb der letzten 20 Coups gesucht wird.

Ciao der

Revanchist :jump2:

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Tomas und Matthias,

Revanchist hat Recht, so einfach wie von euch vorgeschlagen ist es leider nicht!

Es geht in der Tat darum, Serien, die von oben ins Fenster hineinlaufen, abzuschneiden, wenn das Fenster nach unten rutscht.

Bestes Beispiel ist die in Spalte EQ min Coup #1 beginnende 8er-Serie. Wenn ich das 20er-Fenster (ich hatte im Eröffnungsposting von einem 18er Fenster geschrieben, jetzt habe ich aber ein 20er Fenster programmiert) nun eine Zeile nach unten verschiebe, dann habe ich innerhalb des Fensters jetzt nur noch eine 7er-Serie, die wird dann zur 6er-Serie usw.

Bei MAX und KGRÖSSTE würde dagegen noch siebenmal die "8" als längste Serie ausgelesen, und das wäre falsch.

Es geht wirklich nur mit 120 zusätzlichen Spalten (20*6 EC) oder 20 Tabellenblättern oder eben mit dieser Bandwurm-Formel.

Die echten Excel-Cracks werden natürlich noch eine Profi-Lösung aus dem Hut zaubern können, mit Matrixformeln, SVERWEIS oder so. So tief bin ich in der Materie aber nicht drin, dass ich das selbst hinkriege.

Aber mit meinem Lupo kommt man auch ans Ziel, es muss nicht die Mercedes S-Klasse sein.

:jump2:

webpirat

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Webpirat!

Jetzt weiß ich daß ich es verstanden habe, gestern wusste ich nur daß noch etwas nicht stimmt in meiner Wahrnehmung, wusste aber nicht was.

Deine Monsterformel ist übrigens für mich was neues, mit MAX ewig viele WENN´S unterzukriegen.

Ich bin auch noch nicht so ein Excelkrack, daß ich mit Stil programmieren will. Wie beim Fussbal, am Ende zählen die Tore und nicht wie sie erreicht wurden.

Grüße

Matthias s.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Webpirat!

Deine Monsterformel ist übrigens für mich was neues, mit MAX ewig viele WENN´S unterzukriegen.

Grüße

Matthias s.

Hallo Matthias,

die Tatsache, dass Excel nicht mehr als 6 bis 8 verschachtelte WENNs akzeptiert, hat mich schon oft an den Rand der Verzweiflung gebracht. Das passiert aber nur bei einer Schachtelformel, also "wenn-dann...; sonst...". Inzwischen löse ich dieses Problem einfach, indem ich daneben eine neue Spalte eröffne, auf die ich mit dem letzen "dann..." verweise und die Formel dort einfach weiterstricke. Das kann ich dann endlos so treiben, die Hilfsspalten verberge ich zur besseren Übersichtlichkeit.

Hier war das nicht erforderlich, da die WENNs nicht verschachtelt sind, sondern einfach als Aufzählung innerhalb der MAX-Formel auftauchen. Ich weiß gar nicht, wo hier die Obergrenze liegt.

Das gleiche gilt übrigens, wenn du die WENNs mit + verknüpfst. Dies kann eine Alternative zur oben beschriebenen Methode sein, um mehr WENNs in eine "wenn-dann..."-Formel zu packen. Es funktioniert aber nur, wenn sich die Bedingungen zu 100 Prozent gegenseitig ausschließen.

Ich lege in meinen Formeln aber oft Prioritäten für Bedingungen fest, die sich nicht ausschließen, und mache mir dabei zunutze, dass Excel die Formel nicht weiter abarbeitet, sobald die erste Bedingung erfüllt ist. Deshalb wende ich fast immer die oben beschriebene "Methode Hilfsspalte" an.

webpirat

:jump2:

Link zu diesem Kommentar
Auf anderen Seiten teilen

@matthias s.

Hallo Matthias,

hoffe, @webpirat wird mir verzeihen, dass ich sein thread missbrauche.

Ich habe die Datei, Deine Umsetzung der Idee des Phantoms der Kärntner Str., im Forum von David Copperfield runter geladen. Deshalb möchte ich Dir etwas dafür als Tausch anbieten, ich bewundere Euren Enthusiasmus, von Dir, von Wenke, früher von Chi Lu Jung vor allem, vielleicht arbeitet er irgendwo fleißig an einer anderen Setzmaschine.

Sag mir nur, was Dich interessiert. Habe einige Sachen, klassisch und physikalisch, Programme und Bücher (englisch) in PDF für Poker etc.

Nehmen und Geben, nicht wahr, liebe Forumsneulinge und Veteranen?

Mit freundlichen Grüßen

L.

Link zu diesem Kommentar
Auf anderen Seiten teilen

hoffe, @webpirat wird mir verzeihen, dass ich sein thread missbrauche.

...

Nein. :jump2:

Warum postest du so etwas nicht als PM direkt an matthias s. ???

Sonst steht hier demnächst in jeden Thread auch noch:

"Ich grüße meine Freundin und deren Oma und ... und alle, die mich kennen."

webpirat

Link zu diesem Kommentar
Auf anderen Seiten teilen

Warum postest du so etwas nicht als PM direkt an matthias s. ???

Du wirst es nicht glauben, der nahe liegende Grund: es sollte keine private Nachricht werden.

Also noch einmal für @webpirat und alle @sofortversteher, @schlaumeier, @abstauber

Auch wenn matthias s. und andere für ihre Bemühungen nichts erwarten, eine freundliche Gegenleistung ab und zu könnte in einem Forum ein Roulettewunder bewirken.

Hoffe diesmal alle Unklarheiten beseitigt zu haben.

Legion

Link zu diesem Kommentar
Auf anderen Seiten teilen

@legion

ich hatte sogar kapituliert von meiner eigenen idee diese mit excel umzusetzen

trotzdem wie man es auch betrachtet,ich komme immer wieder auf die effizienteste progie zurück

für die alten hasen

whittaker

für die mathematiker die fibonaccifolge (auf doppeltreffer)

erweitert habe ich das nur um die low+high variante

low nach minustreffer immer 1 stk

high nach treffer entsprechend der progressionsebene

am besten ist es überhaupt ,zwar low+high zu spielen,jedoch nur die high-sätze zu progressieren

die low sätze sind also quasi nur die portokasse,dh auch wenn der saldo nicht ins plus zurückkehrt durch gewonnen hightreffer,wird erneut gestartet

es kommt nämlich meistens so,das in folge längerer spieldauer höhere gewonnen high sätze die gesammten bisher gesammelten low minus treffer tilgen

ist allerdings wirklich ein geduldsspiel

in kürze geht das eh online (GB himself ca 500 - 700 kB maximal,soll ja auf das PDA-Handy draufpassen)

CU

RCEC

Link zu diesem Kommentar
Auf anderen Seiten teilen

@RCEC

low nach minustreffer immer 1 stk

high nach treffer entsprechend der progressionsebene

ist das der Guetting-Marsch oder die UP von Werntgen?

Blicke bei diesen beiden Progris nämlich schon nicht mehr durch, welche die mit dem Steigern im Gewinn ist.

Danke für einen kurze Hinweis.

Ciao der

Revanchist :jump2:

Link zu diesem Kommentar
Auf anderen Seiten teilen

@webpirat

die letzten Beiträge waren glaube ich kleinere Ausflüge ins unbegrenzte Land der Roulettmaterie. Lass aber RCEC die letzte Frage bitte noch beantworten.

Mit dem Thema: Bewegliches Permanenzfenster ..., ... mit Excel auswerten hat das allerdings im Moment noch wenig zu tun. Sorry.

In welchem Thread stelle ich denn Fragen zur UV von Werntgen oder den Guetting-Marsch - speziell was deren Programmierung betrifft. Vielleicht einen eigenen Thread eröffnen?

Ciao der

Revanchist :jump2:

bearbeitet von Revanchist
Link zu diesem Kommentar
Auf anderen Seiten teilen

Wie ist deine Meinung dazu?

Du kannst jetzt schreiben und dich später registrieren. Bereits registrierter Teilnehmer? Dann melde dich jetzt an, um einen Kommentar zu schreiben.
Hinweis: Dein Beitrag wird nicht sofort sichtbar sein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Neu erstellen...