excel: ab best. Wert anderer Zellbereich

normalootto

Cadet 2nd Year
Registriert
Jan. 2015
Beiträge
20
Hallo!

Ich habe folgendes Problem:

Ich muss einen Graphen erstellen, der bis zu einem bestimmten Wert die Werte aus dem jeweils entprechenden Zeilen in Spalte A verwenden soll und danach die Werte aus dem entsprechenden Bereich in Spalte B. Die jeweiligen Werte steigen tendenziell (also fallen dazwischen auch kurz wieder) bis zu einem Wert und fallen danach tendenziell wieder ab, wobei die Spalte B=A-2 ist. Vor dem Hochpunkt soll der Graph die Werte aus der Spalte A übernehmen, danach aus der Spalte B (bzw. aus der Kombination der beiden etwa aus Spalte C).

Ich suche also nach einem Graphen, der unterschiedliche Zellbereiche verarbeitet oder einer Formel, die mir in diesem Fall die Spalte C berechnet. Im angehängten Beispiel habe ich die Werte in C manuell eingegeben. Der Hochpunkt wäre 10, wonach die Spalte B maßgebend sein müsste.

Selbes Problem, mit anderem Ansatz: Die Spalte C soll bis zum MAX in Spalte A die Werte der Spalte A ausgeben, nach dem MAX die Werte aus B.

Ich hoffe, dass ich mich verständlich ausgedrückt habe :) Vielen Dank schon mal!

Unbenannt.PNG
 
Hier stand Mist.


MfG Matze
 
Zuletzt bearbeitet:
die formel müsste eine kombination von folgendem sein.
als erstes brauchst du den index der ersten 10 aus spalte A.
MIN(WENN($A$1:$A$1000=10;ZEILE($A$1:$A$1000)))

da sollte in dem fall zeile 10 rauskommen.

danach musste ab dem index immer aus spalte B lesen.
das wäre sowas wie:
wenn(zeile($A$1:$A$1000) <= MIN(WENN($A$1:$A$1000=10;ZEILE($A$1:$A$1000))); $A$1:$A$1000; $B$1:$B$1000)
 
Zuletzt bearbeitet:
Vielen Dank für die schnelle Antwort!

Leider klappt das so nicht ganz. Mit den angegebenen Formeln spuckt er nur die Werte aus Spalte B aus, außer wenn in A eine 10 steht - dann steht bei der ersten Formel 1 (warum auch immer) und bei der zweiten Formel 10 da..
 
=WENN(A1>9;B1;MAX(A1:B1))

Wenn A größer als 9 (also ab 10 ;) ) ist, wird B ausgegeben..
Meintest du es so? :confused_alt:

Habe mit deinen Zahlen gearbeitet und die Ausgabe ist genau wie bei dir...!
 
Zuletzt bearbeitet:
Machst du diesen Wechsel von A nach B nur einmal oder öfter?

Kannst du eine Hilfsspalte verwenden?

Hilfsspalte D1 = 0

In D2 folgende Formel:
=WENN(UND(D1=0;A1=10);D1+1;D1)

In Spalte C1 kannst du dann schreiben:
=WENN(D1=0;A1;A1-2)

Man könnte das auch in eine Formel packen, diese wäre aber recht umfangreich und wieso ist der Hochpunkt 10, wenn es in Spalte A auch noch eine 13 gibt?
 
Zuletzt bearbeitet von einem Moderator:
@Andy8891:
Andy8891 schrieb:
Machst du diesen Wechsel von A nach B nur einmal oder öfter?

Hust.. ;)

normalootto schrieb:
Ich suche also nach einem Graphen, der unterschiedliche Zellbereiche verarbeitet oder einer Formel, die mir in diesem Fall die Spalte C berechnet. Im angehängten Beispiel habe ich die Werte in C manuell eingegeben. Der Hochpunkt wäre 10, wonach die Spalte B maßgebend sein müsste.

Selbes Problem, mit anderem Ansatz: Die Spalte C soll bis zum MAX in Spalte A die Werte der Spalte A ausgeben, nach dem MAX die Werte aus B.

