KGRÖSSTE & VERWEIS funktioniert nicht, wie ich's gern hä

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

ForenUser
Beiträge: 4
Registriert: Sa, 12.03.2005 08:49

KGRÖSSTE & VERWEIS funktioniert nicht, wie ich's gern hä

Beitrag von ForenUser »

Hallo,

ich nutze OOorg 1.1.4 (Deutsch).

Nehmen wir folgende Tabelle für eine Highscoreliste:

| A | B | C | D | E
-----------------------------------------------
1 | Ralf | Hans | Mike | Jens | Kai
-----------------------------------------------
2 | 100 | 300 | 200 | 300 | 300


Ich suche nun mit =KGRÖSSTE(A2:E2; 1) den höchsten Wert, also 300.

Bei =KGRÖSSTE(A2:E2; 2), =KGRÖSSTE(A2:E2; 3), =KGRÖSSTE(A2:E2; 4) und =KGRÖSSTE(A2:E2; 5) klappt das dann auch alles noch alles... Die Zahlen werde der Größe nach korrekt ausgegeben (300, 300, 300, 200, 100).

ABER wenn ich jetzt mit VERWEIS den Namen in die jeweiligen Spalten daneben schreiben lassen will klappt das nicht mehr, denn dann sieht das so aus (Hans, Hans, Hans, Mike, Ralf), obwohl es ja so aussehen sollte: (Hans, Jens, Kai, Mike, Ralf).

Wie kann ich mit VERWEIS oder einer anderen/Funktion oder gar einer ganz anderen Lösung sagen, dass ich als zweiten Namen Jens (bzw. Kai) und als dritten Namen Kai (bzw. Jens) haben will? Der nimmt immer nur den ersten, den er findet (also hier Hans), was ja auch so in der Hilfe erklärt wird.

Ich hoffe, es war verständlich, was ich nicht auf die Reihe bekomme... Bitte nicht einfach auf Funktionen verweisen, sondern wenn möglich auch gleich erklären, wie ich die aufbauen oder verwenden muss - bin OOorg-Neuling und habe auch mit Excel nicht viel gearbeitet...
FranzX
*****
Beiträge: 408
Registriert: Sa, 21.02.2004 16:17

Beitrag von FranzX »

Hi,

Wenn du nur diese fünf Namen überprüfen willst, dann kannst du mit der Formel: =WENN(A2=KGRÖSSTE(A2:E2;1);A1;"")
die einzelnen Werte abfragen und anschließend verketten.
Dies würde dann z.B. so aussehen:

=WENN(A2=KGRÖSSTE(A2:E2;1);A1&", ";"")&WENN(B2=KGRÖSSTE(A2:E2;1);B1&", ";"")&WENN(C2=KGRÖSSTE(A2:E2;1);C1&", ";"")&WENN(D2=KGRÖSSTE(A2:E2;1);D1&", ";"")&WENN(E2=KGRÖSSTE(A2:E2;1);E1&", ";"")


Zwar nicht gerade kurz und elegant, aber es würden alle Namen erscheinen, die die Bedingung (KGrösste = 1) erfüllen.

Gruß
FranzX
ForenUser
Beiträge: 4
Registriert: Sa, 12.03.2005 08:49

Beitrag von ForenUser »

Hallo Franz,

an diese Lösung habe ich auch schon gedacht. Aber ich schrieb' ja schon, dass ich es vereinfacht habe. Es sind natürlich viel mehr Namen - und es kommen noch einige hinzu. Ich habe alles sehr gut hinbekommen - und solange keine doppelten Werte vorkommen, klappt alles perfekt, so, wie ich es möchte - nur mein angeschriebenes Problem will sich nicht lösen lassen.
FranzX
*****
Beiträge: 408
Registriert: Sa, 21.02.2004 16:17

Beitrag von FranzX »

Hallo,

