Indholdsfortegnelse
Når du arbejder med store mængder data i Excel, kan du nogle gange komme i en situation, hvor du skal søge efter værdier, der vises flere gange i dit datasæt. Du skal derfor se disse data i én celle. I denne vejledning viser vi dig, hvordan du bruger VLOOKUP til flere værdier i én celle i Excel.
Generelt set bruger vi ikke direkte den VLOOKUP Vi vil finde flere værdier i en celle, som vil ligne VLOOKUP-funktionen. Vi håber, at du vil finde denne vejledning nyttig.
Download arbejdsbog til øvelser
Vlookup Flere værdier i én celle.xlsm2 nemme metoder til Vlookup til flere værdier i én celle
Vi vil nu vise dig 2 måder at slå flere værdier op i en celle i Excel på. Den første måde er ved hjælp af Formler og den anden bruger VBA Vi vil i denne artikel se på både gentagne og ikke-repeterede værdier. Du kan altså vælge den metode, der passer bedst til dit problem.
For at demonstrere dette problem bruger vi følgende datasæt:
Her har vi nogle sælgere' Navne og deres salg Produkter Nu er vores mål at finde de enkelte sælgeres salgsprodukter.
1. Brug af formler til at Vlookup flere værdier i en celle i Excel
TEXTJOIN funktionen vil være vores primære funktion til at implementere denne metode. TEXTJOIN funktionen giver dig mulighed for at sammenføje 2 eller flere strenge med hver værdi adskilt af et afgrænser Vi kombinerer hovedsageligt forskellige funktioner med TEXTJOIN-funktionen for at implementere vores formel.
TEXTJOIN funktionen er kun tilgængelig i Excel 2019 og Office 365.Den grundlæggende syntaks for TEXTJOIN-funktionen:
=TEXTJOIN(delimiter, ignore_empty, text1, [text2], ...)
Her vil vores afgrænser være et komma ( ","
) til at adskille værdier i en celle.
1.1 TEXTJOIN- og IF-funktionerne
Denne formel er ret nem at bruge. Denne formel vil slå værdierne op og indsætte dem i én celle med en afgrænser, komma. Men husk, at denne formel vil returnere værdien med dubletter.
Den grundlæggende syntaks:
=TEXTJOIN(", ", ",TRUE,IF(lookup_value=lookup_range,,finding_range,""))
📌 Trin
1. Indtast først følgende formel i Celle F5 :
=TEXTJOIN(", ",TRUE,IF(E5=B5:B13,C5:C13,""))
2. Tryk derefter på Indtast.
3. Til sidst skal du trække Håndtag til påfyldning ikonet over området af celler F6:F7 .
I sidste ende er det lykkedes os at bruge VLOOKUP flere værdier i en celle.
🔎 Opdeling af formlen
Vi bruger kun denne opdeling for personen "John"
➤ IF(E5=B5:B13,C5:C13,"")
Denne funktion returnerer følgende array:
{"Mobile";"";"";"TV";"";"Fridge";"";"Mobile";""}
➤ TEXTJOIN(", ", ",TRUE,IF(E5=B5:B13,C5:C13,""))
Endelig er det TEXTJOIN funktionen vil give følgende resultat:
{Mobil, TV, Køleskab, Mobil}
Læs mere: Excel VLOOKUP til at returnere flere værdier i én celle adskilt af komma
1.2 TEXTJOIN- og MATCH-funktionerne (uden dubletter)
Hvis du nu vil have flere værdier i en celle, kan du bruge denne formel. Denne formel er en kombination af formlen TEXTJOIN og MATCH Denne formel er lidt kompliceret at anvende, men den vil helt sikkert give de ønskede værdier.
📌 TRIN
1. Indtast først følgende formel i Celle F5 :
=TEXTJOIN(",", TRUE, IF(IFERROR(MATCH(C5:C13, IF(E5=B5:B13, C5:C13, ""), 0),"")=MATCH(ROW(C5:C13), ROW(C5:C13))), C5:C13, "")))
2. Tryk derefter på Indtast.
3. Til sidst skal du trække Håndtag til påfyldning ikonet over området af celler F6:F7 .
I sidste ende er det lykkedes os at bruge VLOOKUP flere værdier i en celle uden dubletter.
🔎 Opdeling af formlen
Vi bruger kun denne opdeling for personen "John"
➤ RÆKKE(C5:C13)
Den returnerer et array af {5;6;7;8;9;10;11;12;13}
➤ MATCH(ROW(C5:C13), ROW(C5:C13))
Den vender tilbage: {1;2;3;4;5;6;7;8;9}
➤ IF(E5=B5:B13, C5:C13, "")
Den vender tilbage: {"Mobile";"";"";"TV";"";"Fridge";"";"Mobile";""}
➤ MATCH(C5:C13, IF(E5=B5:B13, C5:C13, "")
Denne funktion returnerer: {8;8;7;9;7;7;7;8;7}
➤ IFERROR(MATCH(C5:C13, IF(E5=B5:B13, C5:C13, ""), 0),""),"")
Den vender tilbage: {1;1;"";4;"";6;"";1;""}
➤ IF(IFERROR(MATCH(C5:C13, IF(E5=B5:B13, C5:C13, ""), 0),"")=MATCH(ROW(C5:C13), ROW(C5:C13)), C5:C13, "")
Den vender tilbage: {"Mobile";"";"";"TV";"";"Fridge";"";"";""}
➤ TEXTJOIN(",", TRUE, IF(IFERROR(MATCH(C5:C13, IF(E5=B5:B13, C5:C13, ""), 0),"")=MATCH(ROW(C5:C13), ROW(C5:C13))), C5:C13, "")))
Det endelige output vil være Mobil, TV, køleskab .
Læs mere: Sådan udføres VLOOKUP med flere rækker i Excel (5 metoder)
1.3 TEXTJOIN- og UNIQUE-funktionerne (uden dubletter)
Nu, den UNIK funktionen er kun tilgængelig i Excel 365. Så hvis du bruger Excel 365, kan du helt sikkert bruge denne formel. Den foregående formel er lidt vanskelig, men denne formel vil gøre det lettere at finde værdier i en celle. UNIQUE-funktionen returnerer en liste over unikke værdier i en liste eller et område. Forskellen mellem den første og den tredje formel er, at du bruger UNIK funktion før den IF funktion.
Den grundlæggende syntaks for UNIQUE-funktionen:
=UNIQUE (array, [by_col], [exactly_once])
array - Område eller array, hvorfra der skal udtrækkes unikke værdier.
by_col - [valgfrit] Hvordan sammenlignes og udtrækkes. Efter række = FALSK (standard); efter kolonne = SAND.
exactly_once - [valgfrit] TRUE = værdier, der forekommer én gang, FALSE = alle unikke værdier (standard)
📌 TRIN
1. Indtast først følgende formel i Celle F5 :
=TEXTJOIN(", ", ",TRUE,UNIQUE(IF(E5=B5:B13,C5:C13,""))))
2. Tryk derefter på Indtast.
3. Til sidst skal du trække Håndtag til påfyldning ikonet over området af celler F6:F7.
Som du kan se, har vi med succes brugt VLOOKUP flere værdier i en celle.
🔎 Opdeling af formlen
Vi bruger kun denne opdeling for personen "John"
➤ IF(E5=B5:B13,C5:C13,"")
Den returnerer {"Mobile";"";"";"TV";"";"Fridge";"";"Mobile";""}
➤ UNIQUE(IF(E5=B5:B13,C5:C13,""))
Den returnerer {"Mobile";"";"TV";"Fridge"}
➤ TEXTJOIN(", ", ",TRUE,UNIQUE(IF(E5=B5:B13,C5:C13,""))))
Endeligt resultat Mobil,TV,Køleskab
Læs mere: Sådan Vlookup og returnere flere værdier i Drop Down List
2. Brug af VBA-koder til Vlookup af flere værdier i én celle
TEXTJOIN funktionen er kun tilgængelig for MS Excel 2019 og MS Excel 365 Så hvis du kender Excel's VBA-koder, vil disse to koder være meget praktiske for dig. Den første kode er med dubletter, og den anden er uden dubletter. Så vælg din metode i henhold til dit problem.
2.1 VBA-koder Flere værdier i én celle
📌 TRIN
1. Først. Tryk på Alt+F11 for at åbne Visual Basic Editor.
2. Klik derefter på Indsæt> Modul .
3. Skriv derefter følgende kode:
Function MultipleValues(work_range As Range, criteria As Variant, merge_range As Range, Optional Separator As String = ",") As Variant Dim outcome As String On Error Resume Next If work_range.Count merge_range.Count Then MultipleValues = CVErr(xlErrRef) Exit Function End If For i = 1 To work_range.Count If work_range.Cells(i).Value = criteria Then outcome = outcome & Separator &merge_range.Cells(i).Value End If Next i If outcome "" Then outcome = VBA.Mid(outcome, VBA.Len(Separator) + 1) End If MultipleValues = outcome Exit Function End Function
4. Gå nu til dit regneark. Skriv derefter følgende formel i Celle F5 :
=MultipleValues(B5:B13,E5,C5:C13,",")
5. Tryk derefter på ENTER.
6. Endelig skal du trække ikonet Fyld håndtag over området af celler F6:F7.
I sidste ende har vi brugt VLOOKUP flere værdier i en celle .
Læs mere: VLOOKUP til at returnere flere værdier horisontalt i Excel
2.2 VBA-koder til at søge flere værdier i én celle (uden dubletter)
📌 TRIN
1. Først. Tryk på Alt+F11 for at åbne Visual Basic Editor.
2. Klik derefter på Indsæt> Modul .
3. Skriv derefter følgende kode:
Function ValuesNoDup(target As String, search_range As Range, ColumnNumber As Integer) Dim i As Long Dim outcome As String For i = 1 To search_range.Columns(1).Cells.Count If search_range.Cells(i, 1) = target Then For J = 1 To i - 1 If search_range.Cells(J, 1) = target Then If search_range.Cells(J, ColumnNumber) = search_range.Cells(J, ColumnNumber) = search_range.Cells(i, ColumnNumber) Then GoTo Skip End If End If End If Next J outcome =outcome & " " & search_range.Cells(i, ColumnNumber) & "," Skip: End If Next i ValuesNoDup = Left(outcome, Len(outcome) - 1) End Function
4. Når du har indsat koden, skal du klikke på Værktøj> Referencer i det åbnede Microsoft Visual Basic for Applications-vindue, og derefter, i det fremskudte Referencer - VBAProject-dialogboksen, markerer du Microsoft Scripting Runtime i Tilgængelige referencer Klik på OK .
5. Gå nu til dit regneark. Skriv derefter følgende formel i Celle F5 :
=ValuesNoDup(E5,B5:B13,2)
Her er 2 kolonnenummeret i datasættet.
6. Tryk derefter på Indtast .
7. Til sidst skal du trække Håndtag til påfyldning ikonet over området af celler F6:F7.
Som du kan se, har vi brugt VLOOKUP flere værdier i en celle uden dubletter.
Læs mere: Sådan VLOOKUP og returnerer flere værdier i Excel (8 metoder)
Konklusion
Til sidst håber jeg, at denne tutorial vil hjælpe dig med at vlookup flere værdier i en celle i Excel. Download arbejdsbogen til øvelser og prøv selv. Det vil helt sikkert udvikle din viden om Excel. Du er også velkommen til at give feedback i kommentarfeltet. Din værdifulde feedback holder os motiveret til at skabe mange artikler som disse. Glem ikke at tjekke vores hjemmeside ExcelWIKI for Excel-relaterede problemer og løsninger.