2017-07-27 4 views
0

Ich versuche, eine INDEX-Suche anstelle eines SVERWEIS zu verwenden, da ich alle zugeordneten Zellen mit einem String in einer Zelle anzeigen möchte. Wenn meine Zeichenfolge beispielsweise "Bob" ist, möchte ich in Spalte B nach allen Instanzen von "Bob" suchen und dann alle zugehörigen Werte aus Spalte C erzeugen können. Dies würde an anderer Stelle vertikal in einer anderen Spalte angezeigt.Excel-Indexsuche mit einem Platzhalterzeichen ("*")

Hier ist die Formel von einem website, dass ich dies derzeit verwenden tun:

=IFERROR(INDEX($B$1:$C$1188,SMALL(IF((D$2=$B$1:$B$1188),ROW($B$1:$B$1188)-MIN(ROW($B$1:$B$1188))+1,""),ROW(A1)),2),"") 

Aber, meine Daten nicht perfekt und sehr groß ist, so möchte ich das Wildcard-Zeichen "in der Lage sein zu verwenden ', also suche ich' Bo '& "" und gebe alle Werte in Spalte B zurück, die mit "Bo" beginnen. Leider

=IFERROR(INDEX($B$1:$C$1188,SMALL(IF((D$2 & "*"=$B$1:$B$1188),ROW($B$1:$B$1188)-MIN(ROW($B$1:$B$1188))+1,""),ROW(A1)),2),"") 

, die nicht zu funktionieren scheint: Die Formel würde dann geändert werden. Ich habe das auch in einem viel kleineren Maßstab versucht, und es funktioniert immer noch nicht. diese

Antwort

0

Verwendung:

=IFERROR(INDEX(C:C,AGGREGATE(15,6,ROW($B$1:$B$1188)/(LEFT($B$1:$B$1188,LEN($D$2))=$D$2),ROW(1:1))),"") 

enter image description here

+0

Ich spielte mit diesem und es scheint nicht zu funktionieren. Ich erkannte jedoch, dass das Kernproblem in der Sektion 'D $ 2 = $ B $ 1: $ B $ 1188' liegt. Dies liefert ein Array wie {TRUE, FALSE, FALSE, TRUE, etc.}. Aber aus irgendeinem Grund, wenn Sie 'D $ 2 &" * "= $ B $ 1: $ B $ 1188' machen, gibt es alle FALSE zurück. – sach2000

+0

Ich habe gerade die Antwort neu bearbeitet, um stattdessen LEFT zu verwenden. –

+0

Das funktioniert! Ich danke dir sehr – sach2000

Verwandte Themen