Clever-Excel-Forum

Normale Version: Wert aus Tabelle lesen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo liebe Clever-Excel-Mitglieder,
 
Ich würde ganz gerne durch bestimmte Angaben einen Wert auf der X-Achse aus einer ausgefüllten XY-Tabelle auslesen.
 
Auf dem Blatt KULTUR befindet sich eine ausgefüllte Tabelle:
Y-Achse (°C Zahlen) D6 bis D66
X-Achse für ADY (% Zahlen) F2 bis AF2
X-Achse für IDY (% Zahlen) F3 bis AF3
X-Achse für CY (% Zahlen) F4 bis AF4
Ausgefüllte Felder in der Mitte der XY-Tabelle (Stunden)

Auf dem Blatt SUCHE befinden sich Felder, in denen man folgende Parameter eingeben kann:
Raumtemperatur: Hier gibt man die Zahl bzw. °C für die Y-Achse an.
Gärung: Hier gibt man eine Stundenzahl (ausgefüllte Felder in der Mitte der XY-Tabelle) an.
Kultur: Hier wählt man auf welcher der 3 X-Achsen (ADY; IDY; CY) gesucht werden soll.
Ergebnis: Der gesuchte Wert auf der X-Achse.
 
Schwierigkeit: Die Temperaturangaben auf der Y-Achse sind z.B. 1,7 °C oder 2,2 °C. Wenn ich in das Suchfeld Raumtemperatur z.B. 2 °C schreibe, dann soll es mit der Zahl „rechnen“, die am nächsten an der Suchfeldeingabe dran ist:
2 °C geschrieben und es rechnet oder geht vom Wert 2,2 °C aus, da er näher an 2 °C liegt als 1,7 °C.
 
Die gleiche Schwierigkeit existiert bei den Stunden in der Tabellenmitte.
 
Reihenfolge: Y-Wert finden, dann in dieser Zeile den passenden Wert in der ausgefüllten Tabelle finden, dann schauen welcher X-Wert es ist.
 
Beispiel:
Raumtemperatur: 21 °C (wäre dann D41)
Gärung: 30 h (wäre dann I41)
Kultur: CY (wäre dann I4)
Ergebnis: I4 = 0,050 %
 
[img]
Dateiupload bitte im Forum! So geht es: Klick mich!
]

Eine andere Möglichkeit wäre wohl alle Ergebnisse (Stunden) in eine Formel (Exponentialfunktion?) zu packen.
 
Vielen Dank für eure Hilfe.

Im Anhang findet sich die Datei im Excel-Format.
Es ist super einfach zu verstehen wenn ich es an einem Bild mit Pfeilen erkläre:[attachment=41742]
Hallo,

eine VBA-Lösung könnte ich anbieten. Mit Formeln bin ich nicht so gut.
Das wäre super.
Bin für alle Vorschläge offen.
Vielen Dank.
Hallo,

anbei mein Vorschlag...

Ich habe mal beide Varianten angegeben (größte und kleinste)...


Nachtrag: habe die Grad in Zeile 7 + 8 entfernt... Sorry, hier die neueste Version - die anderen hatten noch Fehler...
Hallo Bifi85,

hier mein Vorschlag mit viel INDEX/VERGLEICH….

Formel für B14
PHP-Code:
=INDEX(KULTUR!$F$2:$AF$4;VERGLEICH($B$10;KULTUR!$D$2:$D$4;0);VERGLEICH(MIN(ABS($B$7-INDEX(KULTUR!$F$6:$AF$66;VERGLEICH(MIN(ABS($B$4-KULTUR!$D$6:$D$66));ABS($B$4-KULTUR!$D$6:$D$66);0);0)));ABS($B$7-INDEX(KULTUR!$F$6:$AF$66;VERGLEICH(MIN(ABS($B$4-KULTUR!$D$6:$D$66));ABS($B$4-KULTUR!$D$6:$D$66);0);0));0)) 

oder noch ein bisschen verkürzt mit LET:
PHP-Code:
=LET(X;ABS($B$4-KULTUR!$D$6:$D$66);Y;ABS($B$7-INDEX(KULTUR!$F$6:$AF$66;VERGLEICH(MIN(X);X;0);0));INDEX(KULTUR!$F$2:$AF$4;VERGLEICH($B$10;KULTUR!$D$2:$D$4;0);VERGLEICH(MIN(Y);Y;0))) 

Das Prinzip zur Ermittlung des nächstgelegenen Wertes gefunden hier:
https://de.extendoffice.com/documents/ex...value.html

Siehe angehängte Beispieldatei
(Da habe ich auch noch ein paar Erläuterungen zum Aufbau der Formel eingetragen)

Gruß
Fred
(16.01.2022, 07:09)Fred11 schrieb: [ -> ]Hallo Bifi85,

