2017-06-11 2 views
1

Ich brauche eine Möglichkeit, entweder die Zeile oder Spalte der Zelle, die einen bestimmten Wert in einem bestimmten 2D-Bereich von Zellen hat .Holen Sie die Zeile oder Spalte der Zelle mit einem bestimmten Wert innerhalb eines bestimmten 2D-Bereichs

Mit anderen Worten, würde ich ein Paar Funktionen interessieren ROW (Wert, Bereich) und COLUMN (Wert, Bereich).

Dies scheint wie eine einfach genug Anfrage, und doch scheinen alle Lookup-Typ-Funktionen Array-basiert zu sein.

+0

Haben Sie die Werte in Bezug auf den Beginn des Arbeitsblatt * (A1) wollen * oder relativ zum Start des 2D-Bereich * ?? * –

+0

Ich möchte sie in Bezug auf A1 –

+0

Ich habe ** beide ** Möglichkeiten gezeigt! –

Antwort

2

Hier ist eine nicht CSE-Methode.

Es wird berücksichtigt, dass die Daten möglicherweise doppelt vorhanden sind. Die erste Suche ist für die unterste Zeile:

=IFERROR(AGGREGATE(15,6,(ROW($B$2:$F$5)-ROW($B$2)+1)/($B$2:$F$5=$A$7),1),"No Match") 

Der nächste findet die unterste Spalte in dieser Zeile. Wenn also Duplikate vorhanden sind, wird die niedrigste Spalte in der untersten Zeile zurückgegeben, in der der Wert gefunden wurde.

=IFERROR(AGGREGATE(15,6,(COLUMN(INDEX($B$2:$F$5,AGGREGATE(15,6,(ROW($B$2:$F$5)-ROW($B$2)+1)/($B$2:$F$5=$A$7),1),0))-COLUMN($B$2)+1)/(INDEX($B$2:$F$5,AGGREGATE(15,6,(ROW($B$2:$F$5)-ROW($B$2)+1)/($B$2:$F$5=$A$7),1),0)=$A$7),1),"No Match") 

Es ist eine Fehlerbehandlung hat, wenn der Wert nicht gefunden wird, wird wieder „No Match“

enter image description here


Wie pro Ihre Anmerkung oben Ich glaube, Sie lieber dies haben würde Formel.

=INDEX(A:F,MATCH(A7,A:A,0),MATCH(A8,1:1,0)) 

enter image description here

+0

Gute Antwort. Ich schätze die Aufmerksamkeit auf Randfälle. –

2

sagen, wir haben Daten wie:

enter image description here

und wir diese suchen möchten.
In A7 eingeben 100. In B8 die Matrixformel ein:

=MIN(IF($B$2:$F$5=A7,COLUMN($B$2:$F$5)-COLUMN($B$2)+1)) 

In B9 geben Sie die Matrixformel:

=MIN(IF($B$2:$F$5=A7,ROW($B$2:$F$5)-ROW($B$2)+1)) 

das sind die Zeilen- und Spalten relativ zu dem geben Tischanfang (B2):

enter image description here

Um die Zeile/Spalte in Bezug auf den Beginn des Arbeitsblatts zu erhalten, nur $ A $ 1 anstelle von $ B $ 2 in den Formeln verwenden.

Array Formeln müssen mit Ctrl +Umschalt + Geben Sie nicht nur eingegeben werden, die Enter-Taste.

+1

Wenn das OP hofft, dass die Koordinaten später verwendet werden, besteht die Gefahr von Fehlalarmen, wenn Doppelpunkte vorhanden sind. Zum Beispiel, setze 100 in E3. Die Koordinaten geben 2,2 die erste Spalte und die erste Zeile zurück. Das mag das sein, wonach das OP sucht, aber wenn das OP Koordinaten wünscht, wird es die Reihe und Spalte der 97 in C3 zurückgeben. Nur eine Beobachtung. –

+0

@ScottCraner Gute Punkte! Ich habe * Nomatch * oder * dupmatch * in meiner Antwort nicht berücksichtigt. –

Verwandte Themen