Sisällysluettelo
Kun työskentelet suurten tietomäärien kanssa Excelissä, saatat joskus joutua tilanteeseen, jossa sinun on etsittävä arvoja, jotka esiintyvät useita kertoja tietokokonaisuudessasi. Sinun on siis nähtävä nämä tiedot yhdessä solussa. Tässä opetusohjelmassa näytämme, miten voit käyttää VLOOKUP-ohjelmaa useiden arvojen määrittämiseksi yhdessä solussa Excelissä.
Yleisesti ottaen emme käytä suoraan työkalua VLOOKUP toiminto tässä. Etsimme useita arvoja yhdestä solusta, joka on samanlainen kuin VLOOKUP-toiminto. Toivomme, että tämä opetusohjelma on hyödyllinen.
Lataa harjoituskirja
Vlookup Useita arvoja yhdessä Cell.xlsm:ssä2 Helppoja menetelmiä Vlookup useita arvoja yhdessä solussa
Nyt näytämme sinulle 2 tapaa etsiä useita arvoja Excelin yhdestä solusta. Ensimmäinen tapa on käyttää komentoa Kaavat ja toinen käyttää VBA Tässä artikkelissa tarkastelemme sekä toistuvia että toistumattomia arvoja, joten voit valita parhaiten sopivan menetelmän ongelmasi mukaan.
Tämän ongelman havainnollistamiseksi käytämme seuraavaa tietokokonaisuutta:
Täällä meillä on joitakin myyjiä. Nimet ja niiden myynti Tuotteet Tavoitteemme on nyt löytää kunkin myyjän myyntituotteet.
1. Kaavojen käyttäminen useiden arvojen katsomiseen yhdessä solussa Excelissä
The TEXTJOIN funktio on meidän funktiomme tämän menetelmän toteuttamiseksi. TEXTJOIN toiminnon avulla voit yhdistää 2 tai useampia merkkijonoja toisiinsa siten, että kukin arvo on erotettu välilyönnillä delimiter Pääasiassa yhdistämme eri funktioita TEXTJOIN-funktion kanssa kaavan toteuttamiseksi.
The TEXTJOIN toiminto on käytettävissä vain Excel 2019:ssä ja Office 365:ssä.TEXTJOIN-funktion perussyntaksi:
=TEXTJOIN(delimiter, ignore_empty, text1, [text2], ...).
Tässä erotinmerkkinä on pilkku ( ","
) erottamaan arvot toisistaan yhdessä solussa.
1.1 TEXTJOIN- ja IF-funktiot
Tätä kaavaa on melko helppo käyttää. Tämä kaava etsii arvot ja lisää ne yhteen soluun pilkulla erotettuna. Muista kuitenkin, että tämä kaava palauttaa arvon, jossa on kaksoiskappaleita.
Perussyntaksi:
=TEXTJOIN(", ",TRUE,IF(lookup_value=lookup_range,,finding_range,""))
📌 Askeleet
1. Kirjoita ensin seuraava kaava Solu F5 :
=TEXTJOIN(", ",TRUE,IF(E5=B5:B13,C5:C13,""))
2. Paina sitten Astu sisään.
3. Vedä lopuksi Täyttökahva kuvake solualueen päällä F6:F7 .
Loppujen lopuksi onnistumme käyttämään VLOOKUP useita arvoja yhdessä solussa.
🔎 Kaavan erittely
Käytämme tätä erittelyä vain henkilöön "John".
➤ IF(E5=B5:B13,C5:C13,"")
Tämä toiminto palauttaa seuraavan array:n:
{"Mobile";"";"";"TV";"";"Fridge";"";"Mobile";""}
➤ TEXTJOIN(", ",TRUE,IF(E5=B5:B13,C5:C13,"")))
Lopuksi TEXTJOIN palauttaa seuraavan tuloksen:
{Kännykkä, TV, Jääkaappi, Matkapuhelin}
Lue lisää: Excel VLOOKUP palauttaa useita arvoja yhdessä solussa, joka on erotettu pilkulla erotettuna
1.2 TEXTJOIN- ja MATCH-funktiot (ilman kaksoiskappaleita)
Jos haluat useita arvoja yhteen soluun, voit käyttää tätä kaavaa. Tämä kaava on yhdistelmä kaavasta TEXTJOIN ja MATCH Tämä kaava on hieman monimutkainen käyttää, mutta se antaa varmasti haluamasi arvot.
📌 STEPS
1. Kirjoita ensin seuraava kaava Solu 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. Paina sitten Astu sisään.
3. Vedä lopuksi Täyttökahva kuvake solualueen päällä F6:F7 .
Loppujen lopuksi onnistumme käyttämään VLOOKUP useita arvoja yhdessä solussa ilman päällekkäisiä arvoja.
🔎 Kaavan erittely
Käytämme tätä erittelyä vain henkilöön "John".
➤ ROW(C5:C13)
Se palauttaa array of {5;6;7;8;9;10;11;12;13}
➤ MATCH(ROW(C5:C13), ROW(C5:C13))
Se palaa: {1;2;3;4;5;6;7;8;9}
➤ IF(E5=B5:B13, C5:C13, "")
Se palaa: {"Mobile";"";"";"TV";"";"Fridge";"";"Mobile";""}
➤ MATCH(C5:C13, IF(E5=B5:B13, C5:C13, "")
Tämä toiminto palauttaa: {8;8;7;9;7;7;7;8;7}
➤ IFERROR(MATCH(C5:C13, IF(E5=B5:B13, C5:C13, ""), 0),"")
Se palaa: {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, ""), C5:C13, "")
Se palaa: {"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, "")))
Lopullinen tulos on Matkapuhelin, TV, Jääkaappi .
Lue lisää: Kuinka suorittaa VLOOKUP useilla riveillä Excelissä (5 menetelmiä)
1.3 TEXTJOIN- ja UNIQUE-funktiot (ilman kaksoiskappaleita)
Nyt UNIQUE toiminto on käytettävissä vain Excel 365:ssä. Jos siis käytät Excel 365:tä, voit ehdottomasti käyttää tätä kaavaa. Edellinen kaava on hieman vaikea, mutta tämä kaava helpottaa arvojen etsimistä yhdestä solusta. UNIQUE-funktio palauttaa luettelon tai alueen ainutlaatuisten arvojen luettelon. Ensimmäisen ja kolmannen kaavan ero on siinä, että käytät funktiota UNIQUE toiminto ennen IF toiminto.
UNIQUE-funktion perussyntaksi:
=UNIQUE (array, [by_col], [exactly_once])
array - Alue tai joukko, josta poimitaan yksilölliset arvot.
by_col - [valinnainen] Miten vertaillaan ja uutetaan. Riveittäin = FALSE (oletus); sarakkeittain = TRUE.
exactly_once - [valinnainen] TRUE = arvot, jotka esiintyvät kerran, FALSE= kaikki uniikit arvot (oletus).
📌 STEPS
1. Kirjoita ensin seuraava kaava Solu F5 :
=TEXTJOIN(", ",TRUE,UNIQUE(IF(E5=B5:B13,C5:C13,""))))
2. Paina sitten Astu sisään.
3. Vedä lopuksi Täyttökahva kuvake solualueen päällä F6:F7.
Kuten näet, olemme onnistuneesti käyttäneet VLOOKUP useita arvoja yhdessä solussa.
🔎 Kaavan erittely
Käytämme tätä erittelyä vain henkilöön "John".
➤ IF(E5=B5:B13,C5:C13,"")
Se palauttaa {"Mobile";"";"";"TV";"";"Fridge";"";"Mobile";""}
➤ UNIQUE(IF(E5=B5:B13,C5:C13,""))
Se palauttaa {"Mobile";"";"TV";"Fridge"}
➤ TEXTJOIN(", ",TRUE,UNIQUE(IF(E5=B5:B13,C5:C13,""))))
Lopputulos Matkapuhelin,TV,Jääkaappi
Lue lisää: Miten Vlookup ja palauttaa useita arvoja pudotusluettelossa
2. VBA-koodien käyttäminen useiden arvojen tarkasteluun yhdessä solussa
The TEXTJOIN toiminto on käytettävissä vain MS Excel 2019 ja MS Excel 365 Jos siis tunnet Excelin VBA-koodit hyvin, nämä kaksi koodia ovat erittäin käytännöllisiä sinulle. Ensimmäisessä koodissa on kaksoiskappaleet ja toisessa ei ole kaksoiskappaleita. Valitse siis menetelmä ongelmasi mukaan.
2.1 VBA-koodit Useita arvoja yhdessä solussa
📌 STEPS
1. Ensimmäinen. Paina Alt+F11 avataksesi Visual Basic Editorin.
2. Napsauta sitten Lisää> Moduuli .
3. Kirjoita seuraavaksi seuraava koodi:
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. Siirry nyt laskentataulukkoon. Kirjoita sitten seuraava kaava kohtaan Solu F5 :
=MultipleValues(B5:B13,E5,C5:C13,",")
5. Paina sitten ENTER.
6. Vedä lopuksi Täyttökahva-kuvake solualueen päälle. F6:F7.
Loppujen lopuksi olemme käyttäneet VLOOKUP useita arvoja yhdessä solussa .
Lue lisää: VLOOKUP palauttaa useita arvoja vaakasuoraan Excelissä
2.2 VBA-koodit useiden arvojen LOOKUP-toimintoon yhdessä solussa (ilman kaksoiskappaleita)
📌 STEPS
1. Ensimmäinen. Paina Alt+F11 avataksesi Visual Basic Editorin.
2. Napsauta sitten Lisää> Moduuli .
3. Kirjoita seuraavaksi seuraava koodi:
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(i, ColumnNumber) Then GoTo Skip 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. Kun olet lisännyt koodin, napsauta sitten Työkalut> Viitteet avatussa Microsoft Visual Basic for Applications -ikkunassa, ja sitten esiin avautuvassa ikkunassa Viitteet - VBAProject -valintaikkunassa, tarkista VBAProjectin Microsoft Scripting Runtime vaihtoehto Saatavilla olevat viitteet Luetteloruutu. Napsauta OK .
5. Siirry nyt laskentataulukkoon. Kirjoita sitten seuraava kaava kohtaan Solu F5 :
=ValuesNoDup(E5,B5:B13,2)
Tässä 2 on tietokokonaisuuden sarakkeen numero.
6. Paina sitten Kirjoita .
7. Vedä lopuksi Täyttökahva kuvake solualueen päällä F6:F7.
Kuten näet, olemme käyttäneet VLOOKUP useita arvoja yhdessä solussa ilman päällekkäisyyksiä.
Lue lisää: Miten VLOOKUP ja palauttaa useita arvoja Excelissä (8 menetelmää)
Päätelmä
Lopuksi, toivon, että tämä opetusohjelma auttaa sinua vlookupiin useita arvoja yhdessä solussa Excelissä. Lataa harjoitustyökirja ja kokeile näitä itse. Varmasti se kehittää Excel-tietämystäsi. Anna myös rohkeasti palautetta kommenttiosioon. Arvokas palautteesi pitää meidät motivoituneina luomaan paljon tällaisia artikkeleita. Älä unohda tarkistaa verkkosivujamme. ExcelWIKI Exceliin liittyviä ongelmia ja ratkaisuja.