Clever-Excel-Forum

Normale Version: Geradengleichung durch zwei Punkte
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Guten Morgen Community,

im Anhang ist eine Beispieldatei zur Erläuterung  meines Problems.

Ich möchte gerne bei y=6 den zugehörigen x-Wert. Dazu verwende ich eine Geradengleich durch zwei Punkte (Trendlinie hilft mir nicht weiter!). Um die Gerade auf zu stellen muss ich den gelb markierten Bereich als Variable einlesen. Wie könnte ich das realisieren?

Grüße Abi
Hallo,

lineare Interpolation:

[html]
Arbeitsblatt mit dem Namen 'Tabelle1'
 ABCDE
3xy   
41000 6117,5
51052   
61103   
71155   
81207   
912519   
1013079   
1113579   
1214082   
1314582   

ZelleFormel
E4=(INDEX($A$4:$A$10;VERGLEICH(D4;$B$4:$B$10;1)+1-ZÄHLENWENN($B$4:$B$10;D4))-INDEX($A$4:$A$10;VERGLEICH(D4;$B$4:$B$10;1)))/(INDEX($B$4:$B$10;VERGLEICH(D4;$B$4:$B$10;1)+1-ZÄHLENWENN($B$4:$B$10;D4))-INDEX($B$4:$B$10;VERGLEICH(D4;$B$4:$B$10;1)))*(D4-INDEX($B$4:$B$10;VERGLEICH(D4;$B$4:$B$10;1)))+INDEX($A$4:$A$10;VERGLEICH(D4;$B$4:$B$10;1))
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
[/html]
Hallo Edgar,

vielen Dank für deine Lösung! Eigentlich dachte ich eher an eine VBA Lösung, die Formel ist doch schon sehr komplex, aber funktionieren tut sie gut! Bis auf wenn zufällig mal ein y-Wert von 6 gemessen wurde.

Vielen Dank und Grüße

Abi
Hallo,

dann geht das so:


Code:
=WENN(ZÄHLENWENN($B$4:$B$10;D4);INDEX(A:A;VERGLEICH(D4;B:B;0));(INDEX($A$4:$A$10;VERGLEICH(D4;$B$4:$B$10;1)+1-ZÄHLENWENN($B$4:$B$10;D4))-INDEX($A$4:$A$10;VERGLEICH(D4;$B$4:$B$10;1)))/(INDEX($B$4:$B$10;VERGLEICH(D4;$B$4:$B$10;1)+1-ZÄHLENWENN($B$4:$B$10;D4))-INDEX($B$4:$B$10;VERGLEICH(D4;$B$4:$B$10;1)))*(D4-INDEX($B$4:$B$10;VERGLEICH(D4;$B$4:$B$10;1)))+INDEX($A$4:$A$10;VERGLEICH(D4;$B$4:$B$10;1)))
Vielen Dank für deine Formel Edgar!

Eine einfache VBA Lösung wäre für meine Anwendung glaube ich aber hilfreicher. Die eingelesenen Variablen würde ich später gebrauchen können.

Gruß Abi
Hallo Edgar,

nochmals vielen Dank für deinen Beitrag, dieser hat mir sehr geholfen. Nun stellst sich mir noch eine Frage. Es gibt fälle, in denen eine lineare Interpolation nicht möglich ist, da der Bereich das einfach nicht zulässt.
Konkret in diesem Beispiel: Es wird nie ein Wert von 6 im Y-Bereich erreicht, die Formel will aber bei 6 linear interpolieren (Was sie natürlich nicht kann, weil der Wert nicht erreicht wird)
Die Formel zeigt dann #BEZUG! an. Wie könnte ich das denn Lösen? Wäre cool wenn dann dort erscheint: "Bereich nicht vorhanden" oder so. (Erstelle ein Analysebericht per Makro mit Textbausteinen)

Vielen Dank und Grüße

Dirk
Welches X willst Du haben bei Y=79 oder Y=82? Das müsste ja auch eine Art Meldung ergeben.

Was machst Du bei nicht streng monotonen Verläufen? Y zu ermitteln - kein Problem. X schon.

D7: 6
D9: =VERGLEICH(D7;B:B)

F7: =INDEX(A:A;D$9)
F8: =INDEX(A:A;D$9+1)
F9: =INDEX(B:B;D$9)
F10: =INDEX(B:B;D$9+1)

F12: =(D7-F9)/(F10-F9)*(F8-F7)+F7 gesuchtes X für streng monotone Steigungen
F13: =MIN(D7*5/{1.2.12.60}+{1140.1230.1405.1481}/12)+MAX(;(2-D7)*2,5) ergibt X ohne Hilfszellen für Y von 0 bis 79