auf die Schnelle:
Ich habe in die dritte Zeile mal für jede Zelle den Rang berechnet:
=RANG(A2;A2:E2;0)
und in der vierten Zeile die Namen mit einer Funktion wiederholt:
=WIEDERHOLEN(A1;1)

Folgendes Monstrum lieferte mir - auch bei gleichen Werten dann die richtige Reihenfolge:

=WENN(A3=1;A4&", ";"")&WENN(B3=1;B4&", ";"")&WENN(C3=1;C4&", ";"")&WENN(D3=1;D4&", ";"")&WENN(E3=1;E4&", ";"")&WENN(A3=2;A4&", ";"")&WENN(B3=2;B4&", ";"")&WENN(C3=2;C4&", ";"")&WENN(D3=2;D4&", ";"")&WENN(E3=2;E4&", ";"")&WENN(A3=3;A4&", ";"")&WENN(B3=3;B4&", ";"")&WENN(C3=3;C4&", ";"")&WENN(D3=3;D4&", ";"")&WENN(E3=3;E4&", ";"")&WENN(A3=4;A4&", ";"")&WENN(B3=4;B4&", ";"")&WENN(C3=4;C4&", ";"")&WENN(D3=4;D4&", ";"")&WENN(E3=4;E4&", ";"")&WENN(A3=5;A4&", ";"")&WENN(B3=5;B4&", ";"")&WENN(C3=5;C4&", ";"")&WENN(D3=5;D4&", ";"")&WENN(E3=5;E4&", ";"")

Gruß und viel Spass
FranzX
ForenUser
Beiträge: 4
Registriert: Sa, 12.03.2005 08:49

Beitrag von ForenUser »

Hallo Franz,

danke für die Mühen... Aber nach langem Probieren mit Taschenrechner, Paper und Stift habe ich einen sehr guten Workaround gefunden, der tadellos funktioniert.

Der Aufwand verlangt zwar nach einer weiteren Tabelle zur temporären Umrechnung, aber dafür kann ich nun soviele Daten angeben, wie ich mag, ohne immer wieder die Formeln anpassen zu müssen. Ich würd' es gern hier niederschreiben, aber das ist recht kompliziert auszudrücken. Jedenfalls ermittle ich den RANG eines Wertes einer Reihe von Argumenten - und multiplziere ihn mit seinem eigenen, negierten Rang (vereinfacht ausgedrückt) und in der temporären Tebelle abgelegt. Dadurch wird der Wert natürlich zunächst verfälscht, aber mittels VERWEIS und KGRÖSSTE kann ich ja den korrekten Wert aus der eigentlichen Tabelle ermitteln...
FranzX
*****
Beiträge: 408
Registriert: Sa, 21.02.2004 16:17

Beitrag von FranzX »

HI,

hier noch ein Vorschlag, bei gleichen Werten eine Rangfolge ohne doppelte Werte zu erhalten.

In der Zeile 1 die Namen eingeben
In der Zeile 2 die Punkte eingeben

Berechnung:
Ich habe einfach den Spaltenwert mit in die Berechnung einbezogen.
Damit erhalte ich immer eindeutige Werte, so dass auch problemlos mit Verweisfunktionen gearbeitet werden kann.

Hier die Eingabewerte:
In die Zelle A3: =A2-SPALTE()/1000000 - dann nach rechts aufziehen

In die Zelle A4: =RANG(A3;$A$3:$E$3) - dann nach rechts aufziehen


Auswertung:

Überschriften:
A10: Rang; B10: Punkte; C10: Name

Werte A11 bis A15: Zahlen 1 bis 5 (Rangreihenfolge)

Funktion in B11: =VERWEIS(A11;$A$4:$E$4;$A$2:$E$2)
und nach unten bis B15 aufziehen

Funktion in C11: =VERWEIS(A11;$A$4:$E$4;$A$1:$E$1)
und nach unten bis C15 aufziehen.

Gruß
FranzX
Antworten