Hur man hittar flera värden i Excel (8 snabba metoder)

  • Dela Detta
Hugh West

I den här artikeln kommer jag att diskutera hur man hittar flera värden i Excel. När du arbetar med kalkylblad kan det ofta vara till stor hjälp att hitta flera värden på en gång. Vi har till exempel ett dataset som innehåller flera personers hobbies. I detta dataset har dock en person ( Emily ) har mer än en hobby. Därför ska vi nu använda flera Excel-verktyg och funktioner för att få fram flera av Emilys hobbies på en gång. Dessutom ska jag visa hur man sammanfogar flera värden i en enda cell.

Ladda ner övningsboken

Du kan ladda ner arbetsboken som vi har använt för att förbereda den här artikeln.

Hitta flera värden.xlsm

8 metoder för att hitta flera värden i Excel

1. Använd verktyget Hitta och ersätta för att få flera värden i Excel

Du kan enkelt få fram flera värden genom att använda Hitta funktionen i Hitta och ersätta verktyg för MS Excel I vårt dataset nämns namnet Emily. 3 gånger. Så följ nedanstående steg för att hitta dessa 3 värden på en gång.

Steg:

  • Välj först datasetet ( B4:C11 ).

  • Tryck sedan på Ctrl + F för att få upp den Hitta och ersätta eller gå till Hem > Redigering av grupp> Hitta & Välj > Hitta .
  • Skriv sedan ' Emily i Hitta vad fältet och klicka på Hitta alla .

  • Som ett resultat av detta har vi funnit följande 3 namn ( Emily ) som visas i fönstret nedan.

Läs mer: Hur man hittar värdet i ett intervall i Excel (3 metoder)

2. Excel-filteralternativ för att hitta flera värden

Ett annat enkelt och snabbt alternativ för att få fram flera värden i Excel är att använda Autofilter . Låt oss ta en titt på de olika stegen i denna metod.

Steg:

  • Högerklicka först på den cell som du vill tillämpa filtret på. Jag har valt Cell B5 eftersom jag måste filtrera alla namn, Emily .
  • Gå sedan till Filter > Filtrera efter den valda cellens värde .

  • Följaktligen kommer alla celler som innehåller namnet Emily filtreras enligt nedan.

  • Om du nu vill ångra filtreringen klickar du bara på Autofilter ikonen i datainsatsens rubrik, välj Rensa filter från "Namn" och klicka på OK .

Läs mer: Hur man hittar ett tecken i en sträng i Excel

3. Använd avancerade filteralternativ för att återge flera värden

Excel har ett filtreringsalternativ som heter Avancerat filter Det här alternativet är mycket användbart när du söker efter flera värden. Du måste ange ett kriterieområde för att tillämpa Avancerat filter Låt oss gå igenom de olika stegen i denna metod.

Steg:

  • Ange först kriterierna för intervallet ( B13:C14 ).

  • Gå sedan till Uppgifter > Sortera & Filtrera > Avancerad .

  • Som en följd av detta har Avancerade filter r-fönstret visas. Ställ nu in Lista över intervallet ( Datamaterialets omfång ) och Kriterieområde och klicka på OK .

  • Äntligen har vi här alla Emilys hobbies på en gång.

Obs

Kom ihåg att Rubrik av huvuddatasetet och den Kriterieområde måste vara likadana, annars kan Avancerat filter alternativet fungerar inte.

4. Återge flera värden genom att använda Excel-definierad tabell

Vi kan skapa Excel-definierade tabeller Detta är ett mycket bekvämt och enkelt sätt att hitta flera värden.

Steg:

  • Klicka först på någon av cellerna i datasetet ( B4:C11 ).

  • Tryck sedan på Ctrl + t från tangentbordet. Som en följd av detta kan Skapa en tabell fönstret visas. Kontrollera tabellområdet och klicka på OK .

  • Resultatet är nedanstående tabell som skapats från vårt dataset.

  • Klicka nu på ikonen med nedåtriktad pil bredvid tabellens rubrik. Kontrollera sedan namnet Emily och klicka på OK

  • Här är det förväntade filtrerade resultatet.

Liknande läsningar:

  • Hur man hittar text i en cell i Excel
  • Excel söker efter text i ett intervall (11 snabba metoder)
  • Hur man hittar om cellen innehåller specifik text i Excel
  • Hitta tecken i Excel-strängar (8 enkla sätt)

