Registriert seit: 16.08.2020
Version(en): Office 2024
08.01.2026, 13:21
(Dieser Beitrag wurde zuletzt bearbeitet: 08.01.2026, 13:22 von Egon12.)
Hallo,
hier noch meine Variante mit LAMBDA().
Im Formeleditor:
Name:ZweiDimInterpolation
Formel:
Code:
=LAMBDA(BereichTab;x;y;LET(xA; SPALTEN(BereichTab);xB; ZEILEN(BereichTab);xC; INDEX(BereichTab;1; SEQUENZ(1;xA-1;2));xD; INDEX(BereichTab; SEQUENZ(xB-1;1;2); 1);xE; INDEX(BereichTab; SEQUENZ(xB-1;1;2); SEQUENZ(1;xA-1;2));iSp; VERGLEICH(x; xC; 1);iZ; VERGLEICH(y; xD; 1);xFu; INDEX(xC; iSp);xFo; INDEX(xC; iSp+1);xGu; INDEX(xD; iZ);xGo; INDEX(xD; iZ+1);xHu; INDEX(xE; iZ; iSp);xHo; INDEX(xE; iZ; iSp+1);xIu; INDEX(xE; iZ+1; iSp);xIo; INDEX(xE; iZ+1; iSp+1);xJ; (x-xFu)/(xFo-xFu)*(xHo-xHu)+xHu;xK; (x-xFu)/(xFo-xFu)*(xIo-xIu)+xIu;(y-xGu)/(xGo-xGu)*(xK-xJ)+xJ))
Aufruf(eigentlich selbsterklärend):=ZweiDimInterpolation(A10:O22;B5;B4)
zur Ergänzung: Läuft ab O2024.
Gruß Uwe
Registriert seit: 12.07.2025
Version(en): 2021
(08.01.2026, 12:39)LCohen schrieb: könnte es sein, dass Du da einen Gedankenfehler hast? Mit 2 x 2 Punkten bekommst Du nämlich nur eine glatte Kachel im Raum.
Hast Du grad einen Stuhl mit 4 Beinen zur Hand? Also 2 x 2 Punkte = 4 Punkte insgesamt ja?
Das vordere rechte Bein steht auf dem Boden (Höhe 0).
Unter das hintere linke Bein legst Du Bücher in Höhe von 5 cm.
Unter das vordere linke Bein legst Du Bücher in Höhe von 1 cm.
Unter das hintere rechte Bein legst Du Bücher in Höhe von 2 cm.
Diese 4 Punkte ergeben keine Ebene / glatte Kachel, der Stuhl kippt. Deutlicher wird es wenn das vordere linke Bein auch auf dem Boden steht (Höhe 0).
Nur 3 Punkte ergeben immer eine flache Ebene.
Wenn diese 4 Punkte eine Ebene ergeben sollen, dann müssen vorne links und hinten rechts je 2,5cm drunter. und dann ist auch der Knick im 3D-Diagramm weg:
Andreas.
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
08.01.2026, 13:47
(Dieser Beitrag wurde zuletzt bearbeitet: 08.01.2026, 13:59 von LCohen.)
Ich sehe das anders. Denn die Kacheln sind rechtwinklig zu den Achsen. Die "Obendauf"-Sicht ist rechteckig (zu den Achsteilungen); die tatsächliche jeweilige schiefe Fläche einer Kachel aber ist durch die dritte Dimension verzerrt (also nicht notwendigerweise mit 90°-Ecken).
Somit geht sogar das mit den 4 Beinen auf, wenn man denn anerkennt, dass diese 4 Bein-Aufstellpunkte (anders als bei den meisten Stühlen) kein Rechteck, sondern ein Trapez abbilden.
---------
Hallo Uwe (Egon12), eine
LAMBDA-Lösung ist auch bei meinem Link. Sieht Deiner sehr ähnlich (beide verwenden genau 21 einzelne Excel-Funktionen).
Registriert seit: 16.08.2020
Version(en): Office 2024
Schau ich mir, wenn ich wieder am PC bin an.
Gruß Uwe
Registriert seit: 12.07.2025
Version(en): 2021
(08.01.2026, 13:47)LCohen schrieb: Ich sehe das anders.
Okay, wenn Du den Knick nicht in den Diagrammen und Screenshots sehen kannst, dann ein letztes Wort zu dem Thema:
Du rechnest in Deiner Datei einen Wert von 1,17368 für Y49 und X61 aus. Wenn Du mir nicht glaubst, dann vielleicht dem hier:
Bilineare InterpolationFür den Fall das der Link hier über das Forum nicht geht, der Online-Rechner gibt 1,2037 für die entsprechenden Werte aus.
https://www.omnicalculator.com/math/bili...erpolationAndreas.
Registriert seit: 16.08.2020
Version(en): Office 2024
Ja, ich habe mir den Link angeschaut. Ich habe da aber nicht abgeschrieben, falls du darauf hinaus willst. Du meinst sicherlich Variablen + Parameter.
Ich hatte die Berechnung in deiner UDF als Vorlage für die Lambda genommen. Da habe ich von deinen Wissen etwas verwendet.
Dann habe ich noch mit einer symmetrischen Lösung experimentiert, welche aber nicht zum erwarteten Ergebis führte. Falls es dich interessiert:
Code:
=LAMBDA(BereichTab;x;y;LET(xA; SPALTEN(BereichTab);xB; ZEILEN(BereichTab);xC; INDEX(BereichTab;1; SEQUENZ(1;xA-1;2));xD; INDEX(BereichTab; SEQUENZ(xB-1;1;2); 1);xE; INDEX(BereichTab; SEQUENZ(xB-1;1;2); SEQUENZ(1;xA-1;2));xF; LAMBDA(xx;yy;LET(xSp; VERGLEICH(xx; xC; 1);xZ; VERGLEICH(yy; xD; 1);xGu; INDEX(xC; xSp);xGo; INDEX(xC; xSp+1);xHu; INDEX(xD; xZ);xHo; INDEX(xD; xZ+1);xI; INDEX(xE; xZ; xSp);xJ; INDEX(xE; xZ; xSp+1);xK; INDEX(xE; xZ+1; xSp);xL; INDEX(xE; xZ+1; xSp+1);xm; (xx-xGu)/(xGo-xGu)*(xJ-xI)+xI;xn; (xx-xGu)/(xGo-xGu)*(xL-xK)+xK;xo; (yy-xHu)/(xHo-xHu)*(xn-xm)+xm;xo));fxy; xF(x;y);fyx; xF(y;x);(fxy + fyx) / 2))
Gruß Uwe
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
08.01.2026, 14:43
(Dieser Beitrag wurde zuletzt bearbeitet: 08.01.2026, 14:45 von LCohen.)
Ich bin (war) soweit zufrieden mit meiner Lösung.
Sie ist reihenfolgeneutral (ich konnte ohne Änderung transponieren, das Ergebnis blieb gleich, egal, ob richtig oder falsch)
Ich habe die "omnicalculator"-Lösung noch nicht genauer angeschaut ... die Rechen-Terme sehen dort aber auf den ersten Blick nicht groß anders aus.
Vielleicht hast Du aber recht, da bei einem Trapez (wie ich es beschrieben habe) vielleicht ja nicht mehr parallel zu den Achsen interpoliert werden DÜRFTE (ich muss da noch mal rechnen).
_________
Uwe, "abschreiben" habe ich damit ja auch nicht gemeint. Schon wegen anderer Funktionen nicht.
Registriert seit: 16.08.2020
Version(en): Office 2024
Alles gut, ich habe deine Lambda jetzt nicht näher durchforstet. Irgendwo wird es immer mal irgendwelche Ähnlichkeiten oder gar Gleichheiten geben.
Gruß Uwe
Registriert seit: 18.01.2021
Version(en): 365
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
(08.01.2026, 14:53)Egon12 schrieb: Alles gut, ich habe deine Lambda jetzt nicht näher durchforstet. Irgendwo wird es immer mal irgendwelche Ähnlichkeiten oder gar Gleichheiten geben.
Gruß Uwe
War nie mein Vorwurf. Immer gut, wenn man es selbst einmal entwirft. Und bei Dir sieht man es ja, dass Du nichts abgekupfert hast.