Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1664to1668
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zuordnungsfunktionen

Zuordnungsfunktionen
23.12.2018 15:18:17
David
Liebe Excel-Experten,
Aktuell arbeite ich an einer Tabelle, in der in Spalte 1 gelistete Werte einer bestimmten willkürlichen Maßeinheit ("Rohwerte") andere Werten in Spalte 2 zugeordnet sind ("Normwerte).
Dies ist keine lineare Zuordnung. Dem Wert eine bestimmten Zeile in Spalte 1 ist der Wert in der gleichen Zeile in Spalte 2 zugeordnet. Die Werte in Spalte 1 sind manchmal aufsteigend und manchmal absteigend sortiert, die Werte in Spalte 2 sind immer aufsteigend sortiert. Wenn es geht, möchte ich die Werte zumindest auf Ebene des Tabellenlayouts nicht umsortieren. (Falls es nicht anders geht, dann wüsste ich aber für dieses Szenario eine Lösung mit einer Kombination aus Index und Vergleichsfunktion). In meiner "echten" Tabelle ist Spalte 1 nicht vor Spalte 2 platziert, wenn es irgendwie möglich ist, würde ich diese Anordnung auch so belassen. Ich habe die beiden Spalten nur zu Illustrationszwecken Spalte 1 und Spalte 2 genannt.
Erschwerend kann einem Wert in Spalte 1 entweder genau ein Wert in Spalte 2 zugeordnet sein, oder mehrere Werte. In letzterem Fall findet sich der gleiche Wert in Spalte 1 dann mehrmals hintereinander und in Spalte 2 dann entsprechend unterschiedlich Werte. Es kann auch sein, dass ich eine Zuordnung für einen Wert in Spalte 1 brauche, der sich aber in dieser exakten Größe nicht in Spalte 1 findet. In diesem Fall, soll die Zuordnung für den nächstkleineren in Spalte 1 enthaltenen Wert (Wenn die Werte aufsteigend geordnet sind) oder den nächstgrößeren in Spalte 1 enthaltenen Wert (Wenn die Werte absteigend geordnet sind) angegeben werden.
Ziel ist, dass mir eine Formel für jeden eingegebenen den dazu korrespondierenden Wert oder Wertebereich aus Spalte 2 liefert.
Konkretes Bespiel A mit absteigenden Werten:
Spalte 1:
9
8
8
7
4
3
2
Spalte 2:
5
10
15
20
25
>25
Das Ergebnis der Formel sollte betragen:
Für den Wert 9: Für alle Werte größer 8: Für den Wert 8: 5-10
Für den Wert 7: 15
Für den Wert 6: 15
Für den Wert 5: 15
Für den Wert 4: 20
Für den Wert 3: 25
Für den Wert 2: > 25
Für alle Werte kleiner 3: >25
Konkretes Beispiel B mit aufsteigenden Werten:
Spalte 1:
2
3
4
7
8
8
9
Spalte 2:
5
10
15
20
25
>25
Das Ergebnis der Formel sollte betragen:
Für den Wert 2: Für alle Werte kleiner 3: Für den Wert 3: 5
Für den Wert 4: 10
Für den Wert 5: 10
Für den Wert 6: 10
Für den Wert 7: 15
Für den Wert 8: 20-25
Für den Wert 9: > 25
Für alle Werte größer 8: >25
Dann sollte es noch eine Abwandlung der Formel geben, die im Fall, dass sich der exakte Wert nicht in Spalte 1 befindet, den nächstgrößeren UND den nächstkleineren Wert aus Spalte 2 liefert, unabhängig davon ob die Werte in Spalte 1 aufsteigend oder absteigend sortiert sind. (sortiert sind sie aber immer)
Sollten Unklarheiten bestehen, dann werde ich gerne ein Demonstrationsfile hochladen. Dies hat aber leider gerade nicht geklappt.
Konkretes Beispiel C:
Spalte 1:
2
3
4
7
8
8
9
Spalte 2:
5
10
15
20
25
>25
Das Ergebnis der Formel sollte betragen:
Für den Wert 2: Für alle Werte kleiner 3: Für den Wert 3: 5
Für den Wert 4: 10
Für den Wert 5: 10-15
Für den Wert 6: 10-15
Für den Wert 7: 15
Für den Wert 8: 20-25
Für den Wert 9: > 25
Für alle Werte größer 8: >25

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zuordnungsfunktionen
23.12.2018 15:25:10
David
Für den Fall, dass die Werte aufsteigend geordnet sind, habe ich eine Lösung mit Index und Vergleichsformeln gefunden, die ich sowohl auf die Suche schicke nach dem exakten Wert und nach nach dem nächstkleinsten Wert und dann je nach Ergebnis die beiden Werte verbinde oder nur einen davon weiter verarbeite.
Bei absteigend geordneten Werten funzt das aber nicht, da ich nicht an den kleinsten Wert komme, wenn einem Wert in Spalte 1 mehrere Werte in Spalte 2 zugeordnet sind.
SVERWEIS(Suchkriterium;Matrix;Spaltenindex;WAHR)
23.12.2018 18:19:44
ransi
HAllo,
Das ist doch die klassische Anwendung für den Sverweis().
Schau es dir mal an:
Tabelle1

 ABCDE
1-99999>25 -2>25
2325 -1>25
3420 0>25
4520 1>25
5615 2>25
6715 325
785-10 420
89<5 520
9   615
10   715
11   85-10
12   9<5
13   10<5
14   11<5
15   12<5
16   13<5

Formeln der Tabelle
ZelleFormel
E1=SVERWEIS(D1;$A$1:$B$8;2;WAHR)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
ransi
Anzeige
AW: SVERWEIS(Suchkriterium;Matrix;Spaltenindex;WAHR)
24.12.2018 10:55:58
David
Hallo Ransi,
vielen Dank für deine Antwort. Die SVerweis Funktion bietet mir eine relativ ähnliche Flexibilität/Funktonalität wie die die Kombination aus der Vergleich und Index Funktion. Mit diesen Funktione kann ich grundsätzlich meine "Zuordnungsaufgabe" lösen, allerdings unter der Voraussetzung, dass ich mein Daten ergänze, u.a.mit neuen Spalten für die Rückgabewerte und eventuell auch umsortiere. (Da ich in meinen "Rohtabellen" viele Spalte mit Nachschlagewerte habe, aber nur eine Spalte mit den Rückgabewerten). Das ist aktuell gut machbar, es kann jedoch sein, dass ich in Zukunft auch Tabellen haben werde, bei denn das aufwändiger wird. Daher habe ich mich auf die Suche gemacht nach weiteren Lösungwegen, bei denen ich die Anordnung der ursprünglichen Tabellen so wenig wie möglich ändern muss.
Grüße und frohe Weihnachten
David
Anzeige
AW: da gibt es mE evtl. einen Widerspruch ...
23.12.2018 19:47:21
neopa
Hallo David,
... für absteigende Datenwerte in Deiner "Spalte1" hast Du in Deinem Beispiel lediglich für gleiche Datenwerte ein "VON - ZU" Ergebniswert angegeben. Dafür hätte ich gemäß Deinen getätigten Angaben nachfolgend aufgezeigte Formellösung aufgestellt. Die Ergebnisdaten in G6:G7 entsprechen Deinen Beispielergebnisvorgaben.
Als ich jedoch die Formel für aufsteigende Datenwerte entwickeln wollte, stellte ich fest, dass Deine Ergebniswertevorgaben für den Datenwert 5 und 6 auch als "VON - ZU" ausgeben werden soll. Ist das hierbei so unterschiedlich gewollt? Wenn nicht, welche Ergebnisausgabe gilt wirklich?
Arbeitsblatt mit dem Namen 'Tabelle1'
 ABCDEFGH
1 Werte Daten DatenErgebnis 
2 5 9 115 
3 5 8 95 
4 10 8 85-10 
5 15 7 715 
6 20 4 615 
7 25 3 515 
8 >25 2 420 
9     325 
10     2>25 
11     1>25 
12        

ZelleFormel
G2=WENN(F2="";"";WENN(ZÄHLENWENN(D$2:D$99;F2)2;INDEX(B:B;AGGREGAT(14;6;ZEILE(D$2:D$99)/(D$2:D$99>=MIN(F2;MAX(D$2:D$99)));1));AGGREGAT(15;6;B$2:B$99/(D$2:D$99=F2);1)&"-"&AGGREGAT(14;6;B$2:B$99/(D$2:D$99=F2);1)))
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Gruß Werner
.. , - ...
Anzeige
AW: da gibt es mE evtl. einen Widerspruch ...
24.12.2018 11:20:01
David
Hallo Werner,
vielen Dank für deine Arbeit und die wertvollen Anregungen. An AGGREGAT habe ich auch schon gedacht, aber auf die Kombinationen mit den anderen Funktionen bin ich nicht gekommen.
Der Widerspruch ist da tatsächlich. Es war so gemeint, dass ich im Grund für zwei verschiedene Situationen Lösungen suche, die gerne auch in Gestalt verschiedener Formeln daherkommen dürfen.
Die erste Situation ("Beispiel B") bezog sich auf "Von Zu" lediglich für gleiche Datenwerten. Die zweite Situation ("Beispiel C") bezog sich auf "Von Zu" für Werte, die nicht exakt zu finden sind. Da mir Beispiel B mehr unter den Nägeln gebrannt hat, hast du mir gut weiter geholfen und ich werde deine Vorschläge ausprobieren.
Falls sich weitere Fragen ergeben, werde ich mich wieder melden.
Grüße und frohe Weihnachten.
David
Anzeige
AW: da gibt es mE evtl. einen Widerspruch ...
25.12.2018 09:38:11
David
Hallo Werner,
nochmal vielen Dank für deine Vorschläge, sie haben mir sehr weiter geholfen. Kannst du mir einen Link o.ä. nennen, der erklärt was da im Hintergrund abläuft, wenn man Aggregat kombiniert mit "/" so wie du es in deinem Beispiel gezeigt hast. (Z.B. Aggregat(14;6;B$2:B$99/(D$2:D$99=F2;1). Also ich verstehe schon, was das Resultat davon ist, nämlich dass der Größte bzw. Kleinste Wert aus einem selektierten Bereich der Spalte B gewählt wird, der wiederum durch eine Selektion in Spalte D definiert wird, aber ich verstehe nicht wie Xl das denkt :)
Grüße
David
AW: hierzu wäre festzustellen ...
25.12.2018 10:36:25
neopa
Hallo David,
... zunächst das die Formel nicht "=Aggregat(14;6;B$2:B$99/(D$2:D$99=F2;1)" sondern bei mir richtig so: =Aggregat(14;6;B$2:B$99/(D$2:D$99=F2);1) lautet. Der darin befindliche auszuwertende Formelteil ist die Matrix B$2:B$99/(D$2:D$99=F2). Wenn Du diesen Formelteil mal reduzierst auf z.B. nur B$2:B$9/(D$2:D$9=F2) und diesen Teil in der Eingabezeile markierst und danach [F9] betätigst, erhältst Du angezeigt: {#WERT!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#WERT!;#DIV/0!} welches AGGREGAT() demzufolge mit einem Fehlerergebnis #ZAHL! quittieren muss, weil er keinen Zahlenwert in der Matrix vorfindet.
Wenn Du jetzt Dir das gleiche mal für F4 anstelle F2 betrachtest, sieht die auszuwertende Matrix so aus: {#WERT!;5;10;#DIV/0!;#DIV/0!;#DIV/0!;#WERT!;#DIV/0!}, worin von den zwei Zahlenwerten neben den Fehlerwerten natürlich die 10 der größte Wert ist.
Ich denke das erklärt Dir schon ausreichend, wie AGGREGAT() "denkt".
Gruß Werner
.. , - ...
Anzeige
AW: hierzu wäre festzustellen ...
25.12.2018 19:29:02
David
Hallo Werner,
ja, da hast du recht, habe die Klammer vergessen. War etwas in Eile. Danke für die Erklärung, ist mir deutlich geworden. Schon wieder was gelernt.
Grüße
David

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige