Kaip "Excel" programoje atlikti "Vlookup" su keliais atitikmenimis (paprastais žingsniais)

  • Pasidalinti
Hugh West

Viena iš nuostabiausių ir plačiausiai naudojamų "Excel" funkcijų yra VLOOKUP funkcija . Iki šiol mokėmės, kaip naudojant šią funkciją iš langelių intervalo ištraukti vieną atitikmenį. Dažnai galite susidurti su scenarijais, kai reikia gauti visas unikalaus identifikatoriaus atitikmenų reikšmes. Šiame straipsnyje parodysime, kaip galite iš langelių intervalo ištraukti kelis atitikmenis naudodami funkciją VLOOKUP funkcija "Excel" programoje.

Atsisiųsti praktikos sąsiuvinį

Kad geriau suprastumėte ir praktiškai išbandytumėte, galite atsisiųsti šį "Excel" sąsiuvinį.

Vlookup atlikimas su keliais atitikmenimis.xlsx

2 žingsniai į "Excel" "Vlookup" su keliais atitikmenimis

Čia mes turime Martino knygyno knygų įrašai . Šiame duomenų rinkinyje yra Knygos tipas , Knygos pavadinimas , ir Autorius kai kurių knygų skiltyse B , C , ir D atitinkamai.

Šiandien mūsų tikslas - išrinkti visus kiekvieno tipo knygų atitikmenis naudojant VLOOKUP funkcija . Atliksime tai dviem etapais. Taigi, išnagrinėkime juos po vieną.

Čia mes naudojome "Microsoft Excel 365 versiją, galite naudoti bet kurią kitą versiją pagal savo patogumą.

📌 01 veiksmas: sukurkite unikalų kiekvienos paieškos reikšmės pavadinimą

  • Pačioje pradžioje įterpkite naują stulpelį su antrašte Pagalbinis stulpelis į kairę į paieškos stulpelį Knygos tipas ir ląstelėje įveskite šią formulę B5 .
=C5&COUNTIF(C5:$C$25,C5) Formulės suskirstymas
  • COUNTIF(C5:$C$25,C5) grąžina bendrą langelių skaičių diapazone C5:C25 ( Knygos tipas ), kuriose yra ląstelės C5 ( Naujiena ). Žr. COUNTIF funkcija daugiau informacijos.
    • Paprastais žodžiais tariant, kiek romanų yra. Tai 7 .
  • C5&COUNTIF(C5:$C$25,C5) sujungia ląstelėje esančią vertę C5 ( Naujiena ) su juo.
    • Taigi jis grąžina Novel7 .

Vilkdami Užpildymo rankena įrankis, C5 didėja po vieną, kaip C5 , C6 , C7 ... bet C25 išlieka pastovus. Todėl kiekvienam Knygos tipas , ankstesnieji pašalinami ir sukuriamas naujas pavadinimas.

Pavyzdžiui, romanų atveju, Novelė1 į Novel7 ir panašiai Poezija ir kitų tipų knygų.

  • Tada paspauskite ĮVESKITE .

  • Po to nukreipkite žymeklį į dešinį apatinį ląstelės kampą. B5 ir tai atrodys kaip pliusas (+) ženklas. Tiesą sakant, tai Užpildymo rankena įrankis.
  • Dabar dukart spustelėkite jį.

Ji nukopijuoja šią formulę į likusius langelius. Rasite visas paieškos reikšmes, kurioms suteiktas unikalus pavadinimas, pvz. Novelė1 , Novelė2...., Poezija1 , Poezija2... ir t. t.

📌 02 veiksmas: naudokite VLOOKUP funkciją

  • Pirmiausia sukurkite naują stulpelį su Stulpelio antraštė kaip paieškos vertę.

  • Antra, į ląstelę įterpkite šią formulę G5 kuris yra pirmasis šio stulpelio langelis.
=VLOOKUP(G$4&ROW($A$1:INDIRECT("A"&COUNTIF($C$5:$C$25,G$4))),$B$5:$E$25,3,FALSE) Formulės suskirstymas
  • COUNTIF($C$5:$C$25,G$4) nurodo, kiek langelių diapazone C5:C25 ( Knygos tipas ) yra ląstelės G4 ( Naujiena ).
    • Paprastais žodžiais tariant, kiek iš viso yra romanų. 7 .

Naudojome absoliučiąją diapazono ląstelės nuorodą C5:C25 ( $C$5:$C$25 ), nes norime, kad ji išliktų nepakitusi, jei nukopijuosime formulę į bet kurią ląstelę.

  • INDIRECT("A"&COUNTIF($C$5:$C$25,G$4)) tampa INDIRECT("A"&7) ir grąžina ląstelės nuorodą A7 . Žr. INDIREKTINĖ funkcija daugiau informacijos.
  • ROW($A$1:INDIRECT("A"&COUNTIF($C$5:$C$25,G$4)) dabar tampa ROW(A1:A7) .Žiūrėkite ROW funkcija daugiau informacijos.
    • Jis grąžina masyvą iš 1 į 7 kaip {1, 2, 3, 4, 5, 6, 7} .

Naudojome $A$1 nes nenorime, kad ji pasikeistų, jei nukopijuosime formulę į kitą ląstelę.

  • G$4&ROW($A$1:INDIRECT("A"&COUNTIF($C$5:$C$25,G$4))) dabar sujungia ląstelėje esančią vertę G4 ( Naujiena ) su masyvu, kurį grąžina ROW funkcija ir grąžina kitą masyvą.
    • Taigi jis grąžina {Novelė1, Novelė2, ..., Novelė7} .
  • VLOOKUP(G$4&ROW($A$1:INDIRECT("A"&COUNTIF($C$5:$C$25,G$4))),$B$5:$E$25,3,FALSE) tampa VLOOKUP({Novel1, Novel2, ..., Novel7},$B$5:$E$25,3,FALSE) .

Ieškoma kiekvienos masyvo reikšmės {Novel1, Novel2, ... Novel7} paieškos stulpelyje B .

Tada jis grąžina atitinkamą romano pavadinimą iš 3. stulpelyje (kaip col_index_num yra . 3 ). Taigi gauname visų romanų sąrašą.

  • Kaip įprasta, paspauskite ĮVESKITE raktas.

Pastaba: Tai masyvo formulė. Todėl nepamirškite paspausti Ctrl + Shift + Enter nebent naudojate "Excel 365 .

Ir dėl kitų Knygų tipai ,

  • Iš pradžių įterpkite jų vardus greta kaip Stulpelių antraštės ir vilkite Užpildymo rankena .

Skaityti daugiau: INDIRECT VLOOKUP programoje "Excel

Panašūs skaitiniai

  • VLOOKUP neveikia (8 priežastys ir sprendimai)
  • "Excel" LOOKUP vs VLOOKUP: 3 pavyzdžiai
  • Kodėl VLOOKUP grąžina #N/A, kai yra atitikmuo? (5 priežastys ir sprendimai)
  • Naudokite VLOOKUP su keliais kriterijais "Excel" programoje (6 metodai + alternatyvos)
  • "Excel" VLOOKUP paskutinei stulpelio vertei rasti (su alternatyvomis)

Alternatyvūs "Excel" paieškos su keliais atitikmenimis būdai

Jei ankstesnis būdas atrodo pavojingas, nesijaudinkite. Yra ir daugiau galimybių.

1. Naudojant funkciją FILTER

Tai iš tiesų paprasčiausias metodas. Čia naudosime tik Filtro funkcija . Atlikite šiuos paprastus veiksmus.

📌 Žingsniai:

  • Pirmiausia užrašykite Knygos tipas kaip Stulpelio antraštė ir ląstelėje įveskite šią formulę F5 .
=FILTRAS($C$5:$C$25,$B$5:$B$25=F$4) Formulės suskirstymas

Čia,

  • $C$5:$C$25 ( Knygos pavadinimas ) yra lookup_array . mes ieškome knygų pavadinimų. jūs naudokite savo.
  • $B$5:$B$25 ( Knygos tipas ) yra matching_array . Norime suderinti knygų tipus. Atitinkamai naudokite savo.
  • F4 ( Naujiena ) yra matching_value . Norime, kad atitiktų romanus. Jūs jį atitinkamai naudokite.
  • Tada paspauskite ĮVESKITE .

Jei norite, kad Knygų pavadinimai visų Knygų tipai ,

  • Iš pradžių įterpkite jų pavadinimus kaip Stulpelių antraštės greta, tada vilkite Užpildymo rankena įrankis.

2. INDEX, SMALL ir ROWS funkcijų derinio taikymas (suderinama su senesnėmis "Excel" versijomis)

Svetainė Filtro funkcija galima naudoti tik "Office 365 . Taigi, jei naudojate senesnę "Excel" versiją, nesijaudinkite. Turime jums kitą apėjimo būdą. Jis paprastas ir lengvas; tiesiog sekite toliau.

📌 Žingsniai:

  • Pirmiausia įdėkite Knygos tipas kaip Stulpelio antraštė ląstelėje F4 ir ląstelėje įveskite šią formulę F5 .
=IFERROR(INDEX($C$5:$C$25,(SMALL(IF($B$5:$B$25=F4,ROW(B5:B25)-ROWS(B1:B4),""),(ROW(B5:B25)-ROWS(B1:B4))))),"") Formulės suskirstymas
  • ROW(B5:B25) grąžina masyvą {5, 6, 7, ..., 25} . ir ROWS(B1:B4) grąžina 4 . Taigi EILUTĖ(B5:B25)-EILUTĖS(B1:B4) grąžina masyvą {1, 2, 3, ..., 21} . Žr. EILUTĖ ir EILUTĖS išsamiau aprašyta funkcija.
  • IF($B$5:$B$25=F4,ROW(B5:B25)-ROWS(B1:B4),"") grąžina atitinkamą skaičių iš masyvo {1, 2, 3, ..., 21} ląstelės vertė F4 ( Naujiena ) atitinka bet kurio diapazono langelio vertę B5:B25 ( Knygos tipas ). Priešingu atveju grąžinama tuščia ląstelė. Žr. IF funkcija daugiau informacijos.

  • SMALL(IF($B$5:$B$25=F4,ROW(B5:B25)-ROWS(B1:B4),""),(ROW(B5:B25)-ROWS(B1:B4)))) tampa SMALL({1, ..., 3, ..., 6, ..., 20, ...},{1, 2, 3, 4, ...., 21}) ir pirmiausia grąžina skaičius, tada #NUM! klaidos tuščiuose langeliuose. SMALL funkcija daugiau informacijos.

  • INDEX($C$5:$C$25,(SMALL(IF($B$5:$B$25=F4,ROW(B5:B25)-ROWS(B1:B4),""),(ROW(B5:B25)-ROWS(B1:B4))))) tampa INDEX($C$5:$C$25,{1,3,6,11,...,#NUM!}) ir grąžina atitinkamą Knygų pavadinimai (romanų pavadinimas) ir #NUM! klaidos. Žr. INDEX funkcija daugiau informacijos.

  • Galiausiai formulę įtraukėme į Funkcija IFERROR kad klaidos būtų pakeistos į tuščius langelius.
  • Po to paspauskite ĮVESKITE .

  • Dabar, jei norite, įdėkite kitą Knygų tipai kaip Stulpelių antraštės ir vilkite Užpildymo rankena . Jūs gausite kitų tipų knygų.

3. Vlookup su keliais atitikmenimis ir rezultatų grąžinimu eilutėje

Ankstesniuose metoduose rezultatus gavome vertikaliuose stulpeliuose. Bet jei norime gauti reikšmes eilutėse, kaip tai padaryti? Čia gausime Autorius skirtingų pavadinimų Knygų tipai iš eilės. Tiesiog atidžiai atlikite toliau nurodytus veiksmus.

📌 Žingsniai:

  • Iš pradžių eikite į langelį G5 ir užrašykite toliau pateiktą formulę.
=IFERROR(INDEX($D$5:$D$19,SMALL(IF($F5=$B$5:$B$19,ROW($D$5:$D$19)-4,""),COLUMN()-6))),"")

Ši formulė yra panaši į ankstesnę formulę, todėl, jei susiduriate su sunkumais ją suprasdami, žr. ankstesnis paaiškinimas .

  • Tada bakstelėkite ĮVESKITE raktas.

Tačiau šiame duomenų rinkinyje yra ir kitų autorių, kurių romanai yra įtraukti į šį rinkinį. Taigi, kaip juos gauti?

Tiesiog vilkite Užpildymo rankena į dešinę iki ląstelės K5 gauti kitą Autoriai Naujiena Be to, vilkite Užpildymo rankena įrankis į ląstelę K7 gauti pavadinimus Autoriai skirtingo tipo knygoms. Paaiškinimų rasite toliau pateiktame paveikslėlyje.

Kaip ieškoti daugybės atitikmenų su keliais kriterijais

Ankstesniuose pavyzdžiuose radome vieno kriterijaus reikšmes. Pavyzdžiui, gavome konkretaus knygų tipo knygų pavadinimus. Tačiau čia numanysime kelis kriterijus. Ieškosime Romanai Čarlzas Dikensas naudodami šį metodą. Pažiūrėkime, kaip jis veikia.

📌 Žingsniai:

  • Pirmiausia pasirinkite ląstelę H5 ir įklijuokite šią formulę.
=IFERROR(INDEX($C$5:$C$25,SMALL(IF(1=((--($F$5=$B$5:$B$25))*(--($G$5=$D$5:$D$25))),ROW($C$5:$C$25)-4,""),ROW()-4))),"")
  • Tada paspauskite ĮVESKITE .

