LO Calc Zellenbezug statt Zelleninhalt

Pyrukar

Captain
Registriert
Jan. 2013
Beiträge
3.483
Hallo zusammen,

ich versuche gerade einen Sverweis zu erstellen bei dem der Matrixbezug nicht fixiert ist. Ich habe eine 4x5 Matrix und in der letzten Spalte die Ausgabe sein soll. Die Suchzeile soll, je nach eingabe in ein Zusatzfeld in der 1, 2, oder 3. Spalte sein.

Soweit ich das jetzt sehe müsste das mit Indirekt irgendwie gehen. Xverweis gibts ja inzwischen in Excel ... aber leider eben nur Calc und da gibts die Funktion anscheinend noch nicht :(

Also ich schaffe es inzwischen, dass mein Indirekt den ersten Wert der korrekten Suchspalte anzeigt ... die Frage ist jetzt, wie bekomme ich daraus den Zellenbezug für die Matrix definiton?

also ich habe ein Indirekt der den Wert aus C5 ausließt ... aber für die Matrix bräuchte ich ja, dass die Zelle C5 ausgibt sodass ich dann dieses zur Matrix C5:E10 zusammenbauen kann. und je nachdem was in der Zugangsspalte Steht müsste eben von B5-D5 werte annehmen.

gruß

Pyrukar.
 
ich habe jetzt auf Anhieb nicht die Vergleichfunktion hinbekommen, aber hier ist mal eine Beispieldatei.

Also Die Matrix ist B4:E9, und beim Ergebnis soll nacher eine Formel stehen die mein Ergebnis abhänig von einer Dropdown Eingabe bei der Suchspalte ausgibt. Bitte beachten: ich nutze nicht Excel ich musste nur XLS draus machen weil ich sie sonst nicht hätte hochladen dürfen! Also Kein Xverweis nutzen solange mir keiner sagt, wo ich den in LibreOffice herbekomme :D

Gruß
Pyrukar
 

Anhänge

  • Beispiel_Sverweis.xls
    9,4 KB · Aufrufe: 141
Hallo,

ich habe die Index-Formel mal eingefügt. ODS kannst du zippen und hochladen.
 

Anhänge

  • Beispiel_Sverweis.ods.zip
    8 KB · Aufrufe: 134
Danke, das Löst das Problem tatsächlich in meinem Sinne ... ich verstehe jedoch den Inhalt vom Index im Vergleich noch nicht ganz. Kannst du mir das ggf nochmal kurz erklären:
= (...)VERGLEICH(I6;INDEX($B$5:$D$9;?;H6);1))

Das Rote ist ja die gesamte Suchmatrix ... Aber die Zeile ist (?) ja eigentlich leer. Daher ist es ja so dass der =INDEX($B$5:$D$9;;H6) #Wert ausgibt. Funktioniert es nur weil der Vergleich die Zeile ja selbst raussucht?

wäre echt cool wenn du mein Verständnis an dieser Stelle noch etwas vertiefen könntest :D

gruß
Pyrukar
 
Bei mir kommt da 4 und nicht #Wert raus. Sind deine Zahlen Text?

Mit dem Index-Formel wirrd die Suchspalte innerhalb des Vergleichs festgelegt (aus H6). Eine Zeilennummer wird da nicht benötigt.

Du kannst mal =INDEX($B$5:$D$9;;H6) als Matrixformel eingeben (Eingabe mit cmd+shift+Enter). Dann wird die komplette Spalte ausgegeben.

Bildschirmfoto 2022-07-16 um 10.04.44.jpg
 
Okay, irgendwas ist ziemlich merkwürdig ... ich hatte =INDEX($B$4:$D$9;;$H$6) was ja vollständig aus absoluten Bezügen besteht, zuerst in Zelle J10 stehen ... und bekam #Wert als ergebnis. Dann habe ich das selbe mit immer noch Absoluten Bezügen in J10 ausgeschnitten und in L6 eingefügt und bekomme das Ergebnis 4 so wie du. Ich glaube ich verstehe noch absolut nicht, was die Index Funktion wirklich tut
:(

EDIT: Ich glaube ich verstehe sie doch inzwischen ... zumindest ungefähr was sie tut ... Aber warum kann ich sie nicht an einen Beliebigen Ort kopieren? Steckt nacher in der Vergleichsformel (durch den Index) ein ganzer Array oder wie funktioniert die Vergleichfunktion damit?
 
Index (für sich allein) macht nichts anderes als den Inhalt des Schnittpunktes anhand einer Zeile und Spalte zurückzugeben.

=Index(Bereich;Zeile;Spalte)
In Ergänzug mit anderen Funktionen wird das dynamisch.

Ist in Funktionen keine Zeile, Spalte oder anderes angegeben, wird in Funktionen oft das erste Element zurückgegeben bzw. "Wahr" oder "1" angenommen. Je nach Funktiontyp.
 
Okay, aber gibt jetzt die Funktion Index die gesamte Spalte zurück oder nur das erste Element, wenn ich die Zeile nicht angebe?

und warum gibt sie einen Fehler #Wert aus, wenn ich sie in L6 einsetze? müsste sie nicht auch dort einfach das erste Element angeben?
 
1. Kommt in LO und älteren Excelversionen drauf an, ob normal oder als Matrixeingabe (siehe Beitrag #6).

2. Liegt wohl an LO. Für mich sieht es so aus, dass sich LO in diesen Fällen am Bereich aus der Index-Formel orientiert(siehe Foto).
Spalte G: =INDEX($B$4:$D$9;;H6)
Spalte F: =INDEX($B$2:$D$12;;$H$15)
 

Anhänge

  • Bildschirmfoto 2022-07-16 um 12.24.23.jpg
    Bildschirmfoto 2022-07-16 um 12.24.23.jpg
    90,8 KB · Aufrufe: 144
Okay, also sind wir doch leider an dem Punkt, an dem MS Excel schlicht die bessere Funktion hat ... zumal ich in LO vergleich anscheinend kleiner/Gleich machen kann sowie es beim S Verweis ganz normal ist. Wenn ein Wert nicht exakt getroffen wird nimmt Sverweis den nächst größeren ... die Vergleichsfunktion kann anscheinend (bei aufsteigend sortierten Listen) nur den Nächst kleineren angeben ... ist nicht Wild, aber ein kleiner Unterschied. Ich sehe durchaus in Excel Tutorials dass es in der Vergleichsfunktion in Excel mehr Sortierfunktionen gibt ... aber seis drumm, dafür ists umsonst :) solange ich es weis, kann ich ja manuell noch eine Zeile nach unten rutschen mit einem +1 :)
 
Wenn ein Wert nicht exakt getroffen wird nimmt Sverweis den nächst größeren
Falsch. Excel nimmt den nächst kleineren Wert und auch nur dann zuverlässig, wenn die Spalte aufsteigend sortiert ist.
 
Okay igendwie scheine ich gerade mich selbst irgendwie verwirrt zu haben ... zu viele YT viedeos zum excel vergleich gesehen und da gehts auf jeden fall mit den nächst größeren Wert zu nehmen
 
Vergleich() ist etwas ganz anderes. Hier kann der nächst größere Wert ausgegeben werden, wenn die Liste absteigend sortiert ist.
 
Zurück
Oben