Excelda kengaytirilgan VLOOKUP: bir nechta, ikkita, ichki

  • Buni Baham Ko'Ring
Michael Brown

Ushbu misollar sizga bir nechta mezonlarni Vlookup qilishni, ma'lum bir misolni yoki barcha mosliklarni qaytarishni, bir nechta varaqlarda dinamik Vlookup qilishni va boshqalarni o'rgatadi.

Bu ikkinchi qism. Excel VLOOKUP kuchidan foydalanishga yordam beradigan seriya. Misollar bu funksiya qanday ishlashini bilishingizni anglatadi. Agar yo'q bo'lsa, Excelda VLOOKUPning asosiy qo'llanilishidan boshlash uchun asos bo'ladi.

Keyingi o'tishdan oldin sizga sintaksisni qisqacha eslatib o'taman:

VLOOKUP(qidiruv_qiymati, jadval_massivi, qator_indeks_num, [diapazon_qidiruv] )

Endi hamma bir sahifada, keling, VLOOKUP formulasining ilg'or misollarini batafsil ko'rib chiqamiz:

    Bir nechta mezonlarni qanday tekshirish mumkin

    Excel VLOOKUP funksiyasi ma'lum bir qiymat uchun ma'lumotlar bazasini qidirishda juda foydali. Biroq, u muhim xususiyatga ega emas - uning sintaksisi faqat bitta qidirish qiymatiga imkon beradi. Ammo bir nechta shartlarni qidirmoqchi bo'lsangiz-chi? Siz tanlash uchun bir nechta turli xil yechimlar mavjud.

    Formula 1. Ikkita mezon bilan VLOOKUP

    Fazrat qilaylik, sizda buyurtmalar roʻyxati bor va 2 mezon asosida miqdorni topmoqchisiz, Mijoz nomi va Mahsulot . Murakkablashtiruvchi omil shundaki, har bir mijoz quyidagi jadvalda ko'rsatilganidek, bir nechta mahsulotga buyurtma bergan:

    Oddiy VLOOKUP formulasi bu holatda ishlamaydi, chunki u birinchi topilganini qaytaradi. a asosida mos keladimintaqalar:

    Avvalgi misoldagi kabi biz bir nechta nomlarni belgilashdan boshlaymiz:

    • CA varaqidagi A2:B5 diapazoni CA_Sales .
    • FL varaqidagi A2:B5 diapazoni FL_Sales deb nomlangan.
    • KS varaqidagi A2:B5 diapazoni KS_Sales .

    Ko'rib turganingizdek, barcha nomlangan diapazonlar umumiy qismga ( Sotish ) va noyob qismlarga ( CA , FL) ega. , KS ). Iltimos, diapazonlaringizni xuddi shunday nomlaganingizga ishonch hosil qiling, chunki bu biz yaratmoqchi bo‘lgan formula uchun zarurdir.

    Formula 1. Turli varaqlardan ma’lumotlarni dinamik ravishda olish uchun BILOSHI VLOOKUP

    Agar vazifangiz bir nechta varaqlardan ma'lumotlarni olish uchun, VLOOKUP BILOOKU formulasi eng yaxshi yechim - ixcham va tushunarli.

    Ushbu misol uchun biz xulosa jadvalini shunday tashkil qilamiz:

    • A2 va A3 formatidagi qiziq mahsulotlarni kiriting. Bular bizning qidiruv qiymatlarimiz.
    • B1, C1 va D1da nomlangan diapazonlarning noyob qismlarini kiriting.

    Va endi biz noyob qismni (B1) o'z ichiga olgan katakchani birlashtiramiz. umumiy qism bilan ("_Sales") va natijada olingan qatorni INDIRECT ga o'tkazing:

    INDIRECT(B$1&"_Sales")

    INDIRECT funktsiyasi qatorni Excel tushunadigan nomga aylantiradi va siz uni kiritasiz. VLOOKUP ning jadval_massivi argumenti:

    =VLOOKUP($A2, INDIRECT(B$1&"_Sales"), 2, FALSE)

    Yuqoridagi formula B2 ga oʻtadi, keyin uni pastga va oʻngga koʻchirasiz.

    Iltimos, E'tibor bering, qidiruv qiymatida ($A2),Biz ustun koordinatasini mutlaq yacheyka havolasi bilan blokladik, shunda formula o'ngga ko'chirilganda ustun o'zgarmas qoladi. B$1 ma'lumotnomasida biz satrni blokladik, chunki biz ustun koordinatasini o'zgartirishni va formula ko'chirilgan ustunga qarab INDIRECT ga tegishli nom qismini berishni xohlaymiz:

    Agar sizning asosiy jadvalingiz qatordagi qidirish qiymatlari va ustundagi diapazon nomlarining noyob qismlari boshqacha tashkil etilgan bo'lsa, siz qidirish qiymatida satr koordinatasini (B$1) va ustun koordinatasini nom qismlarida qulflashingiz kerak. ($A2):

    =VLOOKUP(B$1, INDIRECT($A2&"_Sales"), 2, FALSE)

    Formula 2. VLOOKUP va bir nechta varaqlarni qidirish uchun ichki o'rnatilgan IFs

    Sizda mavjud bo'lgan vaziyatda atigi ikkita yoki uchta qidirish varaqlari, siz ma'lum bir katakdagi kalit qiymatiga asoslangan to'g'ri varaqni tanlash uchun ichki o'rnatilgan IF funksiyalari bilan juda oddiy VLOOKUP formulasidan foydalanishingiz mumkin:

    =VLOOKUP($A2, IF(B$1="CA", CA_Sales, IF(B$1="FL", FL_Sales, IF(B$1="KS", KS_Sales,""))), 2, FALSE)

    Bu erda $A2 Qidiruv qiymati (element nomi) va B$1 asosiy qiymat (holat):

    Bunday holda siz nomlarni belgilashingiz shart emas va tashqi qiymatdan foydalanishingiz mumkin boshqa varaq yoki ish kitobiga murojaat qilish uchun havolalar.

    Ko'proq formulalar uchun mples, iltimos, Excelda bir nechta varaqlar boʻyicha VLOOKUP qanday boʻlishini koʻring.

    Excelda VLOOKUP dan shunday foydalanish mumkin. O'qiganingiz uchun rahmat va keyingi haftada blogimizda ko'rishga umid qilaman!

    Yuklab olish uchun mashq kitobi

    Kengaytirilgan VLOOKUP formula misollari (.xlsx)fayl)

    Siz belgilagan yagona qidiruv qiymati.

    Buni bartaraf etish uchun siz yordamchi ustun qoʻshishingiz va u yerda ikkita qidirish ustunidagi qiymatlarni ( Mijoz va Mahsulot ) birlashtirishingiz mumkin. Yordamchi ustun jadval massivining eng chap ustuni bo'lishi muhim, chunki Excel VLOOKUP har doim qidirish qiymatini qidiradi.

    Shunday qilib, sahifangizning chap tomoniga ustun qo'shing. jadvalni yarating va ushbu ustun bo'ylab quyidagi formuladan nusxa oling. Bu yordamchi ustunni B va C ustunlari qiymatlari bilan to'ldiradi (yaxshiroq o'qilishi uchun bo'sh joy belgisi orasiga biriktiriladi):

    =B2&" "&C2

    Va keyin standart VLOOKUP formulasidan foydalaning va joylashtiring qidiruv_qiymati argumentidagi ikkala mezon bo'sh joy bilan ajratilgan:

    =VLOOKUP("Jeremy Sweets", A2:D11, 4, FALSE)

    Yoki mezonlarni alohida katakchalarga kiriting (bizning holimizda G1 va G2) va ularni birlashtiring katakchalar:

    =VLOOKUP(G1&" "&G2, A2:D11, 4, FALSE)

    Jadval massivida to'rtinchi bo'lgan D ustunidan qiymatni qaytarmoqchi bo'lganimiz uchun col_index_num uchun 4 dan foydalanamiz. diapazon_qidiruv argumenti aniq moslikni Vlookup qilish uchun FALSE ga sozlangan. Quyidagi skrinshotda natija ko'rsatilgan:

    Agar qidiruv jadvalingiz boshqa varaq da bo'lsa, VLOOKUP formulangizga varaq nomini kiriting. Masalan:

    =VLOOKUP(G1&" "&G2, Orders!A2:D11, 4, FALSE)

    Muqobil ravishda formulani oʻqishni osonlashtirish uchun qidiruv jadvali uchun nomli diapazon yarating (masalan, Buyurtmalar ):

    =VLOOKUP(G1&" "&G2, Orders, 4, FALSE)

    Qo'shimcha ma'lumot olish uchun "Qanday qilish" bo'limiga qarangExceldagi boshqa varaqdan ovozli koʻrish.

    Eslatma. Formula to'g'ri ishlashi uchun yordamchi ustundagi qiymatlar xuddi qidiruv_qiymati argumentidagi kabi birlashtirilishi kerak. Masalan, yordamchi ustundagi (B2&"&C2) va VLOOKUP formulasidagi (G1&" &G2) mezonlarni ajratish uchun bo'sh joy belgisidan foydalandik.

    Formula 2. Bir nechta shartlarga ega Excel VLOOKUP

    Nazariy jihatdan Vlookup uchun yuqoridagi yondashuvdan ikkitadan ortiq mezonlardan foydalanishingiz mumkin. Biroq, bir nechta ogohlantirishlar mavjud. Birinchidan, qidiruv qiymati 255 belgi bilan cheklangan, ikkinchidan, ishchi varaq dizayni yordamchi ustun qoʻshishga ruxsat bermasligi mumkin.

    Yaxshiyamki, Microsoft Excel koʻpincha bir xil ishni bajarishning bir nechta usullarini taqdim etadi. Bir nechta mezonlarni Vlookup uchun siz Office 365 da yaqinda kiritilgan INDEX MATCH kombinatsiyasidan yoki XLOOKUP funksiyasidan foydalanishingiz mumkin.

    Masalan, 3 xil qiymat ( Sana , <) asosida qidirish uchun 1>Mijoz nomi va Mahsulot ), quyidagi formulalardan birini ishlating:

    =INDEX(D2:D11, MATCH(1, (G1=A2:A11) * (G2=B2:B11) * (G3=C2:C11), 0))

    =XLOOKUP(1, (G1=A2:A11) * (G2=B2:B11) * (G3=C2:C11), D2:D11)

    Bu yerda:

    • G1 - 1-mezon (sana)
    • G2 - 2-mezon (mijoz nomi)
    • G3 - mezon 3 (mahsulot)
    • A2:A11 - qidiruv 1 diapazon (sanalar)
    • B2:B11 - qidiruv diapazoni 2 (mijoz nomlari)
    • C2:C11 - qidiruv oralig'i 3 (mahsulotlar)
    • D2:D11 - qaytish diapazon (miqdori)

    Eslatma. Excel 365, INDEXdan tashqari barcha versiyalardaMATCH CSE massivi formulasi sifatida Ctrl + Shift + Enter tugmalarini bosib kiritilishi kerak. Dinamik massivlarni qo'llab-quvvatlaydigan Excel 365 da u oddiy formula sifatida ham ishlaydi.

    Formulalarning batafsil tushuntirishlari uchun qarang:

    • Ko'p mezonli XLOOKUP
    • Ko'p mezonli INDEX MATCH formulasi

    Qanday qilish kerak 2, 3 yoki n-chi moslikni olish uchun VLOOKUP-dan foydalaning

    Ma'lumki, Excel VLOOKUP faqat bitta mos qiymatni olishi mumkin, aniqrog'i, birinchi topilgan moslikni qaytaradi. Agar qidiruv massivingizda bir nechta moslik mavjud bo'lsa va siz ikkinchi yoki uchinchi nusxani olishni istasangiz-chi? Vazifa juda murakkab ko'rinadi, ammo yechim mavjud!

    Formula 1. Vlookup N-misoli

    Bir ustunda mijozlar ismlari, boshqasida ular sotib olgan mahsulotlar bor va siz qidiryapsiz deylik. berilgan mijoz tomonidan sotib olingan 2 yoki 3-mahsulotni topish uchun.

    Eng oddiy usul - birinchi misolda bo'lgani kabi jadvalning chap tomoniga yordamchi ustun qo'shish. Ammo bu safar biz uni mijoz ismlari va " John Doe1 ", " John Doe2 " va hokazo kabi holatlar raqamlari bilan to'ldiramiz.

    Voqeani olish uchun, COUNTIF funksiyasidan aralash diapazonli havola bilan foydalaning (birinchi havola mutlaq, ikkinchisi esa $B$2:B2 kabi nisbiy). Nisbiy ma'lumotnoma formuladan nusxa ko'chirilayotgan katakning holatiga qarab o'zgarganligi sababli, 3-qatorda u $B$2:B3, 4-qatorda -$B$2:B4 va hokazo.

    Mijoz nomi (B2) bilan bogʻlangan holda formula quyidagi shaklni oladi:

    =B2&COUNTIF($B$2:B2, B2)

    Yuqoridagi formula A2 ga oʻtadi. , va keyin siz uni kerak bo'lganda shuncha katakka nusxalaysiz.

    Shundan so'ng alohida katakchalarga maqsad nomi va hodisa raqamini kiriting (F1 va F2) va ma'lum bir hodisani Vlookup qilish uchun quyidagi formuladan foydalaning:

    =VLOOKUP(F1&F2, A2:C11, 3, FALSE)

    Formula 2. Vlookup 2-ko'rinishi

    Agar siz qidiruv qiymatining 2-naslsini qidirsangiz, u holda siz yordamchi ustunsiz bajaring. Buning o'rniga, MATCH bilan birgalikda INDIRECT funksiyasidan foydalanib, jadval massivini dinamik ravishda yarating:

    =VLOOKUP(E1, INDIRECT("A"&(MATCH(E1, A2:A11, 0)+2)&":B11"), 2, FALSE)

    Bu erda:

    • E1 - qidiruv qiymati
    • A2:A11 - qidiruv diapazoni
    • B11 - qidiruv jadvalining oxirgi (pastki o'ng) katakchasi

    Iltimos, diqqat qiling Yuqoridagi formula qidiruv jadvalidagi ma'lumotlar xujayralari 2-qatordan boshlanadigan muayyan holat uchun yozilgan. Agar jadvalingiz varaqning o'rtasida joylashgan bo'lsa, ushbu universal formuladan foydalaning, bu erda A1 - qidirish jadvalining yuqori chap katakchasi. ustun sarlavhasi:

    =VLOOKUP(E1, INDIRECT("A"&(MATCH(E1, A2:A11, 0)+1+ROW(A1))&":B11"), 2, FALSE)

    Ushbu formula qanday ishlaydi

    Bu yerda dinamik vlookup diapazoni yaratuvchi formulaning asosiy qismi:

    INDIRECT("A"&(MATCH(E1, A2:A11, 0)+2)&":B11")

    Aniq moslik uchun sozlangan MATCH funksiyasi (oxirgi argumentda 0) maqsad nomini (E1) nomlar roʻyxati (A2:A11) bilan solishtiradi va birinchi topilgan joyni qaytaradi. mos keladi, bu 3bizning holatimizda. Bu raqam vlookup diapazoni uchun boshlang'ich qator koordinatasi sifatida ishlatiladi, shuning uchun biz unga 2 qo'shamiz (birinchi misolni istisno qilish uchun +1 va ustun sarlavhalari bilan 1 qatorni istisno qilish uchun +1). Shu bilan bir qatorda 1+ROW(A1) tugmalaridan foydalanib, sarlavha satrining (bizning holatda A1) joylashuviga qarab avtomatik ravishda kerakli sozlashni hisoblashingiz mumkin.

    Natijada biz quyidagi matn qatorini olamiz, bu INDIRECT diapazon maʼlumotnomasiga oʻzgartiradi:

    INDIRECT("A"&5&":B11") -> A5:B11

    Bu diapazon VLOOKUPning jadval_massivi argumentiga oʻtadi va uni 5-qatorda qidirishni boshlashga majbur qiladi va birinchi nusxasini qoldirmaydi. qidiruv qiymati:

    VLOOKUP(E1, A5:B11, 2, FALSE)

    Qanday qilib Vlookup va Excelda bir nechta qiymatlarni qaytarish kerak

    Excel VLOOKUP funksiyasi faqat bitta moslikni qaytarish uchun mo'ljallangan. Bir nechta misollarni Vlookup qilishning bir usuli bormi? Ha, bor, garchi oson bo'lmasa ham. Bu INDEX, SMALL va ROW kabi bir nechta funksiyalardan birgalikda foydalanishni talab qiladi, bu massiv formulasi.

    Masalan, quyida B2:B16 qidiruv diapazonida F2 qidiruv qiymatining barcha holatlarini topish va bir nechtasini qaytarish mumkin. C ustunidan mos keladi:

    {=IFERROR(INDEX($C$2:$C$11, SMALL(IF($F$1=$B$2:$B$11, ROW($C$2:$C$11)-1,""), ROW()-1)),"")}

    Ish varag'ingizga formulani kiritishning 2 yo'li mavjud:

    1. Birinchi katakchaga formulani kiriting, Ctrl + ni bosing Shift + Enter tugmalarini bosing va keyin uni yana bir nechta katakka torting.
    2. Bir ustunda bir nechta qoʻshni katakchalarni tanlang (quyidagi skrinshotda F1:F11), formulani kiriting va Ctrl + tugmasini bosing.Uni bajarish uchun Shift + Enter tugmalarini bosing.

    Har qanday holatda ham formulani kiritadigan katakchalar soni mumkin boʻlgan mosliklarning maksimal soniga teng yoki undan kattaroq boʻlishi kerak.

    Formula mantiqining batafsil tushuntirishlari va boshqa misollar uchun Excelda bir nechta qiymatlarni VLOOKUP boʻlimiga qarang.

    Qanday qilib satrlar va ustunlar boʻyicha VLOOKUP (ikki tomonlama qidirish)

    Ikki tomonlama qidirish (aka matritsali qidirish yoki 2 oʻlchovli qidirish ) kesishgan joydan qiymatni qidirish uchun moʻljallangan soʻzdir. ma'lum bir qator va ustun. Excelda ikki oʻlchovli qidiruvni amalga oshirishning bir necha xil usullari mavjud, ammo bu qoʻllanmada asosiy eʼtibor VLOOKUP funksiyasiga qaratilgani uchun biz undan tabiiy ravishda foydalanamiz.

    Ushbu misol uchun biz quyida koʻrib chiqamiz. oylik sotuvlar jadvali va ma'lum bir oyda ma'lum bir mahsulot bo'yicha savdo ko'rsatkichini olish uchun VLOOKUP formulasini ishlab chiqing.

    Tovar nomlari A2:A9, oy nomlari B1:F1, maqsadli element I1. va I2 da maqsadli oy, formula quyidagicha bo'ladi:

    =VLOOKUP(I1, A2:F9, MATCH(I2, A1:F1, 0), FALSE)

    Ushbu formula qanday ishlaydi

    Formulaning asosiy qismi standart VLOOKUP funksiyasi boʻlib, I1 da qidirish qiymatiga aniq moslikni qidiradi. Lekin biz ma'lum bir oy uchun sotuvlar aynan qaysi ustunda ekanligini bilmasligimiz sababli, ustun raqamini to'g'ridan-to'g'ri col_index_num argumentiga bera olmaymiz. Ushbu ustunni topish uchun biz quyidagi MATCHdan foydalanamizfunktsiya:

    MATCH(I2, A1:F1, 0)

    Ingliz tiliga tarjima qilingan formulada aytiladi: A1:F1 da I2 qiymatini qidiring va uning massivdagi nisbiy o'rnini qaytaring. 3-argumentga 0 qiymatini berish orqali siz MATCHga qidiruv qiymatiga aynan teng qiymatni topishni buyurasiz (bu VLOOKUPning diapazon_qidiruv argumenti uchun FALSE dan foydalanishga o‘xshaydi).

    Buyon Mar qidiruv massivining 4-ustunida joylashgan, MATCH funksiyasi 4 ni qaytaradi, bu toʻgʻridan-toʻgʻri VLOOKUPning col_index_num argumentiga oʻtadi:

    VLOOKUP(I1, A2:F9, 4, FALSE)

    Iltimos E'tibor bering, oy nomlari B ustunidan boshlansa ham, biz qidirish massivi uchun A1:I1 dan foydalanamiz. Bu MATCH tomonidan qaytarilgan raqam VLOOKUPning jadval_massivi dagi ustun oʻrniga mos kelishi uchun amalga oshiriladi.

    Excelda matritsalarni qidirishni amalga oshirishning koʻproq usullarini bilish uchun INDEX MATCH MATCH-ga qarang. va 2 o'lchovli qidirish uchun boshqa formulalar.

    Excelda bir nechta Vlookup qanday amalga oshiriladi (ichki Vlookup)

    Ba'zida asosiy jadval va qidirish jadvalida bitta ustun bo'lmasligi mumkin. umumiy, bu ikki jadval o'rtasida Vlookup qilishingizga to'sqinlik qiladi. Biroq, boshqa jadval mavjud bo'lib, unda siz izlayotgan ma'lumotlar mavjud emas, lekin asosiy jadval bilan bitta umumiy ustun va qidirish jadvali bilan boshqa umumiy ustun mavjud.

    Quyidagi rasmda vaziyat ko'rsatilgan:

    Maqsad - narxlarni asosiy jadvalga ko'chirish Element identifikatorlari . Muammo shundaki, narxlarni o'z ichiga olgan jadvalda Element identifikatorlari yo'q, ya'ni bitta formulada ikkita Vlookup qilishimiz kerak bo'ladi.

    Qulaylik uchun keling, bir nechtasini yarataylik. avval diapazonlarni nomlagan:

    • 1-jadvalni qidirish Mahsulotlar (D3:E10)
    • 2-jadvalni qidirish Narxlar ( G3:H10 )

    Jadvallar bir xil yoki turli ish varaqlarida boʻlishi mumkin.

    Va endi biz ikki marta Vlookup deb ataladigan ishni bajaramiz. , aka ichki Vlookup .

    Birinchidan, element asosida 1-qidiruv jadvalidagi ( Mahsulotlar nomli) mahsulot nomini topish uchun VLOOKUP formulasini tuzing. id (A3):

    =VLOOKUP(A3, Products, 2, FALSE)

    Keyin, yuqoridagi formulani boshqa VLOOKUP funksiyasining qidiruv_qiymati argumentiga qo'ying, 2-qidiruv jadvalidan narxlarni oling ( deb nomlangan). Narxlar ) ichki VLOOKUP tomonidan qaytarilgan mahsulot nomiga asoslangan:

    =VLOOKUP(VLOOKUP(A3, Products, 2, FALSE), Prices, 2, FALSE)

    Quyidagi skrinshotda ichki Vlookup formulamiz amalda koʻrsatilgan:

    Qanday qilib bir nechta varaqlarni dinamik ravishda ko'rish mumkin

    Ba'zan, y bir xil formatdagi ma'lumotlar bir nechta ishchi varaqlarga bo'lingan bo'lishi mumkin. Va sizning maqsadingiz ma'lum bir varaqdan ma'lum bir hujayradagi kalit qiymatiga qarab ma'lumotlarni olishdir.

    Buni misoldan tushunish osonroq bo'lishi mumkin. Aytaylik, sizda bir xil formatdagi bir nechta mintaqaviy savdo hisobotlari bor va siz ma'lum bir mahsulot bo'yicha savdo ko'rsatkichlarini aniqlamoqchisiz.

    Maykl Braun - dasturiy vositalardan foydalangan holda murakkab jarayonlarni soddalashtirishga ishtiyoqi bo'lgan maxsus texnologiya ishqibozi. Texnologiya sohasida o'n yildan ortiq tajribaga ega bo'lgan holda, u Microsoft Excel va Outlook, shuningdek, Google Sheets va Docs dasturlarida o'z mahoratini oshirdi. Mayklning blogi o'z bilimi va tajribasini boshqalar bilan baham ko'rishga, samaradorlik va samaradorlikni oshirish uchun amal qilish oson maslahatlar va o'quv qo'llanmalariga bag'ishlangan. Tajribali mutaxassismisiz yoki yangi boshlovchi boʻlasizmi, Mayklning blogi ushbu muhim dasturiy vositalardan maksimal darajada foydalanish uchun qimmatli tushunchalar va amaliy maslahatlarni taqdim etadi.