Hvordan slå opp verdien retur flere tilsvarende verdier i Excel?

Here er en lang rekke formel kan gi en hånd i å se opp en verdi og returnere flere tilsvarende verdiene.
1. Angi verdien du ønsker å slå opp i en tom celle. Se skjermbilde:
to. I den tilstøtende cellen, skriver denne formelen =IF(ISERROR(INDEX($A$1:$B$7,SMALL(IF($A$1:$A$7=$D$4,ROW($A$1:$A$7)),ROW(1:1)),2)),"",INDEX($A$1:$B$7,SMALL(IF($A$1:$A$7=$D$4,ROW($A$1:$A$7)),ROW(1:1)),2))
inn i det, og trykk Shift + Ctrl + Enter-tastene sammen, dra deretter Autofyll for å fylle ned cellene til første tomme cellen kommer ut. Se skjermbilde:
Merk: I formelen ovenfor, $ A $ 1: $ B $ 7 indikerer serien data, $ A $ 1: $ A $ 7 står for utvalg kolonnen som oppslags den viss verdi i, $ D $ 4 indikerer celle du skriver Oppslag verdien i trinn 1, 2 indikerer finne de tilsvarende verdier i andre kolonne.

Oppslag verdi retur flere tilsvarende verdier med Filter
I Excel, kan du også bruke filterfunksjonen å løse dette problemet.
en. Velg utvalg kolonnen du ønsker å slå opp verdien, og klikker på Data > Filter. Se skjermbilde:
to. Deretter klikker du på pilen knappen i den første cellen du valgte område, og sjekke verdien du ønsker å slå opp bare i nedtrekkslisten. Se skjermbilde:
tre. Klikk OK, nå ser du bare look-up verdi, og tilsvarende verdier blir filtrert ut.

Oppslag verdi retur flere tilsvarende verdier med definert funksjon
Hvis du er interessert i definert funksjon, du kan løse problemet med definert funksjon også.
en. Trykk ALT + F11-tastene for å åpne Microsoft Visual Basic for Applications vinduet.
2. Klikk Module > Sett inn for å sette inn en modul vindu, og kopier under VBA inn i vinduet
VBA:.. Lookup verdi returnere flere tilsvarende verdier
Function MyVlookup (pWorkRng As Range, PRNG As Range, pColumnIndex As Integer, Valgfritt pType As String = "v") 'Updateby20140827Dim xRow Som SingleDim xCol Som SingleDim arr () Som VariantReDim arr (0) For i = 1 Til pRng.Rows.Count Hvis pWorkRng = pRng.Cells (i, 1) Deretter arr (UBound (arr) ) = pRng.Cells (i, pColumnIndex) ReDim Bevar arr (UBound (arr) + 1) End IfNextIf pType = "h" Så xCol = Range (Application.Caller.Address) .Columns.Count For i = UBound (arr) til xCol arr (UBound (arr)) = "" ReDim Bevar arr (UBound (arr) + 1) Neste ReDim Bevar arr (UBound (arr) - 1) MyVlookup = arrElsexRow = Range (Application.Caller.Address) .Rows. CountFor i = UBound (arr) Til xRow arr (UBound (arr)) = "" ReDim Bevar arr (UBound (arr) + 1) NextReDim Bevar arr (UBound (arr) - 1) MyVlookup = Application.WorksheetFunction.Transpose (arr ) End IfEnd Function3. Lukk vinduet, og skriv denne formelen i en celle = MyVlookup (A10, $ A $ 2: $ B $ 7,2)
(A10 indikerer oppslagsverdien, $ A $ 2: $ B $ 7 indikerer dataområdet, 2 indikerer kolonne indeksnummeret). Og trykk Shift + Ctrl + Enter-tastene. Deretter drar fyllhåndtaket ned cellene, sette markøren inn i formellinjen, og trykk Shift + Ctrl + Enter igjen
. Tips: Hvis du ønsker å returnere verdier i horisontale celler, kan du skrive denne formelen = MyVlookup (A10, $ A $ 2: $ B $ 7, 2, "h")
.