2016-04-24 10 views
0

Ich mache eine Tabelle mit den besten Ergebnissen eines Experiments. In dieser Tabelle muss ich das beste (maximale) Ergebnis für jede Kombination von Probe und Methode anzeigen. Und auch der Test, der das beste Ergebnis lieferte.Label mit dem MAX-Ergebnis in einer Index-Match-Suche

Nachdem ich ähnliche Fragen hier überprüft habe, habe ich wie der erste Teil (MAX-Ergebnis), aber keine Lösung für den zweiten Teil (Label/Test geben dieses Ergebnis) bekommen.

Hier ist eine vereinfachte Tabelle, um zu sehen, wenn Sie mir helfen zu verstehen, wie das zu tun:

Datentabelle

 A  B   C  D  E 
1      Test1 Test2 Test3 
2 Sample1 Method1  1.6  2.2  0.1 
3 Sample2 Method1  1.5  1.3  0.6 
4 Sample3 Method1  1  0  0.6 
5 Sample1 Method2  0.5  0.1  1.7 
6 Sample2 Method2  1.5  0.5  1 
7 Sample3 Method2  0.4  0.5  2.7 
8 Sample1 Method3  0.7  1.7  1 
9 Sample2 Method3  1.1  1.1  1.2 
10 Sample3 Method3  0.6  0.4  1.5 

und hier ist ein Entwurf der Tabelle I

zu bauen hoffen
G  H  I  J  K  L  M 
1 BEST  Sample1 Sample1 Sample2 Sample2 Sample3 Sample3 
2 RESULTS ValMax Test ValMax Test ValMax Test 
3 Method1 2.2    1.5    1 
4 Method2 1.7    1.5    2.7 
5 Method3 1.7    1.2    1.5 

wie Sie sehe ich schon bekommen, wie die der Maximalwert jeder Kombination war zu überprüfen, dank dieser Array-Funktion (bei H3):

=MAX(IF(($A$2:$A$10=H1)*($B$2:$B$10=G3);$C$2:$E$10)) 

(und Steuerung + Umschalttaste + Geben Sie)

Aber für den zweiten Teil habe ich keine Ahnung. Ich muss aus der "Zeile 1" extrahieren, welcher der 3 Tests (Test1, Test2 und Test3 in den Spalten C, D und E) den MAX-Wert für die Zeile enthält, die die richtige Kombination aus Probe und Methode enthält. Ich habe versucht, mit so etwas wie dies (bei I3):

=INDEX($A$1:$E$10; 1; MATCH(H3&H$1&G3; $C$2:$E$10&$A$2:$A$10&$B$2:$B$10;0)) 

(und Steuerung + Umschalttaste + Geben Sie)

Aber funktioniert offensichtlich nicht, denn ich bin Reihen Mischen und Säulen. Wie erhalte ich den Wert aus Zeile 1 (Test), der dem Maximalwert der Kombination aus Methode und Beispiel entspricht?

Antwort

0

Obwohl ich wahrscheinlich VBA verwenden würde, um die Tabelle zu konstruieren, die folgende Formel wird der Test zurück, die auf die Probe entspricht:

I3: =INDEX($C$1:$E$1,1,MATCH(H3,INDEX($C$2:$E$10,MATCH(TRUE,IF((I$1=$A$2:$A$10)*($G3=$B$2:$B$10),TRUE),0),0),0)) 

Sie müssen Adressen für die verschiedenen Spalten anzupassen, oder kombinieren diese mit Ihrer anderen Formel in einer IF Funktion, um zu entscheiden, ob der Score oder der Testname angezeigt werden soll.

+0

Das war genau das, was ich suchte. Danke Ron. Jetzt scheint es offensichtlich, aber ich war nicht in der Lage, allein dorthin zu gelangen. Ich habe es auf den gesamten Datensatz angewendet, keine Notwendigkeit für Neueinstellungen. – Mosky

0

Hier ist eine nicht CSE Array-Formel, die es tun:

=INDEX($C$1:$E$1,MAX(INDEX(($G3=$B$2:$B$10)*($A$2:$A$10=I$1)*($C$2:$E$10=H3)*(COLUMN($C$2:$E$10)-COLUMN($C$2:$C$2)+1),))) 

enter image description here

+0

Danke Scott. Das funktioniert auch perfekt. Normalerweise verwende ich diesen König der Funktionen nicht: (Column() - COLUMN() + 1) Ich denke, ich muss ein wenig mehr in dieser Funktion graben, um diese Argumente zu verwenden. – Mosky