hier mein Vorschlag mit viel INDEX/VERGLEICH….

Formel für B14
PHP-Code:
=INDEX(KULTUR!$F$2:$AF$4;VERGLEICH($B$10;KULTUR!$D$2:$D$4;0);VERGLEICH(MIN(ABS($B$7-INDEX(KULTUR!$F$6:$AF$66;VERGLEICH(MIN(ABS($B$4-KULTUR!$D$6:$D$66));ABS($B$4-KULTUR!$D$6:$D$66);0);0)));ABS($B$7-INDEX(KULTUR!$F$6:$AF$66;VERGLEICH(MIN(ABS($B$4-KULTUR!$D$6:$D$66));ABS($B$4-KULTUR!$D$6:$D$66);0);0));0)) 

oder noch ein bisschen verkürzt mit LET:
PHP-Code:
=LET(X;ABS($B$4-KULTUR!$D$6:$D$66);Y;ABS($B$7-INDEX(KULTUR!$F$6:$AF$66;VERGLEICH(MIN(X);X;0);0));INDEX(KULTUR!$F$2:$AF$4;VERGLEICH($B$10;KULTUR!$D$2:$D$4;0);VERGLEICH(MIN(Y);Y;0))) 

Das Prinzip zur Ermittlung des nächstgelegenen Wertes gefunden hier:
https://de.extendoffice.com/documents/ex...value.html

Siehe angehängte Beispieldatei
(Da habe ich auch noch ein paar Erläuterungen zum Aufbau der Formel eingetragen)

Gruß
Fred

Zurzeit steht ja in B10 (CY, IDY und ADY) und diese werden mit D2:D4 auf dem anderen Blatt verglichen, die ebenfalls CY, IDY und ADY heißen.
PHP-Code:
=VERGLEICH($B$10;KULTUR!$D$2:$D$4;0

Wie müsste ich denn das ganze schreiben, wenn in B10 (Cake Yeast, Instant Dry Yeast und Active Dry Yeast) aufgeschrieben sind, aber auf D2:D4 auf dem anderen Blatt noch immer CY, IDY und ADY heißen sollen?

Vielen Dank.
Hi,


Zitat:Wie müsste ich denn das ganze schreiben, wenn in B10 (Cake Yeast, Instant Dry Yeast und Active Dry Yeast) aufgeschrieben sind, aber auf D2:D4 auf dem anderen Blatt noch immer CY, IDY und ADY heißen sollen?


Z.B. so:

=LET(X;ABS($B$4-KULTUR!$D$6:$D$66);Y;ABS($B$7-INDEX(KULTUR!$F$6:$AF$66;VERGLEICH(MIN(X);X;0);0));INDEX(KULTUR!$F$2:$AF$4;VERGLEICH(SVERWEIS(B10;{"Cake Yeast"."CY";"Instant Dry Yeast"."IDY";"Active Dry Yeast"."ADY"};2;);KULTUR!$D$2:$D$4;0);VERGLEICH(MIN(Y);Y;0)))
(16.01.2022, 20:28){Boris} schrieb: [ -> ]Hi,




Z.B. so:

=LET(X;ABS($B$4-KULTUR!$D$6:$D$66);Y;ABS($B$7-INDEX(KULTUR!$F$6:$AF$66;VERGLEICH(MIN(X);X;0);0));INDEX(KULTUR!$F$2:$AF$4;VERGLEICH(SVERWEIS(B10;{"Cake Yeast"."CY";"Instant Dry Yeast"."IDY";"Active Dry Yeast"."ADY"};2;);KULTUR!$D$2:$D$4;0);VERGLEICH(MIN(Y);Y;0)))

Vielen Dank.

Jetzt hab ich nur noch ein letztes Problem. Ich hab die Werte Cake Yeast, Instant Dry Yeast und Active Dry Yeast, allerdings würde ich noch gerne Sauerteig hinzufügen, bei dem das Ergebnis auf 0 % gesetzt wird (sozusagen deaktiviert ist).

Vielen Dank an alle die mir geholfen haben.
Hi,

einfach vorab eine WENN-Abfrage:

=WENN(B10="Sauerteig";0;LET(X;ABS($B$4-KULTUR!$D$6:$D$66);Y;ABS($B$7-INDEX(KULTUR!$F$6:$AF$66;VERGLEICH(MIN(X);X;0);0));INDEX(KULTUR!$F$2:$AF$4;VERGLEICH(SVERWEIS(B10;{"Cake Yeast"."CY";"Instant Dry Yeast"."IDY";"Active Dry Yeast"."ADY"};2;);KULTUR!$D$2:$D$4;0);VERGLEICH(MIN(Y);Y;0))))