5. Infoga FILTER-funktionen för att hitta flera värden

Den här gången använder vi FILTER-funktionen för att återge flera värden i Excel.

Steg:

  • Först skriver du nedanstående formel i Cell C14 .
=FILTER(C5:C11,B5:B11=B14)

  • Därefter trycker du på Gå in på .
  • Därför återkommer alla Emilys hobbies på en gång.

Obs

➤ Den FILTER funktionen är endast tillgänglig för Excel 365 abonnenter.

6. Sök flera värden med INDEX-funktionen i Excel

Du kan hitta flera värden med hjälp av INDEX-funktionen tillsammans med några andra Excel-funktioner. Formeln för att få fram flera värden är komplex. Formeln anges som en array. Jag förklarar formeln nedan. Innan dess går vi igenom stegen i den här metoden.

Steg:

  • Skriv inledningsvis följande formel i Cell C14 .
=INDEX($B$5:$C$11,SMALL(IF($B$5:$B$11=$B$14,ROW($B$5:$B$11)),ROW(1:1))-4,2)

  • Som ett resultat fick vi nedanstående resultat.

  • Dra sedan ner Handtag för fyllning ( + ) för att få fram de andra värdena.

  • Som en följd av detta har vi fått en lista över Emilys hobbies.

🔎 Hur fungerar formeln?

  • IF($B$5:$B$11=$B$14,ROW($B$5:$B$11))

Här, IF-funktionen. returnerar ett radnummer om ett cellområde B5:B11 är lika med B14 , i annat fall återges FALSK .

  • SMALL(IF($B$5:$B$11=$B$14,ROW($B$5:$B$11)),ROW(1:1))

I denna del av formeln används funktionen SMALL som returnerar den n:e minsta värde. Formeln ger siffrorna: 5 , 8 , 11 .

  • INDEX($B$5:$C$11,SMALL(IF($B$5:$B$11=$B$14,ROW($B$5:$B$11)),ROW(1:1))-4,2)

Nu kommer den sista delen av formeln. Vi vet att INDEX funktionen returnerar värdet på en given position. En annan sak är att INDEX funktionen betraktar den första raden i vår tabell som rad 1. Eftersom mitt tabelldataset börjar i rad 5 har jag dragit bort 4 från ROW för att få fram rätt rad från datamängden. Så för matrisen B5:C11 , radnummer 5 , 8 , 11 , och kolumn nr 2 , den INDEX funktionen kommer att ge det önskade resultatet.

📌 Dölj de fel som genereras av ovanstående formel

Det finns ett problem med den ovan nämnda INDEX formeln. När du drar ner Handtag för fyllning ( + ), returnerar formeln ett fel ( #NUM! ) efter ett visst värde. För att rätta till ovanstående formel använder vi alltså IF och ISERROR funktioner.

Steg:

  • Först skriver du nedanstående formel i Cell C14 .
=IF(ISERROR(INDEX($B$5:$C$11,SMALL(IF($B$5:$B$11=$B$14,ROW($B$5:$B$11)),ROW(1:1))-4,2)),"",INDEX($B$5:$C$11,SMALL(IF($B$5:$B$11=$B$14,ROW($B$5:$B$11)),ROW(1:1))-4,2)))

  • På så sätt får vi ett resultat som är fritt från fel.

Här kan ISERROR funktionen kontrollerar om ett värde är ett fel och returnerar TRUE eller FALSE. Ovanstående formel inlindad med IF och ISERROR kontrollerar om resultatet av matrisen är ett fel eller inte och returnerar därför blank ("") om resultatet är ett fel, annars returnerar den motsvarande värde.

7. Användardefinierad funktion för att hitta flera värden i Excel (VBA)

I den här metoden kommer vi att diskutera hur man använder Användardefinierad funktion för att få fram flera värden i Excel. Här kommer vi att använda Användardefinierad funktion : vbaVlookup .

