Excel бағдарламасындағы кеңейтілген VLOOKUP: бірнеше, қос, кірістірілген

  • Мұны Бөлісіңіз
Michael Brown

Бұл мысалдар бірнеше критерийлерді Vlookup, белгілі бір дананы немесе барлық сәйкестіктерді қайтаруды, бірнеше парақта динамикалық Vlookup жасауды және т.б. әдістерін үйретеді.

Бұл бағдарламаның екінші бөлігі. Excel VLOOKUP мүмкіндігін пайдалануға көмектесетін серия. Мысалдар бұл функцияның қалай жұмыс істейтінін білетіндігіңізді білдіреді. Әйтпесе, Excel бағдарламасындағы VLOOKUP функциясының негізгі қолданыстарынан бастауға негіз бар.

Әрі қарай жылжытпас бұрын, сізге синтаксисті қысқаша еске түсіруге рұқсат етіңіз:

VLOOKUP(іздеу_мәні, кесте_жиымы, қос индекс_нөмірі, [аралықты_іздеу] )

Енді барлығы бір бетте болғандықтан, кеңейтілген VLOOKUP формула мысалдарын егжей-тегжейлі қарастырайық:

    Бірнеше шарттарды қалай іздеу керек

    Excel VLOOKUP функциясы дерекқордан белгілі бір мәнді іздеуге келгенде өте пайдалы. Дегенмен, оның маңызды мүмкіндігі жоқ - оның синтаксисі тек бір іздеу мәніне мүмкіндік береді. Бірақ бірнеше шарттарды іздегіңіз келсе ше? Таңдау үшін бірнеше түрлі шешімдер бар.

    Формула 1. Екі критерийі бар VLOOKUP

    Сізде тапсырыстар тізімі бар делік және 2 критерийге негізделген мөлшерді тапқыңыз келеді, Тұтынушы аты және Өнім . Төмендегі кестеде көрсетілгендей әр тұтынушының бірнеше өнімге тапсырыс беруі күрделі фактор болып табылады:

    Әдеттегі VLOOKUP формуласы бұл жағдайда жұмыс істемейді, себебі ол бірінші табылғанды ​​қайтарады. сәйкестік а негізделгенаймақтар:

    Алдыңғы мысалдағыдай, біз бірнеше атауларды анықтаудан бастаймыз:

    • CA парағындағы A2:B5 диапазоны <деп аталады. 1>CA_Sales .
    • FL парағындағы A2:B5 ауқымы FL_Sales деп аталады.
    • KS парағындағы A2:B5 ауқымы KS_Sales<деп аталады. 2>.

    Көріп отырғаныңыздай, барлық аталған ауқымдардың ортақ бөлігі ( Сату ) және бірегей бөліктері ( CA , FL) бар. , KS ). Диапазондарыңызды дәл осылай атаңыз, себебі бұл біз құрастыратын формула үшін өте маңызды.

    Формула 1. Әр түрлі парақтардан деректерді динамикалық түрде алу үшін ЖАҢА ТҮЗУГЕ КАРАУ

    Егер тапсырма бірнеше парақтардан деректерді алу үшін VLOOKUP INDIRECT формуласы ең жақсы шешім болып табылады – ықшам және түсінікті.

    Бұл мысал үшін жиынтық кестені келесідей ұйымдастырамыз:

    • А2 және А3 пішіміндегі қызықты өнімдерді енгізіңіз. Бұл біздің іздеу мәндері.
    • Аталған ауқымдардың бірегей бөліктерін B1, C1 және D1-ге енгізіңіз.

    Ал енді бірегей бөлігін (B1) қамтитын ұяшықты біріктіреміз. жалпы бөлікпен («_Сатулар») және алынған жолды ЖАНА:

    INDIRECT(B$1&"_Sales")

    ЖАМАМА функциясы жолды Excel түсінетін атқа түрлендіреді және сіз оны енгізесіз. VLOOKUP қолданбасының кесте_жиымы аргументі:

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

    Жоғарыдағы формула B2-ге өтеді, содан кейін оны төмен және оңға көшіріңіз.

    Өтінемін. назар аударыңыз, іздеу мәнінде ($A2),формула оң жаққа көшірілгенде баған тұрақты болып қалуы үшін біз баған координатын абсолютті ұяшық сілтемесі арқылы құлыптадық. B$1 анықтамасында жолды құлыптадық, себебі біз баған координатасын өзгертіп, формула көшірілетін бағанға байланысты ЖАҒА сәйкес атау бөлігін беруді қалаймыз:

    Егер сіздің негізгі кестеңіз басқаша ұйымдастырылса, жолдағы іздеу мәндері және бағандағы ауқым атауларының бірегей бөліктері болса, іздеу мәніндегі жол координатын (B$1) және атау бөліктеріндегі баған координатын құлыптауыңыз керек. ($A2):

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

    Формула 2. Бірнеше парақтарды іздеу үшін VLOOKUP және кірістірілген IFs

    Сізде бар болған жағдайда тек екі немесе үш іздеу парағында, белгілі бір ұяшықтағы кілт мәніне негізделген дұрыс парақты таңдау үшін кірістірілген IF функциялары бар өте қарапайым VLOOKUP формуласын пайдалануға болады:

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

    Онда $A2 іздеу мәні (элемент аты) және B$1 негізгі мән (күй):

    Бұл жағдайда атауларды анықтау міндетті емес және сыртқы пайдалануыңызға болады. сілтемелер басқа параққа немесе жұмыс кітабына сілтеме жасау үшін.

    Қосымша формула үшін, мысалы mples үшін Excel бағдарламасындағы бірнеше парақтарды VLOOKUP әдісін қараңыз.

    Осылай Excel бағдарламасында VLOOKUP пайдалану керек. Оқығаныңыз үшін алғыс айтамын және келесі аптада блогымызда көреміз деп үміттенемін!

    Жүктеп алуға арналған жұмыс кітабы

    Жетілдірілген VLOOKUP формула мысалдары (.xlsx)файл)

    сіз көрсеткен жалғыз іздеу мәні.

    Мұны жеңу үшін көмекші бағанды ​​қосып, екі іздеу бағанындағы мәндерді ( Тұтынушы және Өнім ) біріктіруге болады. Көмекші баған кесте массивінің ең сол жақ бағанында болуы маңызды, себебі Excel VLOOKUP әрқашан іздеу мәнін осы жерден іздейді.

    Сонымен, сол жақта баған қосыңыз. кестені орнатыңыз және төмендегі формуланы сол бағанға көшіріңіз. Бұл көмекші бағанды ​​B және C бағандарының мәндерімен толтырады (жақсы оқу үшін бос орын таңбасы біріктірілген):

    =B2&" "&C2

    Содан кейін стандартты VLOOKUP формуласын пайдаланыңыз және бос орынмен бөлінген іздеу_мәні аргументіндегі екі шарттың екеуі де:

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

    Немесе шартты бөлек ұяшықтарға енгізіңіз (біздің жағдайда G1 және G2) және оларды біріктіріңіз ұяшықтар:

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

    Кесте массивінде төртінші болып табылатын D бағанынан мәнді қайтарғымыз келгендіктен, түс_көрсеткіш_саны үшін 4 қолданамыз. Дәл сәйкестікті Vlookup үшін аралықты_іздеу аргументі FALSE мәніне орнатылған. Төмендегі скриншот нәтижені көрсетеді:

    Іздеу кестесі басқа парақта болса, VLOOKUP формуласына парақтың атын қосыңыз. Мысалы:

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

    Баламалы түрде, формуланы оқуды жеңілдету үшін іздеу кестесі үшін аталған ауқымды жасаңыз (мысалы, Тапсырыстар ):

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

    Қосымша ақпаратты "Қалай істеу" бөлімінен қараңызExcel бағдарламасындағы басқа парақтан Vlookup.

    Ескерту. Формуланың дұрыс жұмыс істеуі үшін көмекші бағандағы мәндер іздеу_мәні аргументіндегідей біріктірілуі керек. Мысалы, көмекші бағандағы (B2&" &C2) және VLOOKUP формуласындағы (G1&" &G2) критерийлерді бөлу үшін бос орын таңбасын пайдаландық.

    Формула 2. Бірнеше шарты бар Excel VLOOKUP

    Теориялық тұрғыдан Vlookup үшін жоғарыда көрсетілген тәсілді екі критерийден көп қолдануға болады. Дегенмен, бірнеше ескертулер бар. Біріншіден, іздеу мәні 255 таңбамен шектеледі, екіншіден, жұмыс парағының дизайны көмекші баған қосуға мүмкіндік бермеуі мүмкін.

    Бақытымызға орай, Microsoft Excel жиі бірдей нәрсені орындаудың бірнеше әдісін ұсынады. Бірнеше шартты Vlookup үшін сіз Office 365 жүйесінде жақында енгізілген INDEX MATCH комбинациясын немесе ТҮЗУ функциясын пайдалана аласыз.

    Мысалы, 3 түрлі мәнге ( Күн , <) негізделген іздеу үшін 1>Тұтынушы аты және Өнім ), келесі формулалардың бірін пайдаланыңыз:

    =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)

    Мұнда:

    • G1 - 1-шарт (күн)
    • G2 - 2-шарт (тұтынушының аты)
    • G3 - 3-шарт (өнім)
    • A2:A11 - іздеу 1 ауқым (күндер)
    • B2:B11 - іздеу ауқымы 2 (тұтынушы аттары)
    • C2:C11 - іздеу ауқымы 3 (өнімдер)
    • D2:D11 - қайтару диапазон (саны)

    Ескерту. Excel 365, INDEX нұсқасынан басқа барлық нұсқалардаCtrl + Shift + Enter пернелерін басу арқылы MATCH CSE массивінің формуласы ретінде енгізілуі керек. Динамикалық массивтерді қолдайтын Excel 365 нұсқасында ол әдеттегі формула ретінде де жұмыс істейді.

    Формулаларды егжей-тегжейлі түсіндіру үшін мынаны қараңыз:

    • Бірнеше критерийлері бар XLOOKUP
    • Көп критерийлері бар INDEX MATCH формуласы

    Қалай 2-ші, 3-ші немесе n-ші сәйкестікті алу үшін VLOOKUP функциясын пайдаланыңыз

    Өзіңіз білетіндей, Excel VLOOKUP бір ғана сәйкес мәнді ала алады, дәлірек айтқанда, ол бірінші табылған сәйкестікті қайтарады. Бірақ іздеу массивінде бірнеше сәйкестік болса және 2-ші немесе 3-ші дананы алғыңыз келсе ше? Тапсырма өте күрделі болып көрінеді, бірақ шешімі бар!

    Формула 1. Vlookup N-ші данасы

    Бір бағанда тұтынушы аттары, екіншісінде олар сатып алған өнімдер бар және сіз іздеп жатырсыз делік. берілген тұтынушы сатып алған 2-ші немесе 3-ші өнімді табу үшін.

    Ең қарапайым әдіс - бірінші мысалдағыдай кестенің сол жағына көмекші баған қосу. Бірақ бұл жолы біз оны тұтынушы аттарымен және " Джон До1 ", " Джон До2 " және т.б. сияқты орын алу нөмірлерімен толтырамыз.

    Оқиғаны алу үшін, COUNTIF функциясын аралас ауқым анықтамасымен пайдаланыңыз (бірінші сілтеме абсолютті, екіншісі $B$2:B2 сияқты салыстырмалы). Салыстырмалы сілтеме формула көшірілетін ұяшықтың орнына байланысты өзгеретіндіктен, 3-жолда ол $B$2:B3, 4-жолда болады -$B$2:B4 және т.б.

    Тұтынушы атымен (B2) біріктірілген формула келесі пішінді алады:

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

    Жоғарыдағы формула A2-ге өтеді. , содан кейін оны қажетінше көптеген ұяшықтарға көшіріңіз.

    Одан кейін мақсатты атауды және қайталану нөмірін бөлек ұяшықтарға (F1 және F2) енгізіңіз және белгілі бір оқиғаны Vlookup үшін төмендегі формуланы пайдаланыңыз:

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

    Формула 2. Vlookup 2-ші қайталануы

    Егер іздеу мәнінің 2-ші данасын іздесеңіз, онда сіз көмекші бағансыз орындаңыз. Оның орнына, MATCH:

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

    Мұндағы:

    • E1 - іздеу мәні
    • <14 ЖАМА функциясын пайдалану арқылы динамикалық түрде кесте массивін жасаңыз>A2:A11 - іздеу ауқымы
    • B11 - іздеу кестесінің соңғы (төменгі оң жақ) ұяшығы

    жоғарыдағы формула іздеу кестесіндегі деректер ұяшықтары 2-жолдан басталатын нақты жағдай үшін жазылған. Егер кестеңіз парақтың ортасында болса, осы әмбебап формуланы пайдаланыңыз, мұнда A1 - іздеу кестесінің жоғарғы сол жақ ұяшығы. баған тақырыбы:

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

    Бұл формула қалай жұмыс істейді

    Міне, динамикалық vlookup ауқымын жасайтын формуланың негізгі бөлігі:

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

    Нақты сәйкестік үшін конфигурацияланған MATCH функциясы (соңғы аргументте 0) мақсатты атауды (E1) атаулар тізімімен (A2:A11) салыстырады және бірінші табылғанның орнын қайтарады. сәйкестік, бұл 3біздің жағдайда. Бұл сан vlookup ауқымы үшін бастапқы жол координаты ретінде пайдаланылады, сондықтан біз оған 2 қосамыз (бірінші дананы шығару үшін +1 және баған тақырыптарымен 1 жолды алып тастау үшін +1). Сонымен қатар, тақырып жолының орнына (біздің жағдайда A1) негізделген қажетті түзетуді автоматты түрде есептеу үшін 1+ROW(A1) пернелерін пайдалануға болады.

    Нәтижесінде біз келесі мәтіндік жолды аламыз, ол INDIRECT диапазон сілтемесіне түрлендіреді:

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

    Бұл ауқым VLOOKUP кесте_жиымы аргументіне өтеді және оны 5-жолда іздеуді бастауға мәжбүрлейді, бірінші данасын қалдырмайды. іздеу мәні:

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

    Excel бағдарламасында бірнеше мәндерді іздеу және қайтару жолы

    Excel VLOOKUP функциясы тек бір сәйкестікті қайтаруға арналған. Бірнеше даналарды Vlookup әдісі бар ма? Иә, оңай болмаса да, бар. Бұл INDEX, SMALL және ROW сияқты бірнеше функцияларды біріктіріп пайдалануды қажет етеді - бұл жиым формуласы.

    Мысалы, төменде B2:B16 іздеу ауқымындағы F2 іздеу мәнінің барлық көріністерін табуға және бірнеше мәнді қайтаруға болады. C бағанынан сәйкес келеді:

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

    Жұмыс парағына формуланы енгізудің 2 жолы бар:

    1. Бірінші ұяшыққа формуланы теріңіз, Ctrl + пернелер тіркесімін басыңыз. Shift + Enter пернелерін басыңыз, содан кейін оны тағы бірнеше ұяшыққа сүйреңіз.
    2. Бір бағандағы бірнеше көрші ұяшықтарды таңдаңыз (төмендегі скриншотта F1:F11), формуланы теріңіз де, Ctrl + пернелерін басыңыз.Оны аяқтау үшін Shift + Enter пернелер тіркесімін басыңыз.

    Қайткен күнде де формуланы енгізетін ұяшықтар саны ықтимал сәйкестіктердің максималды санына тең немесе одан көп болуы керек.

    Формула логикасын егжей-тегжейлі түсіндіру және басқа мысалдар үшін Excel бағдарламасында бірнеше мәндерді VLOOKUP әдісі бөлімін қараңыз.

    Жолдар мен бағандарда дыбысты іздеу әдісі (екі жақты іздеу)

    Екі жақты іздеу (ака матрицалық іздеу немесе 2 өлшемді іздеу ) қиылысында мәнді іздеуге арналған сәнді сөз. белгілі бір жол мен баған. Excel бағдарламасында екі өлшемді іздеуді жүзеге асырудың бірнеше түрлі жолы бар, бірақ бұл оқулықтың негізгі мақсаты VLOOKUP функциясына бағытталғандықтан, біз оны табиғи түрде қолданамыз.

    Бұл мысал үшін біз төменде қарастырамыз. ай сайынғы сатылымдары бар кесте және белгілі бір айдағы белгілі бір тауардың сатылым көрсеткішін алу үшін VLOOKUP формуласын жасаңыз.

    А2:A9 ішіндегі элемент атаулары, B1:F1 ішіндегі ай атаулары, I1 ішіндегі мақсатты элемент. және I2-дегі мақсатты айда формула келесідей болады:

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

    Бұл формула қалай жұмыс істейді

    Формуланың өзегі — I1 ішіндегі іздеу мәніне дәл сәйкестікті іздейтін стандартты VLOOKUP функциясы. Бірақ біз белгілі бір айдағы сатылымдар нақты қай бағанда екенін білмегендіктен, баған нөмірін тікелей түтік_индекс_саны аргументіне бере алмаймыз. Бұл бағанды ​​табу үшін келесі SATCH қолданамызфункция:

    MATCH(I2, A1:F1, 0)

    Ағылшын тіліне аударылғанда, формула былай дейді: A1:F1 ішінен I2 мәнін іздеңіз және оның массивтегі салыстырмалы орнын қайтарыңыз. 3-аргументке 0 мәнін беру арқылы сіз MATCH функциясына іздеу мәніне дәл тең мәнді табуды тапсырасыз (бұл VLOOKUP функциясының аралықты_қарау аргументі үшін FALSE пайдалану сияқты).

    бері Мар іздеу массивіндегі 4-бағанда, MATCH функциясы 4 мәнін қайтарады, ол тікелей VLOOKUP функциясының col_index_num аргументіне өтеді:

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

    Өтінемін назар аударыңыз, ай атаулары В бағанынан басталса да, іздеу массиві үшін A1:I1 қолданамыз. Бұл MATCH қайтарған сан VLOOKUP қолданбасының кесте_массивіндегі баған орнына сәйкес келуі үшін жасалады.

    Excel бағдарламасында матрицалық іздеуді орындаудың қосымша жолдарын білу үшін INDEX MATCH MATCH бөлімін қараңыз. және 2 өлшемді іздеуге арналған басқа формулалар.

    Excel бағдарламасында бірнеше Vlookup әдісі (кіріктірілген Vlookup)

    Кейде негізгі кестеде және іздеу кестесінде бір баған болмауы мүмкін. жалпы, бұл екі кесте арасында Vlookup жасауға мүмкіндік бермейді. Дегенмен, басқа кесте бар, онда сіз іздеген ақпарат жоқ, бірақ негізгі кестемен бір ортақ баған және іздеу кестесі бар басқа ортақ баған бар.

    Төменгі суретте жағдайды көрсетеді:

    Мақсат – бағаларды негізгі кестеге көшіру Элемент идентификаторлары . Мәселе мынада, бағалары бар кестеде элемент идентификаторлары жоқ, яғни бір формулада екі Vlookup жасау керек болады.

    Ыңғайлы болу үшін бірнеше нұсқасын жасайық. алдымен диапазондарды атады:

    • Іздеу кестесі 1 деп аталады Өнімдер (D3:E10)
    • Іздеу кестесі 2 деп аталады Бағалар ( G3:H10 )

    Кестелер бірдей немесе әртүрлі жұмыс парақтарында болуы мүмкін.

    Ал енді қос Vlookup деп аталатын әрекетті орындаймыз. , aka кірістірілген Vlookup .

    Алдымен элементке негізделген Іздеу кестесінен 1 (атауы Өнімдер ) өнім атауын табу үшін VLOOKUP формуласын жасаңыз. идентификатор (A3):

    =VLOOKUP(A3, Products, 2, FALSE)

    Кейін, Іздеу 2-кестесінен (атауы ) бағаларды алу үшін жоғарыдағы формуланы басқа VLOOKUP функциясының іздеу_мәні аргументіне қойыңыз. Бағалар ) кірістірілген VLOOKUP қайтарған өнім атауына негізделген:

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

    Төмендегі скриншотта кірістірілген Vlookup формуласы әрекетте көрсетілген:

    Бірнеше парақтарды динамикалық түрде қалай іздеу керек

    Кейде, y Бірнеше жұмыс парағына бөлінген бірдей пішімдегі деректер болуы мүмкін. Сіздің мақсатыңыз - берілген ұяшықтағы кілт мәніне байланысты белгілі бір парақтан деректерді алу.

    Мұны мысалдан түсіну оңайырақ болуы мүмкін. Айталық, сізде бірдей пішімдегі бірнеше аймақтық сату есептері бар және сіз белгілі бір өнім үшін сату көрсеткіштерін алғыңыз келеді.

    Майкл Браун - бағдарламалық құралдарды пайдалана отырып, күрделі процестерді жеңілдетуге құмарлығы бар арнайы технология әуесқойы. Технологиялық индустрияда он жылдан астам тәжірибесі бар ол Microsoft Excel және Outlook, сондай-ақ Google Sheets және Docs бағдарламаларында өз дағдыларын жетілдірді. Майклдың блогы өз білімі мен тәжірибесін басқалармен бөлісуге, өнімділік пен тиімділікті арттыруға арналған оңай орындалатын кеңестер мен оқулықтар беруге арналған. Сіз тәжірибелі кәсіпқой болсаңыз да, жаңадан бастаушы болсаңыз да, Майклдың блогы осы маңызды бағдарламалық құралдарды барынша пайдалану үшін құнды түсініктер мен практикалық кеңестер ұсынады.