Kaip atlikti "Vlookup" ir grąžinti kelis atitikmenis vienoje ląstelėje

Ankstesniais būdais gaudavome reikšmes skirtingose ląstelėse. Tačiau parodysime, kaip galime gauti rezultatus vienoje ląstelėje. Taigi, nieko nelaukdami, pasinerkime į tai!

📌 Žingsniai:

  • Pirmiausia eikite į ląstelę G5 ir įveskite toliau pateiktą formulę.
=TEXTJOIN(", ",TRUE,IF($F$5=$B$5:$B$25,C5:C25,"))

Čia IF funkcija gauna vertę iš intervalo C5:C25 kur atitinkamos vertės iš intervalo B5:B25 atitinka ląstelės vertę F5 . Tada TEXTJOIN funkcija sujungia masyvo reikšmes su kableliu kaip skiriamuoju ženklu.

  • Po to paspauskite ĮVESKITE .

Skaityti daugiau: INDEX MATCH vs VLOOKUP funkcija (9 pavyzdžiai)

Išvada

Šiame straipsnyje paprastai ir glaustai paaiškinama, kaip "Excel" programoje atlikti vlookup su keliais atitikmenimis. Nepamirškite atsisiųsti praktikos failo. Dėkojame, kad perskaitėte šį straipsnį. Tikimės, kad tai buvo naudinga. Jei turite klausimų ar pasiūlymų, praneškite mums komentarų skiltyje. Apsilankykite mūsų svetainėje, ExcelWIKI , vieno langelio principu veikiančio "Excel" sprendimų teikėjo, norėdami sužinoti daugiau.

Hugh Westas yra labai patyręs Excel treneris ir analitikas, turintis daugiau nei 10 metų patirtį šioje srityje. Jis yra įgijęs apskaitos ir finansų bakalauro bei verslo administravimo magistro laipsnius. Hugh turi aistrą mokymui ir sukūrė unikalų mokymo metodą, kurį lengva sekti ir suprasti. Jo ekspertinės žinios apie „Excel“ padėjo tūkstančiams studentų ir specialistų visame pasaulyje tobulinti savo įgūdžius ir tobulėti savo karjeroje. Savo tinklaraštyje Hugh dalijasi savo žiniomis su pasauliu, siūlydamas nemokamus „Excel“ vadovėlius ir internetinius mokymus, kad padėtų asmenims ir įmonėms išnaudoti visą savo potencialą.