Steg:

  • Gå först till det aktiva arbetsbladet.
  • För det andra, gå till Utvecklare > Visual Basic .

  • Då är det Visual Basic visas. Gå till VBA-projekt hörnet (övre vänstra hörnet av fönstret).
  • För det tredje högerklickar du på projektnamnet och går till Infoga > Modul .

  • Som ett resultat av detta får du Modul . Skriv nedanstående kod på Modul .
 'Namnge användardefinierad funktion och argument Function vbaVlookup(lookup_value As Range, tbl As Range, col_index_num As Integer, Optional layout As String = "v") 'Deklarera variabler och datatyper Dim r As Single, Lrow, Lcol As Single, temp() As Variant 'Redimensionera array-variabeln temp ReDim temp(0) 'Iterera genom cellerna i cellintervallet For r = 1 To tbl.Rows.Count 'Kontrollera om lookup_value är likvärdigt medcellvärde If lookup_value = tbl.Cells(r, 1) Then 'Spara cellvärdet i arrayvariabeln temp temp(UBound(temp)) = tbl.Cells(r, col_index_num) 'Lägg till ytterligare en behållare i arrayvariabeln temp ReDim Preserve temp(UBound(temp) + 1) End If Next r 'Kontrollera om variabelns layout är lika med h If layout = "h" Then 'Spara antalet kolumner som användaren har angett detta AnvändardefinieratFunction in. Lcol = Range(Application.Caller.Address).Columns.Count 'Iterera genom varje behållare i arrayvariabeln temp som inte kommer att fyllas med information For r = UBound(temp) To Lcol 'Spara ett tomt fält i arraybehållaren temp(UBound(temp)) = "" 'Öka storleken på arrayvariabeln temp med 1 ReDim Preserve temp(UBound(temp) + 1) Next r 'Minska storleken på arrayenvariable temp with 1 ReDim Preserve temp(UBound(temp) - 1) 'Återge värden till kalkylbladet vbaVlookup = temp 'Dessa rader kommer att rundas om variabeln layout inte är lika med h Else 'Spara antalet rader som användaren har skrivit in denna användardefinierade funktion i Lrow = Range(Application.Caller.Address).Rows.Count 'Iterera genom tomma celler och spara inget i dem för att undvika ett felvisas For r = UBound(temp) To Lrow temp(UBound(temp)) = "" ReDim Preserve temp(UBound(temp) + 1) Next r 'Minska storleken på matrisvariabeln temp med 1 ReDim Preserve temp(UBound(temp) - 1) 'Återge temp-variabeln till arbetsbladet med värdena ordnade vertikalt vbaVlookup = Application.Transpose(temp) End If End Function 

  • Om du sedan börjar skriva funktionen i Cell C14 kommer funktionen att visas som andra Excel-funktioner.

  • Skriv sedan nedanstående formel i Cell C14 .
=vbaVlookup(B14,B5:B11,2)

  • Slutligen har vi här flera av Emilys hobbies enligt nedan.

8. Få flera värden i en enda Excel-cell

Hittills har vi fått flera värden listade vertikalt i olika celler, men nu ska vi visa flera värden som är sammanfogade i en enda cell. Här ska vi använda TEXTJOIN-funktionen tillsammans med FILTER för att få fram de sammanfogade multipla värdena.

Steg:

  • Först skriver du nedanstående formel i Cell C14 .
=TEXTJOIN(",",TRUE, FILTER(C5:C11, B5:B11=B14))

  • Som ett resultat av detta presenteras alla Emilys hobbies horisontellt i en enda cell.

Här kan TEXTJOIN funktionen sammanfogar listan över hobbies med hjälp av kommatecken.

Slutsats

I artikeln ovan har jag försökt diskutera metoderna ingående. Förhoppningsvis räcker dessa metoder och förklaringar för att lösa dina problem. Låt mig veta om du har några frågor.

Hugh West är en mycket erfaren Excel-tränare och analytiker med över 10 års erfarenhet i branschen. Han har en kandidatexamen i redovisning och ekonomi och en magisterexamen i företagsekonomi. Hugh har en passion för undervisning och har utvecklat ett unikt undervisningssätt som är lätt att följa och förstå. Hans expertkunskap om Excel har hjälpt tusentals studenter och yrkesverksamma över hela världen att förbättra sina färdigheter och utmärka sig i sina karriärer. Genom sin blogg delar Hugh med sig av sin kunskap med världen, och erbjuder gratis Excel-handledning och onlineutbildning för att hjälpa individer och företag att nå sin fulla potential.