Seite 1 von 1

Schleifenprogrammierung :(

Verfasst: So, 01.11.2015 18:03
von micherne
Hallo, eins vorweg, in der Tabelle habe ich es bisher geschafft, immer auf das gewünschte Ergebnis zu kommen. :D
Leider sind Programmierung und ich 2 Welten die aufeinander treffen :?
Habe eine Tabelle, in der in Zelle A2 eine von mir eingegebene Zahl steht. In dem Fall 1,100.
In Zelle A3 steht ebenfalls eine von mir vorgegebene Zahl. In dem Fall 1,200

=(1*1,01^B)*(1,02^C)*(1,03^D)*(1,05^E)

Gesucht
Alle möglichen Kombinationen aufschreiben, die zwischen dem Wert in Zelle A2 und dem Wert in Zelle A3 stehen.

z.b.
B = 10, C = 0, D = 0, E = 0
B = 1, C = 2, D = 2, E = 1

Zur Veranschaulichung stelle ich noch ein Dokument ein
Veranschaulichung.ods
(14.63 KiB) 87-mal heruntergeladen
Habe leider keine Ahnung wie ich sowas Realisieren kann. Für fragen bin ich gerne offen.

Danke im Voraus

Re: Schleifenprogrammierung :(

Verfasst: So, 01.11.2015 18:30
von F3K Total
Hi,
angenommen, du hast das Makro, was willst du mit etwa 1300 Zeilen machen?
Für mich sieht das nach einer Optimierung aus, vielleicht sagst du mal was dein echtes Ziel ist?

Gruß R

Re: Schleifenprogrammierung :(

Verfasst: So, 01.11.2015 18:38
von micherne
Hey,
erst mal danke für die Antwort. Wir sind schon auf dem richtigen Weg :D
Es werden sehr viele Zeilen.
Ja es handelt sich um eine Optimierung. Die ermittelten Werte werden weiter verwendet.
Ich kann nur sagen, es ist eine Macke von mir, Online Games extremer als andere zu spielen. Welches Spiel es ist, kann ich leider nicht verraten ;)

Auch wenn es sich vielleicht in deinen Augen um eine Spielerei handelt, kannst du mir trotzdem helfen?

Re: Schleifenprogrammierung :(

Verfasst: So, 01.11.2015 18:44
von F3K Total
Ich habe das Ziel immer noch nicht verstanden, wenn es sich um eine Optimierung handelt, wäre es nicht besser, es kommt die "beste" Ergebniszeile heraus, und gut? Was ist die Beste Ergebniszeile?
Gruß R

Re: Schleifenprogrammierung :(

Verfasst: So, 01.11.2015 18:59
von micherne
In Spalte F wird dann ein Preis ermittelt. Dieser ist ausschlaggebend. Die Preise für die einzelnen Werte sind unterschiedlich und stark schwankend.
Deshalb brauche ich erst alle Möglichkeiten um dann den günstigsten Preis zu ermitteln.

Re: Schleifenprogrammierung :(

Verfasst: So, 01.11.2015 22:10
von F3K Total
Verstehe ich noch immer nicht, wie ist die Formel für den Preis?
Gruß R

Re: Schleifenprogrammierung :(

Verfasst: So, 01.11.2015 22:54
von mikeleb
Hallo,

um alle Varianten durchzuspielen benötigst du kein Makro (siehe Anhang; die Formeln der Zeile 8 bis ca. Zeile 400000 nach unten ziehen).
Prinzipiell kann man damit weiterarbeiten - effektiv ist es aber nicht.
Sinnvoll wäre, wie F3K Total bereits anmerkte, die Optimierungsentscheidung (sprich die Preisberechnung) gleich mit einfließen zu lassen.

Re: Schleifenprogrammierung :(

Verfasst: Mo, 02.11.2015 03:22
von micherne
Ist ja schon fast klasse :)
Aber die Werte in B1 und B2 sind Flexibel, sprich die ändern sich. Wenn ich nach deiner Methode gehe, komme ich in Zeile 18 schon über mein Ziel hinaus.
Die Formel für den Preis in Spalte F wäre:
Der Preis für Wert 1
=WENN(B5-'Frage Antwort'.B114>0;kurseliste.E49;0)

in G - I dann das ganze für wert 2, 3 und 4 nach dem gleichen Schema. Mit Bedingter Formatierung soll abgefragt werden, ob die entsprechenden Zellen auch gefüllt sind.
In J werden die einzelnen Preise zusammengzählt.
In "Übersicht" wird dann der min Preis ermittelt und die Kombination hierfür beschrieben.

Das Problem mit einer Formel ist natürlich, das die Tabelle enorm groß wird, was ein Makro verhindern könnte.

Re: Schleifenprogrammierung :(

Verfasst: Mo, 02.11.2015 09:48
von mikeleb
Hallo,

so langsam nimmt es Gestalt an, wobei mir die Preisberechnung immer noch nicht ganz klar ist.
Zu deinem Beispiel: B5 ist die bestimmte Anzahl für Wert1 aus den Kombinationen. Je nachdem ob er größer als ein (fester?) Vergleichswert aus 'Frage Antwort'.B114 ist, wird der Preis aus kurseliste.E49 ausgelesen. Der Preis muss dann aber sicher noch mit der Anzahl multipliziert werden - oder?
Wenn du uns jetzt noch verrätst, wo die einzelnen 8 notwendigen Werte zu finden sind (Vergleichswerte und Preise für Wert1 bis Wert4), kann man langsam ans Programmierengehen.