@normalootto:
Habe mich etwas irretieren lassen... folgendes sollte deinen Anforderungen entsprechen:
=WENN(A1>10;B1;A1)
 
Zuletzt bearbeitet:
Das ist schon gar nicht schlecht, allerdings funktioniert das nicht mehr bei meinem realen Beispiel :( So was in der Richtung habe ich schon hinbekommen, allerdings ist bei mir die Grenze (im Bsp 10) öfter als einmal erreicht - hier soll der Graph an der Grenze entlang gehen (also bei 10) und erst runter gehen, wenn die Spalte B nach dem ersten Ansteigen wieder fällt.

A soll also bis 10 ausgegeben werden, dann 10 (solange A auf 10 ist) und dann, wenn B nach dem Ansteigen auf 10 wieder fällt, sollte B angegeben werden.

Anbei ein Foto vom Graphen, wie er dann aussehen sollte. (Spalte A wäre braun und ganz oben, B rot, die obere Grenze ist hellblau und verläuft horizontal, gesucht ist der orange Graph (hier manuell zusammengesetzt); der blaue Graph ist das vorläufige automatische Ergebnis, das sich aber nicht mit dem Fallen der roten Linie ebenso senkt))

Graph.PNG



@Andy8891: der Wechsel findet nur einmal statt, Hilfstabellen kann ich ohne Ende verwenden :)
 
Was funktioniert bei meiner Lösung nicht?

Graph.JPG

Füll bitte die Spalte C nochmal manuell aus, wo überall 10 stehen sollte damit man den übergangspunkt genau sieht.
 
Zuletzt bearbeitet von einem Moderator:
Andy8891 schrieb:
...und wieso ist der Hochpunkt 10, wenn es in Spalte A auch noch eine 13 gibt?

Ab dem ersten Mal Erreichen des Hochpunktes, soll dieser ausgegeben werden. Erst nachdem die Werte wieder fallen (also irgendwo über dem Hochpunkt), sollen die anderen Werte ausgegeben werden.
Bei deiner Lösung wird ab dem ersten Mal Hochpunkt sofort die Spalte B ausgegeben (Wenn ich mir das so überlege, war meine Erklärung wohl irreführend :)).
Man braucht also sozusagen eine Hilfstabelle, in der die Spalte A überführt wird in =WENN(A>Hochpunkt;Hochpunkt;A) Das habe ich auch, nur bleibt dann A auch nach dem Fallen auf der Höhe des Hochpunktes, es sollte dann aber fallen - sprich B übernommen werden.
Ich versuche es nochmal
 
Ich fürchte, dass ich entweder das Ganze nicht erklären kann, oder meine Beispieltabelle zu vereinfacht ist. Hier nochmal ein Versuch mit der richtigen Tabelle (Ich habe dazwischen einige Zahlen, wo bei A der Hochpunkt erreicht ist, ausgeblendet).

Tabelle.PNG
 
Zuletzt bearbeitet:
Kannst du dort noch eine Spalte C mit der Lösung machen?

Und in dem Abschnitt ist kein Übergang zu B oder?
 
ja die formeln die ich geschrieben habe sind nicht ganz korrekt, die arbeit die zellenbezüge hinzufrickeln kannst du selbst am besten ;)


am besten du beschreibst es algorithmisch.
in deiner ersten beschreibung heißt es:

werte aus spalte A nehmen bis der wert 10 erreicht ist.
danach werte aus spalte B.


stimmt das nicht?
wird danach nochmal gewechselt?

ansonsten ist das mit einem kleinen vba script ganz schnell erledigt und nicht so kompliziert wie mit der funktionalen formel.



ich hab mal meine formeln korrigiert.

ergebnis sieht so aus
excel.JPG

der index der ersten 10 bzw erste zeile über 10 steht in E3 und machst du folgender maßen:
{=MIN(WENN($A$1:$A$1000>=10;ZEILE($A$1:$A$1000)))}

die eckigen klammern nicht mit eingeben, sondern die formel eintragen und mit strg+shift+enter abschließen.
das nennt sich matrixformel.

in spalte C kommt dann rein:
=WENN(ZEILE()<=$E$3;$A$1:$A$1000;$B$1:$B$1000)

wenn du rausbekommst, wie man matrixformeln in normalen verwenden kann, könntest du das $E$3 auch noch erstzen und dir E3 damit sparen.
 
Zuletzt bearbeitet:
Hier nochmal die Tabelle mit der Lösungsspalte CCCCCC

Tabelle_2.PNG

Ich versuch mich mal an der matrixformel :)

Vielen Dank mal zwischendurch! :)
Ergänzung ()

@DonnyDepp: Das Problem ist, dass ich im richtigen Beispiel einen etwas anderen Verlauf habe. (und ich das wohl auch nicht ganz richtig erklärt habe.) Wenn A größer als der Höchstwert 10 wird, dann soll in C 10 stehen, und zwar so lange, bis B unter 10 fällt. (Ich habe C wohl nicht korrekt ausgefüllt..)

Unbenannt_2.PNG
 
Zuletzt bearbeitet:
na das ist dann nur noch ne winzige änderung.

versuch mal
=MIN(10;WERT(WENN(ZEILE()<=$E$3;$A$1:$A$1000;$B$1:$B$1000)))

allerdings verstehe ich deine spalte cccc nicht :(
 
DonnyDepp schrieb:
na das ist dann nur noch ne winzige änderung.

versuch mal
=MIN(10;WERT(WENN(ZEILE()<=$E$3;$A$1:$A$1000;$B$1:$B$1000)))

allerdings verstehe ich deine spalte cccc nicht :(

Das klappt so auch nicht...


@DonnyDepp: Was verstehst du an der Spalte C nicht?
 
also bei mir klappts und sieht so aus:
(wechseln von werten aus A nach werten aus B ab zeile 12)
asdf.JPG

was ich an CCCC nicht verstehe ist, dass ab zeile 214 auf einmal werte aus BBB genommen werden ohne erkennbares kriterium.
(mal davon abgesehen, dass die zeilen 78 bis 213 fehlen.)
denn spalte AAA ist schon ziemlich lange auf 58.
 
Zuletzt bearbeitet:
DonnyDepp schrieb:
was ich an CCCC nicht verstehe ist, dass ab zeile 214 auf einmal werte aus BBB genommen werden ohne erkennbares kriterium.
(mal davon abgesehen, dass die zeilen 78 bis 213 fehlen.)
denn spalte AAA ist schon ziemlich lange auf 58.

Das Kriterium ist, dass B unter 58 fällt, während A auf 58 bleibt. (Die Zeilen dazwischen habe ich nur ausgeblendet, weil A auf 58 bleibt und B bis 58 steigt und dann wieder fällt.)
Ergänzung ()

Jetzt habe ich es, glaube ich :)

=WENN(A1<10;A1;(WENN(B1<0;10;(WENN(B1>10;10;B1)))))


Ich danke euch vielmals!! Ohne die ganzen Hinweise hätte ich mich noch ewig im Kreis gedreht!

PS: Falls ich etwas übersehe, melde ich mich nochmal :)


Zu früh gefreut.. :( Es bleibt das Problem, dass B den Hochpunkt noch nicht erreicht hat, aber trotzdem schon B übernommen wird. Es sollte hier aber nur der Hochpunkt übernommen werden, und zwar so lange, bis B UNTER diesen Hochpunkt fällt; dann erst soll B übernommen werden...
Ergänzung ()

DonnyDepp schrieb:
na das ist dann nur noch ne winzige änderung.

versuch mal
=MIN(10;WERT(WENN(ZEILE()<=$E$3;$A$1:$A$1000;$B$1:$B$1000)))

allerdings verstehe ich deine spalte cccc nicht :(

Nimmst du da von selbst Bezug auf die Zeile, in der der Wechsel stattfindet? Der ist bei mir ja immer woanders..
 
Zuletzt bearbeitet:
Zurück
Oben