Mit VBA wäre dies wahrscheinlich einfacher, aber mit Formeln ist dies möglich. Ich arbeite in LibreOffice Calc, das eine niedrigere maximale Anzahl von Zeichen pro Formel aufweist. Daher musste ich Hilfsspalten verwenden. Sie können dies jedoch zu einer einzigen Formel zusammenfassen, wenn Sie möchten. Ich habe dies um maximal sechs Würfel herum gebaut, aber wenn Sie dem Muster in den Hilfsspalten folgen, können Sie es auf so viele erweitern, wie Sie möchten.
In Zelle A1 steht Ihre Startnummer. Normalerweise wäre es eine 1
für jeden Würfel. Ich begann damit 123456
, die Logik zu veranschaulichen. Die Spalten C bis H sind die Hilfssäulen, eine für jeden von bis zu sechs Würfeln. Diese Zellen ermitteln jeweils den nächsten Wert. Spalte A verkettet die Werte zu einer einzigen Zeichenfolge. Geben Sie die Formeln für Zeile 2 ein und kopieren Sie die Zeile nach unten, um so viele Felder wie nötig vorab auszufüllen (nicht benötigte Zellen sind leer und Sie können die Spalten C: H ausblenden, wenn Sie möchten).
Die Formel in A2:
=IF(A1="","",C2&D2&E2&F2&G2&H2)
Der Blindversuch verbirgt nicht benötigte Zellen. Wenn Sie alles in eine einzige Formel umwandeln möchten, ersetzen Sie die Referenzen durch die Formeln in C2: H2.
Die Formeln in C2: H2 lauten wie folgt:
C2: = IF(VALUE(LEFT(A1,1))=6,"", VALUE(LEFT(A1,1)) + OR(VALUE(MID(A1,2,1))=6))
D2: = IF(VALUE(MID(A1,2,1))=6,C2,VALUE(MID(A1,2,1))+IF(LEN(A1)>2,VALUE(MID(A1,3,1))=6,1))
E2: =IF(LEN(A1)<3,"",IF(VALUE(MID(A1,3,1))=6,D2,VALUE(MID(A1,3,1))+IF(LEN(A1)>3,VALUE(MID(A1,4,1))=6,1)))
F2: =IF(LEN(A1)<4,"",IF(VALUE(MID(A1,4,1))=6,E2,VALUE(MID(A1,4,1))+IF(LEN(A1)>4,VALUE(MID(A1,5,1))=6,1)))
G2: =IF(LEN(A1)<5,"",IF(VALUE(MID(A1,5,1))=6,F2,VALUE(MID(A1,5,1))+IF(LEN(A1)>5,VALUE(MID(A1,6,1))=6,1)))
H2: =IF(LEN(A1)<6,"",IF(VALUE(MID(A1,6,1))=6,G2,VALUE(MID(A1,6,1))+1))
Ich habe Leerzeichen hinzugefügt, um die Formelmuster auszurichten, damit die Logik leichter zu erkennen ist. Sie können diese entfernen. Sie haben mindestens zwei Würfel, sodass die ersten beiden Formeln nicht prüfen müssen, ob sie vorhanden sind. Wenn der erste Würfel erreicht ist 6
, können alle anderen nur sein 6
, also ist es die letzte Reihe. Die ODER-Funktion in C2 liegt daran, dass LO Calc die Auswertung des Booleschen Ausdrucks verhindert hat. der OP erzwingt es (und tut nichts weh). Der letzte potenzielle Würfel muss keinen Wert von einem nächsten übertragen, daher ist seine Formel etwas kürzer.
Beachten Sie, dass die Spalten D bis H einen Verweis auf die vorherige Spalte enthalten. Wenn Sie dies in einer einzigen Formel zusammenfassen möchten, ersetzen Sie die C2-Referenz in D2 durch die C2-Formel. Machen Sie dasselbe für jede nachfolgende Spalte (die Formel wird dabei größer).
Hier ist die Ausgabe für zwei Würfel: