BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das OpenOffice Forum zu erhalten!

DANKE >><< DANKE

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des OpenOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als OO-SUPPORTER gekennzeichnet. 🤗

Formel mit verschiedenen Werten wiederholen

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Leviathan
Beiträge: 10
Registriert: Di 25. Dez 2018, 15:36

Formel mit verschiedenen Werten wiederholen

Beitrag von Leviathan » Di 25. Dez 2018, 15:58

Hallo zusammen,

nun habe ich mich doch angelmeldet. Einfache Dinge kann ich mir immer selbst aneignen, aber diesmal finde ich keine Lösung. Vielleicht liegt es daran, das ich nicht weiß nach was ich suchen muss. Und ich hatte nicht vor, Calc komplett zu studieren, um dann festzustellen, das das was ich wollte gar nicht geht. Kann auch sein. Hier mein Problem:

Ich möchte eine Tabelle erstellen, die Werte je nach Eingabe berechnet.
In diesem Fall soll die Formel die Berechnung mit einer Reihe von Werten wiederholen, und dann als Summe anzeigen.
(Irgendwie ist das diesmal eine Nummer zu hoch.)

Wenn z.B. Level 1 eines Gebäudes 2 Gold kostet, wie viel kosten alle Level bis 20 zusammen? (Steigerung mit *1,5)
Für ein Level sieht die Formel so aus:

=2*1,5^(Zelle mit Level-1)
=2*1,5^(1-1) =2
=2*1,5^(2-1) =3
=2*1,5^(3-1) =5
=2*1,5^(4-1) =7
etc.

Diese Formel funktioniert (ich weiß das rundet nicht richtig, bzw. ist ohne Kommastelle, gehört aber so)

Nun möchte ich, das die Operation auch für alle Level bis 20 (oder welches auch immer ich angebe) wiederholt und summiert wird.
So das ich sehen kann, was alle Level die gebaut wurden in Summe kosten.

Ich will die Zelle quasi anweisen, die Formel mit den Werten von-bis (bzw. 0/1-Wert den ich angebe) zu berechnen und zu summieren.
Das Ergebnis in der Zelle sollte dann bei level 1-20 lauten: 13.305 Bier. äh... Gold.

Meine Frage - geht das, und wenn ja, wie? Ich habe schon alles mögliche versucht.

Vielen Dank + Grüße
Leviathan
Zuletzt geändert von Leviathan am Di 25. Dez 2018, 20:16, insgesamt 1-mal geändert.

Jodokus
Beiträge: 703
Registriert: Mo 8. Feb 2010, 17:13

Re: Formel mit verschiendenen Werten wiederholen

Beitrag von Jodokus » Di 25. Dez 2018, 16:52

Hi,

Code: Alles auswählen

=SUMME(2*POTENZ(1,5;(ZEILE(A1:A20)-1)))
Die Rundung musst du selbst versuchen, da ich nicht weiß, an welcher Stelle wie gerundet werden soll.

Gruß
Jodokus
Arbeiten am Computer ist wie U-Boot fahren.
Machst du ein Fenster auf, fangen die Probleme an.

Leviathan
Beiträge: 10
Registriert: Di 25. Dez 2018, 15:36

Re: Formel mit verschiedenen Werten wiederholen

Beitrag von Leviathan » Di 25. Dez 2018, 20:12

Hi, danke!

Leider kommen viel zu große Zahlen heraus. Oder ich verwende es nicht richtig.
Eventuell habe ich es nicht ausreichend beschrieben, ich kopier mal eben was...

Level / Kosten

1 2
2 3
3 5
4 7
5 11
6 16
7 23
8 35
9 52
10 77
11 116
12 173
13 260
14 390
15 584
16 876
17 1.314
18 1.971
19 2.956
20 4.434

SUM 13.305
(theoretisch ist die Liste endlos)

Diese Liste ist nicht vorhanden in der Tabelle, sie soll bzw. muss/müsste in der Formel enthalten sein. "Sichtbare" Zellen sind:

"Level"zelle: 20 (Level)
"Formel"zelle: 13.305 (Kosten)

Nun habe ich ein Feld, das diese Summe (SUM) anzeigen soll, wenn ich in die Formel eine andere Zelle einbinde, in der steht (Level): 20

Ändere ich die 20 in eine beliebige andere Zahl (Level), ändert sich die Summe der Gestamkosten.
So kann man sehen, was es kostet, entsprechend viele Level zu bauen.

Nur wie geht das, oder wie wende ich die Formel an? Das es geht weiß ich, habe es schon gesehen bei anderen (aber vermutlich Excel)


Die leere Formel von dir ergibt bereits ein (sinnloses) Ergebnis: 13.297,03 (ich vermute das soll Level 20 berechnen)(Abweichung ist nicht so gut)
Diese Formel kann man ja nicht variieren?

Die Formel würde mir nur nützen, wenn sie so aussehen würde (was nicht geht):

=SUMME(2*POTENZ(1,5;(ZEILE(Bezug zu Zelle mit Level die geändert werden kann)-1)))

z.B. A1 wird ausgefüllt mit 20 und in der Formel stände dann:
=SUMME(2*POTENZ(1,5;(ZEILE(A1)-1)))


Falls diese Formel überhaupt funktioniert, muss man sie immer umschreiben (statisch), und die Tabelle die ich erstellen will um endlose Listen mit Bezugswerten ergänzen (es gibt ja noch mehr Gebäude/Technologien/etc.)

Die Formel die du mir gegeben hast liefert das gleiche Ergebnis wenn ich aus A1:A20 einfach A+Zahl mache.
Also das gleiche Ergebnis wie meine Formel:
=2*1,5^(A1-1) ..........=2
usw.

Ich habe versucht die Formel zu modifizieren, aber ich komme zu keiner Lösung. Falls ich sie falsch verwende, korrigiere mich.


Ich suche eine Formel dieser Art (sinngemäß):
=Summe von (2*1,5^((rechne alle Ergebnisse für alle Werte von 0/1 bis "Zelle mit maximal level"-1)


Ich glaube das ich eine Art Matrixfunktion brauche.

Hat noch jemand eine Idee? (Ich schaue eventuell erst morgen wieder herein)

Grüße
Levi

echo
Beiträge: 180
Registriert: Fr 1. Dez 2017, 12:49

Re: Formel mit verschiedenen Werten wiederholen

Beitrag von echo » Di 25. Dez 2018, 23:07

Leider kommen viel zu große Zahlen heraus. Oder ich verwende es nicht richtig.
Eventuell habe ich es nicht ausreichend beschrieben, ich kopier mal eben was...
Hallo Levi
die Formel von Jodokus bietet bereits die Summe aller Ergebnisse Level 1-20 und arbeitet perfekt.
schau mal das Beispiel
Gruß Holger
Eine kleine Rückmeldung kommt immer gut an :)

Leviathan
Beiträge: 10
Registriert: Di 25. Dez 2018, 15:36

Re: Formel mit verschiedenen Werten wiederholen

Beitrag von Leviathan » Do 27. Dez 2018, 17:03

Hallo Holger,

ich entschuldige die späte Antwort, aber ich kam gestern nicht mehr dazu, ich musste die Formeln auch erstmal ausprobieren.

Viele Dank für deine Hilfe und vor allem für die Datei. Praktische Beispiele sind immer die bessere Erklärung. =)
Allerdings verstehe ich nicht alles an der Datei - wie die Pfeile (hoch/runter) gemacht werden, wie die automatische Auflistung funktioniert (gelb unterlegt), usw. (sehr interessant)

Zwischen den Formen besteht auch ein nicht unwesentlicher Unterschied aus meiner Sicht:

Jodokus:

Code: Alles auswählen

=SUMME(2*POTENZ(1,5;(ZEILE(A1:A20)-1)))
Deine:

Code: Alles auswählen

=SUMME(2*POTENZ(1,5;(ZEILE(INDIREKT("A1:A"&B2))-1)))
Ist für mich schon ein Unterscheid (vielleicht weil ich nicht verstehe wie man das anwendet) und auch nicht das gleiche Ergebnis. Deine Formel kann ich dafür leider nicht nachvollziehen, warum/wie sie funktioniert. So gut kenne ich mich nicht aus. Was macht "A1:A"? Das sind ja gar keine Zellen...

Immerhin kann ich sie benutzen, habe auch schon ein wenig ausprobiert (Formel in anderen Kontext einbinden), und freu mich sehr! Ihr habt mir sehr geholfen. *stellt die Formeln zu den Weihnachtsgeschenken* :D

Die Grundlagen von Excel/Clac sind recht einfach, noch sehr intuitiv und eher "klassische" Mathematik. Irgendwann kommt dann aber ein Punkt, wo die Sache abstrakt wird, eher eine Art Programmierung für eine Rechenmatrix. Ab da verstehe ich dann nichts mehr. :mrgreen:


Ich habe mir im Zusammenhang mit diesen Formeln auch an dieser die Zähne ausgebissen. Konnte keinen Bezug herstellen, und keine Funktion zuordnen:

Code: Alles auswählen

=CEILING(M$6*(1.5^(L7-1)),1)
Auch diese Formel steht im Zusammenhang mit der Entwickung von Zahlenreihen. Jetzt hab ich eben doch noch die Lösung gefunden,
das hat mit der Rundung zu tun von der wir es schon hatten. Falls noch jemand auf der Suche ist:

Formel aus dem englischen, wie ich sie fand (und so nicht ging):

Code: Alles auswählen

=CEILING(M$6*(1.5^(L7-1)),1)
Wie sie im deutschen OO Calc lauten muss damit sie funktioniert:
(deutscher Befehl, zusätzliche Klammer für 1. Wert, Semikolon (;1):

Code: Alles auswählen

=OBERGRENZE((M$6*(1,5^(L7-1)));1)
also eigentlich... (A1= Levelkosten und B1 = Levelzahl-1 (Zellen))
=OBERGRENZE((A1*(1,5^(B1-1)));1)

$ (A$1) fixiert den Bezug nur auf eine bestimmte Zelle (A1), auch wenn die Formelzelle verschoben/geändert wird.
(soweit habe ich das verstanden)

Dann werden aus unseren (die sonst auf- und abgerundet werden ohne Kommastellen)...
2,0
3,0
4,5
6,8
10,1
15,2
22,8
usw.

...diese gewünschten Zahlen:
2
3
5
7
11
16
23
usw.

Ich hatte das nun schon mit...

Code: Alles auswählen

=AUFRUNDEN(Formel)
...gemacht. Mal sehen ob das weiterhin die bessere Lösung ist.

Beste Grüße
Levi

Leviathan
Beiträge: 10
Registriert: Di 25. Dez 2018, 15:36

Re: Formel mit verschiedenen Werten wiederholen

Beitrag von Leviathan » Do 27. Dez 2018, 19:12

PS/Edit:

Ich glaube ich habe doch eine Ahnung was die Formel von euch eigentlich bedeutet.

Code: Alles auswählen

=SUMME(2*POTENZ(1,5;(ZEILE(A1:A20)-1)))

Code: Alles auswählen

=SUMME(2*POTENZ(1,5;(ZEILE(INDIREKT("A1:A"&B2))-1)))
Bzw.: A1:A20 und "A1:A"&B2

Ich verstehe das nun so, das ich entweder A1-A20 fest definiere (von-bis), oder mit "A1:A"&B2 festlege: A1 bis A(Anzahl aus Zelle B2).
Dann hat das natürlich beides logisch. Was ich gewöhnungsbedürftig finde ist, das "A1:A"& praktisch nicht existiert in der Tabelle,
sondern nur "virtuell" in der Formel. Aber das ist ja auch gut so.

Ist denn (quasi): "ZelleX:Spalte"&ZelleX , also INDIREKT(":"&) eine Art von Befehl? Und gehört INDIREKT dazu damit das geht?
Und wenn ja, wie heißt das? (Bilde mich gern weiter)


Edit: Weil ich nichts finde - kann man statt einer Zelle (z.B. B2) auch den Cursor (Cursorposition) als Bezug angeben?


Ist das richtig/geht das? (Danach bin ich auch zufrieden) :mrgreen:

F3K Total
Beiträge: 1006
Registriert: Mo 1. Aug 2011, 00:03

Re: Formel mit verschiedenen Werten wiederholen

Beitrag von F3K Total » Fr 28. Dez 2018, 13:42

Moin,
mit Openoffice geht fast alles, auch die aktuelle Cursorposition als Bezug zu nehmen, allerdings musst du dazu ein entsprechendes Makro schreiben, das eben die gerade markierte Zelle detektiert und deren Position (Zeile) ausließt.

Gruß R
Windows 10: AOO, LO Linux Mint: AOO, LO

mikele
Beiträge: 771
Registriert: Sa 23. Jul 2011, 22:09

Re: Formel mit verschiedenen Werten wiederholen

Beitrag von mikele » Sa 29. Dez 2018, 01:03

Hallo,
Indirekt() macht aus einem Text einen "richtigen" Bereichsbezug. Zeile() liefert dir dann die Werte der Zeilen in dem Bezug (hier also die Werte 1 bis 20).
Damit du mit der Formel dann auch die gewünschte Summe erhältst müsstest du sie allerdings als Matrixformel eingeben.
Eine Alternative wäre die Funktion Summenprodukt() (die von Hause aus eine Matrixformel ist), wenn in B2 der Level steht:

Code: Alles auswählen

=SUMMENPRODUKT(AUFRUNDEN(2*POTENZ(1,5;ZEILE(INDIREKT("A1:A"&B2))-1)))
kann man statt einer Zelle (z.B. B2) auch den Cursor (Cursorposition) als Bezug angeben?
Wie soll ich mit das vorstellen?
Gruß,
mikele

Leviathan
Beiträge: 10
Registriert: Di 25. Dez 2018, 15:36

Re: Formel mit verschiedenen Werten wiederholen

Beitrag von Leviathan » Sa 29. Dez 2018, 01:46

Hi,

@ F3K Total - das klingt kompliziert... haben schon mehr Leute versucht soweit Google mir was veraten will. Finde aber leider keine Anleitung für Laien.

@ mikele - hm... um die Befehle so zu verschachteln muss man sie wohl ausreichend verstehen. Die Formel die du mir gegeben hast, habe ich wohl auch schon mal so ähnlich gesehen. Ich werde sie mal ausprobieren. Je nach dem was man machen will, eignet sich das eine oder andere besser.

Das mit der Cursorposition hatte ich mir so vorgestellt: echo (Holger) hatte in seinem Beitrag eine Datei mit Formeln angehängt.
Da hatte er auch so Pfeile für + und -, um die Zahl in der Bezugszelle zu verstellen. Ich hab mir dann auch so Pfeile gebastelt, habe es nach einer Weile hinbekommen. (Drehfeld hieß das, meine ich.)

Dann dachte ich aber, ich müsste für alle Zellen Pfeile machen (ca. 30), und das ist recht umständlich und sieht furchtbar aus.

Ich dachte dann, wenn ich statt einer Zelle den Cursor angeben könnte, würde der Pfeil immer in der Zelle + und - machen, wo der Cursor gerade geklickt ist. Vorausgesetzt, die Zelle enthält eine Zahl, bzw. die Tabelle wird später bis aus die Eingabefelder gesperrt.

Ich vermute aber, das Drehfeld lässt keinen so komplizierten Befehl zu, da müsste ich wohl was Spezielles "basteln".


(erledigt)
Ein ganz anders Problem, das sich erst gestern als eines erwiesen hat, und für das ich noch keine Lösung fand auf die schnelle, betrifft die Summen-Formeln. Vermutlich auch die Formel mit dem Summenprodukt.

Wenn ich Zahlen von 1-n eingebe, funktioniert das prima. Aber stelle ich die Zelle auf 0, bleibt der Wert für 1 erhalten (hat auch nichts mit dem Runden zu tun wie mir scheint). Das heißt, auch ohne Level erhalte ich einen Wert. Das ist mir gestern erst aufgefallen, als ich die Formel angefangen habe zu "verbauen".

Nun habe ich keine Ahnung was ich tun kann, damit ich bei Level 0 auch als Kosten 0 erhalte. Ich werde das heute nochmal ausprobieren...
Da brauche ich unbedingt eine Lösung für. Wenn Level 1 nur Kosten von 1-2 hat, könnte man das ignorieren, aber manches auf Level 1 hat Kosten von 10.000 oder mehr. Das führt starken Abweichungen. Das muss alles auf 0.



EDIT: Habe eine Lösung für mein 0-Problem gefunden. Habe ein wenig gesucht nach WENN, habe ja die letzen Tage einiges gesehen.
(Nachts kann ich besser denken 8-) ). Die Formeln sehen nun so aus:

Kosten aktuelles Level

Code: Alles auswählen

=WENN(B2<1;"0";AUFRUNDEN(2*POTENZ(1,5;(B2-1))))
Kostensumme gebaute Level

Code: Alles auswählen

=WENN(B2<1;"0";AUFRUNDEN(SUMME(2*POTENZ(1,5;(ZEILE(INDIREKT("A1:A"&B2))-1)))))
Kosten nächster Level

Code: Alles auswählen

=AUFRUNDEN(2*POTENZ(1,5;(B2-0)))
Kosten bis zu Level

Code: Alles auswählen

=AUFRUNDEN((SUMME(2*POTENZ(1,5;(ZEILE(INDIREKT("A1:A"&B8))-1))))-(SUMME(2*POTENZ(1,5;(ZEILE(INDIREKT("A1:A"&B2))-1)))))
Letze Formel bezieht sich (auch) auf eine 2. Zelle, in der statt Level 10 z.B. 20 seht, es wird dann angezeigt, wie viel diese 10 Level Differenz kosten.
Ist die Zahl der 2. Zelle kleiner, wird die Zahl negativ. Ich werde mir da noch eine Lösung suchen, die Zahl dann ggf. auszublenden.
(Dazu mache ich dann einen neuen Thread wenn mir das nicht gelingt.)

Nur ein (neues) Problem gibts dabei, und ich rätsle - wenn 0 nun 0 ist, und ich stelle "Kosten bis zu Level" auf 1 ein, dann leibt das auf 0, weil B2 0 ist. (Rechnung 1-0 = 1)...(logisch) Wie kann ich das umgehen? (Ein Problem jagt das nächste wie mir scheint)

Ich müsste Calc erklären, das 0 an dieser Stelle nicht nichts ist, sondern nur 1 weniger. Dazu fällt mir gar nichts ein...
Wenn mir hier jemand einen Tipp geben kann, das wäre wunderbar.

Grüße
Levi

mikele
Beiträge: 771
Registriert: Sa 23. Jul 2011, 22:09

Re: Formel mit verschiedenen Werten wiederholen

Beitrag von mikele » Sa 29. Dez 2018, 15:36

Hallo,
ich bin mir auch nach mehrmaligem Lesen nicht sicher, ob ich das Problem richtig verstanden habe.
Was ich mir so zusammengereimt habe, habe ich mal in eine Datei gepackt.
Ganz wichtig:

Code: Alles auswählen

AUFRUNDEN(SUMME(2*POTENZ(1,5;(ZEILE(INDIREKT("A1:A"&B2))-1))))
und

Code: Alles auswählen

SUMME(AUFRUNDEN(2*POTENZ(1,5;(ZEILE(INDIREKT("A1:A"&B2))-1))))
liefern durch die unterschiedliche Rundung auch unterschiedliche Werte! Welche Variante ist die gewünschte? Soll jeder Einzelwert gerundet werden (so wie am Anfang gefordert) oder erst nach der Summierung (wie in den letzten Formeln)?
In der Datei habe ich auch ein Drehfeld nachgebaut (über zwei Schaltflächen). Ist eine Zelle mit einem Wert ausgewählt, kann der Wert um 1 erhöht/erniedrigt werden.
Dateianhänge
level ändern.ods
(11.93 KiB) 129-mal heruntergeladen
Gruß,
mikele

Antworten