20+ VLOOKUP примера за начинаещи и напреднали потребители на Excel
Функцията VLOOKUP е една от най-популярните функции в Excel. Този урок ще представи как да използвате функцията VLOOKUP в Excel с десетки основни и разширени примери стъпка по стъпка.
Съдържание:
1. Въвеждане на функцията VLOOKUP – Синтаксис и аргументи
- 2.1 Точно съвпадение и приблизително съвпадение VLOOKUP
- 2.2 VLOOKUP, чувствителен към главни и малки букви
- 2.3 VLOOKUP от дясно на ляво
- 2.4 VLOOKUP втората, n-тата или последната съответстваща стойност
- 2.5 VLOOKUP между две зададени стойности или дати
- 2.6 Използване на заместващи символи за частични съвпадения във функцията VLOOKUP
- 2.7 VLOOKUP стойности от друг работен лист
- 2.8 VLOOKUP стойности от друга работна книга
- 2.9 VLOOKUP и връща празен или специфичен текст вместо 0 или #N/A стойност за грешка
3. Разширени примери за VLOOKUP
- 3.1 Двупосочно търсене с функцията VLOOKUP (VLOOKUP в ред и колона)
- 3.2 VLOOKUP съответстваща стойност въз основа на два или повече критерия
- 3.3 VLOOKUP за връщане на множество съвпадащи стойности с едно или повече условия
- 3.4 VLOOKUP за връщане на цял или цял ред от съответстваща клетка
- 3.5 Изпълнете множество функции VLOOKUP (вложени VLOOKUP) в Excel
- 3.6 VLOOKUP за проверка дали съществува стойност въз основа на данни от списък в друга колона
- 3.7 VLOOKUP и сумиране на всички съответстващи стойности в редове или колони
- 3.8 VLOOKUP за обединяване на две таблици въз основа на една или повече ключови колони
- 3.9 VLOOKUP съпоставяне на стойности в множество работни листове
4. VLOOKUP съответстващите стойности запазват форматирането на клетката
Изтеглете VLOOKUP примерни файлове
Основни примери за Vlookup | Разширени примери за Vlookup | Vlookup запазва форматирането на клетката
Представяне на функцията VLOOKUP – Синтаксис и аргументи
В Excel функцията VLOOKUP е мощна функция за повечето потребители на Excel, тя ви позволява да търсите стойност в най-лявата част на диапазона от данни и да върнете съвпадаща стойност в същия ред от колона, която сте посочили, както е показано на следната екранна снимка .
Синтаксисът на функцията VLOOKUP:
аргументи:
Търсене_стойност (задължително): Стойността, която искате да търсите. Може да бъде стойност (число, дата или текст) или препратка към клетка. Трябва да е в първата колона на диапазона table_array.
Таблица_масив (задължително): Диапазонът от данни или таблицата, където се намират колоната със стойност за търсене и колоната със стойност на резултата.
Col_index_num (задължително): Номерът на колоната, която съдържа върнатите стойности. Започва с 1 от най-лявата колона в масива на таблицата.
Търсене_обхват (по избор): Логическа стойност, която определя дали тази функция VLOOKUP ще върне точно или приблизително съвпадение.
- Приблизително съвпадение – 1 / ВЯРНО / пропуснато (по подразбиране): Ако не бъде намерено точно съвпадение, формулата търси най-близкото съвпадение – най-голямата стойност, която е по-малка от търсената стойност.
Забележете: В този случай трябва да сортирате колоната за справка (най-лявата колона от диапазона от данни) във възходящ ред, в противен случай тя ще върне грешен резултат или резултат с грешка #N/A. - Точно съвпадение – 0 / FALSE: Това се използва за търсене на стойност, точно равна на търсената стойност. Ако не бъде намерено точно съвпадение, ще бъде върната стойността за грешка #N/A.
Функционални бележки:
- Функцията Vlookup търси само стойност отляво надясно.
- Функцията Vlookup извършва търсене без значение на главни и малки букви.
- Ако има множество съвпадащи стойности въз основа на търсената стойност, само първата съвпадаща ще бъде върната с помощта на функцията Vlookup.
Основни примери за VLOOKUP
В този раздел ще говорим за някои формули на Vlookup, които сте използвали често.
2.1.1 Направете VLOOKUP с точно съвпадение
Обикновено, ако търсите точно съвпадение с функцията VLOOKUP, просто трябва да използвате FALSE като последен аргумент.
Например, за да получите съответните резултати по математика въз основа на конкретните ID номера, моля, направете следното:
Моля, копирайте и поставете формулата по-долу в празна клетка (тук избирам G2) и натиснете Въведете ключ за получаване на резултата:
=VLOOKUP(F2,$A$2:$D$7,3,FALSE)
Забележка: В горната формула има четири аргумента:
- F2 е клетката, която съдържа стойността C1005, която искате да търсите;
- A2: D7 е табличният масив, в който извършвате търсенето;
- 3 е номерът на колоната, от която се връща съответстващата ви стойност; (След като функцията открие ID - C1005, тя ще отиде в третата колона на масива от таблици и ще върне стойностите в същия ред като този на ID - C1005. )
- FALSE се отнася до точното съвпадение.
Как работи формулата VLOOKUP?
Първо, той търси ID - C1005 в най-лявата колона на таблицата. Той върви отгоре надолу и намира стойността в клетка A6.
Веднага след като намери стойността, тя отива вдясно в третата колона и извлича стойността в нея.
Така че ще получите резултата, както е показано на екранната снимка по-долу:
Kutools за Excel разполага с над 300 функции, Гарантираме, че това, от което се нуждаете, е само на един клик разстояние...
2.1.2 Направете приблизително съответствие с VLOOKUP
Приблизителното съвпадение е полезно за търсене на стойности между диапазони от данни. Ако точното съвпадение не бъде намерено, приблизителната VLOOKUP ще върне най-голямата стойност, която е по-малка от стойността за търсене.
Например, ако имате следния диапазон от данни и посочените поръчки не са в колоната Поръчки, как да получите най-близката отстъпка в колона B?
Стъпка 1: Приложете формулата VLOOKUP и я попълнете в други клетки
Копирайте и поставете следната формула в клетка, където искате да поставите резултата, и след това плъзнете манипулатора за попълване надолу, за да приложите тази формула към други клетки.
=VLOOKUP(D2,$A$2:$B$9,2,TRUE)
Резултат:
Сега ще получите приблизителните съвпадения въз основа на дадените стойности, вижте екранната снимка:
Забележки:
- В горната формула:
- D2 е стойността, която искате да върне нейната относителна информация;
- A2: B9 е обхватът на данните;
- 2 показва номера на колоната, на който се връща съвпадащата ви стойност;
- TRUE се отнася до приблизителното съвпадение.
- Приблизителното съвпадение ще върне най-голямата стойност, която е по-малка от вашата конкретна стойност за търсене, ако не бъде намерено точно съвпадение.
- За да използвате функцията VLOOKUP, за да получите приблизителна стойност на съвпадението, трябва да сортирате най-лявата колона от диапазона от данни във възходящ ред, в противен случай тя ще върне грешен резултат.
2.2 Направете VLOOKUP, чувствителен към главни и малки букви, в Excel
По подразбиране функцията VLOOKUP извършва търсене без значение за главни и малки букви, което означава, че третира малките и главните букви като идентични. Понякога може да се наложи да извършите търсене в Excel, чувствително към малки и главни букви, нормалната функция VLOOKUP може да не реши проблема. В този случай можете да използвате алтернативни функции като INDEX и MATCH с функцията EXACT или функциите LOOKUP и EXACT.
Например, имам следния диапазон от данни, чиято колона с идентификационен номер съдържа текстов низ с главни или малки букви, сега искам да върна съответния математически резултат на дадения идентификационен номер.
Стъпка 1: Приложете която и да е формула и я попълнете в други клетки
Моля, копирайте и поставете някоя от формулите по-долу в празна клетка, където искате да получите резултата. След това изберете клетката с формула, плъзнете манипулатора за попълване надолу до клетките, където искате да попълните тази формула.
Формула 1: След като поставите формулата, моля, натиснете Ctrl + Shift + Enter ключове.
=INDEX($C$2:$C$10,MATCH(TRUE,EXACT(F2,$A$2:$A$10),0))
Формула 2: След като поставите формулата, моля, натиснете Въведете ключ.
=LOOKUP(2,1/EXACT(F2,$A$2:$A$10),$C$2:$C$10)
Резултат:
Тогава ще получите правилните резултати, от които се нуждаете. Вижте екранна снимка:
Забележки:
- В горната формула:
- A2: A10 е колоната, която съдържа конкретните стойности, в които искате да търсите;
- F2 е търсената стойност;
- C2:C10 е колоната, от която ще бъде върнат резултатът.
- Ако бъдат открити множество съвпадения, тази формула винаги ще връща последното съвпадение.
2.3 VLOOKUP стойности отдясно наляво в Excel
Функцията VLOOKUP винаги търси стойност в най-лявата колона на диапазон от данни и връща съответната стойност от колона вдясно. Ако искате да извършите обратен VLOOKUP, което означава да потърсите конкретна стойност в дясната колона и да върнете съответната й стойност в лявата колона, както е показано на екранната снимка по-долу:
Кликнете, за да разберете подробностите стъпка по стъпка за тази задача...
2.4 VLOOKUP втората, n-тата или последната съответстваща стойност в Excel
Обикновено, ако се намерят множество съответстващи стойности при използване на функцията Vlookup, ще бъде върнат само първият съответстващ запис. В този раздел ще говоря за това как да получите втората, n-тата или последната съответстваща стойност в диапазон от данни.
2.4.1 VLOOKUP и връща втората или n-тата съответстваща стойност
Да предположим, че имате списък с имена в колона A, закупения от тях курс за обучение в колона B. Сега търсите да намерите 2-рия или n-тия курс за обучение, закупен от дадения клиент. Вижте екранна снимка:
Тук функцията VLOOKUP може да не реши директно тази задача. Но можете да използвате функцията INDEX като алтернатива.
Стъпка 1: Приложете и попълнете формулата към други клетки
Например, за да получите втората съвпадаща стойност въз основа на зададените критерии, моля, приложете следната формула в празна клетка и натиснете Ctrl + Shift + Enter ключове заедно, за да получите първия резултат. И след това изберете клетката с формула, плъзнете манипулатора за попълване надолу до клетките, където искате да попълните тази формула.
=INDEX($B$2:$B$14,SMALL(IF(E2=$A$2:$A$14,ROW($A$2:$A$14)-ROW($A$2)+1),2))
Резултат:
Сега всички втори съвпадащи стойности въз основа на дадените имена са показани наведнъж.
Забележка: В горната формула:
- A2: A14 е диапазонът с всички стойности за търсене;
- B2: B14 е диапазонът на съвпадащите стойности, от които искате да се върнете;
- E2 е търсената стойност;
- 2 показва втората съответстваща стойност, която искате да получите, за да върнете третата съответстваща стойност, просто трябва да я промените на 3.
2.4.2 VLOOKUP и връщане на последната съответстваща стойност
Ако искате да направите vlookup и да върнете последната съответстваща стойност, както е показано на екранната снимка по-долу, това VLOOKUP и връщане на последната съответстваща стойност урокът може да ви помогне да получите последната съответстваща стойност в детайли.
2.5 VLOOKUP съпоставяне на стойности между две дадени стойности или дати
Понякога може да искате да търсите стойности между две стойности или дати и да върнете съответните резултати, както е показано на екранната снимка по-долу. В такъв случай можете да използвате функцията LOOKUP вместо функцията VLOOKUP със сортирана таблица.
2.5.1 VLOOKUP съпоставяне на стойности между две дадени стойности или дати с формула
Стъпка 1: Подредете данните и приложете следната формула
Вашата оригинална таблица трябва да бъде сортиран диапазон от данни. След това копирайте или въведете следната формула в празна клетка. След това плъзнете манипулатора за попълване, за да попълните тази формула в други клетки, от които се нуждаете.
=LOOKUP(2,1/($A$2:$A$6<=E2)/($B$2:$B$6>=E2),$C$2:$C$6)
Резултат:
И сега ще получите всички съответстващи записи въз основа на дадената стойност, вижте екранната снимка:
Забележки:
- В горната формула:
- A2: A6 е диапазонът от по-малки стойности;
- B2: B6 е обхватът на по-големите числа;
- E2 е търсената стойност, за която искате да получите съответната стойност;
- C2:C6 е колоната, от която искате да върнете съответната стойност.
- Тази формула също може да се използва за извличане на съвпадащи стойности между две дати, както е показано на екранната снимка по-долу:
2.5.2 VLOOKUP съпоставяне на стойности между две дадени стойности или дати с удобна функция
Ако ви е трудно да запомните и разберете горната формула, тук ще ви представя един лесен инструмент – Kutools за Excel, Със своята ТЪРСЕНЕ между две стойности функция, можете да върнете съответния елемент въз основа на конкретната стойност или дата между две стойности или дати с лекота.
- Кликнете Kutools > Супер ТЪРСЕНЕ > ТЪРСЕНЕ между две стойности за да активирате тази функция.
- След това задайте операциите от диалоговия прозорец въз основа на вашите данни.
2.6 Използване на заместващи символи за частични съвпадения във функцията VLOOKUP
В Excel заместващите знаци могат да се използват във функцията VLOOKUP, която ви позволява да извършите частично съвпадение на стойност за търсене. Например, можете да използвате VLOOKUP, за да върнете съответстваща стойност от таблица въз основа на част от търсена стойност.
Да предположим, че имам набор от данни, както е показано на екранната снимка по-долу, сега искам да извлека резултата въз основа на първото име (не пълното име). Как може да се реши тази задача в Excel?
Стъпка 1: Приложете и попълнете формулата към други клетки
Моля, копирайте или въведете следната формула в празна клетка и след това плъзнете манипулатора за попълване, за да попълните тази формула в други клетки, от които се нуждаете:
=VLOOKUP(E2&"*", $A$2:$C$11, 3, FALSE)
Резултат:
И всички съответстващи резултати бяха върнати, както е показано на екранната снимка по-долу:
Забележка: В горната формула:
- E2&”*” е критериите за частичната математика. Това означава, че търсите всяка стойност, която започва със стойността в клетка E2. (Заместващият знак „*” обозначава който и да е знак или произволни знаци)
- A2:C11 е диапазонът от данни, където искате да търсите съответстващата стойност;
- 3 означава да върне съвпадащата стойност от 3-тата колона на диапазона от данни;
- Фалшив показва точната математика. (Когато използвате заместващи знаци, трябва да зададете последния аргумент във функцията като FALSE или 0, за да активирате режима на точно съвпадение във функцията VLOOKUP.)
- За да намерите и върнете съответстващите стойности, завършващи с конкретна стойност, трябва да поставите заместващия знак "*" пред стойността. Моля, приложете тази формула:
-
=VLOOKUP("*"&E2, $A$2:$C$11, 3, FALSE)
- За да потърсите и върнете съответстващата стойност въз основа на част от текстовия низ, независимо дали посоченият текст е в началото, в края или в средата на текстовия низ, просто трябва да оградите препратката към клетката или текста с две звездички (*) от двете страни. Моля, направете тази формула
-
=VLOOKUP("*"&D2&"*", $A$2:$B$11, 2, FALSE)
2.7 VLOOKUP стойности от друг работен лист
Обикновено може да се наложи да работите с повече от един работен лист, функцията VLOOKUP може да се използва за търсене на данни от друг лист като същите като в един работен лист.
Например, имате два работни листа, както е показано на екранната снимка по-долу, за да търсите и върнете съответните данни от посочения от вас работен лист, моля, изпълнете следните стъпки:
Стъпка 1: Приложете и попълнете формулата към други клетки
Моля, въведете или копирайте формулата по-долу в празна клетка, където искате да получите съответстващите елементи. След това плъзнете манипулатора за запълване надолу към клетките, към които искате да приложите тази формула.
=VLOOKUP(A2,'Data sheet'!$A$2:$C$15,3,0)
Резултат:
Ще получите съответните резултати, както ви е необходимо, вижте екранната снимка:
Забележка: В горната формула:
- A2 представлява търсената стойност;
- „Лист с данни“!A2:C15 указва да се търсят стойностите от диапазона A2:C15 в работния лист с име Лист с данни; (Ако името на листа съдържа интервал или препинателни знаци, трябва да оградите името на листа в единични кавички, в противен случай можете директно да използвате името на листа като =VLOOKUP(A2,Лист с данни!$A$2:$C$15,3,0) ).
- 3 е номерът на колоната, която съдържа съответстващи данни, от които искате да се върнете;
- 0 означава да извършите точно съвпадение.
2.8 VLOOKUP стойности от друга работна книга
Този раздел ще говори за търсене и връщане на съответстващите стойности от различна работна книга с помощта на функцията VLOOKUP.
Например, да приемем, че имате две работни книги. Първата работна книга съдържа списък с продукти и съответните им разходи. Във втората работна книга искате да извлечете съответната цена за всеки продуктов артикул, както е показано на екранната снимка по-долу.
Стъпка 1: Нанесете и попълнете формулата
Отворете и двете работни книги, които искате да използвате, след това приложете следната формула в клетка, където искате да поставите резултата във втората работна книга. След това плъзнете и копирайте тази формула в други клетки, от които се нуждаете
=VLOOKUP(B2,'[Product list.xlsx]Sheet1'!$A$2:$B$6,2,0)
Резултат:
Забележки:
- В горната формула:
- B2 представлява търсената стойност;
- '[Продуктов списък.xlsx]Лист1'!A2:B6 показва търсене от диапазона A2:B6 на листа с име Sheet1 от работната книга Product list; (Препратката към работната книга е оградена в квадратни скоби, а цялата работна книга + лист е оградена в единични кавички.)
- 2 е номерът на колоната, която съдържа съответстващи данни, от които искате да се върнете;
- 0 показва да се върне точно съвпадение.
- Ако работната книга за търсене е затворена, пълният път на файла за работната книга за търсене ще бъде показан във формулата, както е показана следната екранна снимка:
2.9 Връщане на празен или конкретен текст вместо грешка 0 или #N/A
Обикновено, когато използвате функцията VLOOKUP, за да върнете съответна стойност, ако съответстващата клетка е празна, тя ще върне 0. И ако съвпадащата стойност не бъде намерена, ще получите стойност за грешка #N/A, както е показано в екранна снимка по-долу. Ако искате да покажете празна клетка или конкретна стойност вместо 0 или #N/A, това VLOOKUP за връщане на празна или конкретна стойност вместо 0 или N/A урокът може да ви направи услуга.
3.1 Двупосочно търсене (VLOOKUP в ред и колона)
Понякога може да се наложи да извършите двуизмерно търсене, което означава да търсите стойност както в ред, така и в колона едновременно. Например, ако имате следния диапазон от данни и може да се наложи да получите стойността за определен продукт през определено тримесечие. Този раздел ще въведе формула за справяне с тази работа в Excel.
В Excel можете да използвате комбинация от функции VLOOKUP и MATCH, за да направите двупосочно търсене.
Моля, приложете следната формула в празна клетка и след това натиснете Въведете ключ за получаване на резултата.
=VLOOKUP(G2, $A$2:$E$7, MATCH(H1, $A$2:$E$2, 0), FALSE)
Забележка: В горната формула:
- G2 е търсената стойност в колоната, въз основа на която искате да получите съответната стойност;
- A2:E7 е таблицата с данни, от която ще търсите;
- H1 е търсената стойност в реда, въз основа на която искате да получите съответната стойност;
- A2:E2 е клетките на заглавките на колоните;
- FALSE показва за получаване на точно съвпадение.
3.2 VLOOKUP съответстваща стойност въз основа на два или повече критерия
За вас е лесно да търсите съответстващата стойност въз основа на един критерий, но ако имате два или повече критерия, какво можете да направите?
3.2.1 VLOOKUP съответстваща стойност въз основа на два или повече критерия с формули
В този случай функциите LOOKUP или MATCH и INDEX в Excel могат да ви помогнат да решите тази задача бързо и лесно.
Например, имам таблицата с данни по-долу, за да върна съответстващата цена въз основа на конкретния продукт и размер, следните формули може да ви помогнат.
Стъпка 1: Приложете всяка формула
Формула 1: След като поставите формулата, моля, натиснете Въведете ключ.
=LOOKUP(2,1/($A$2:$A$12=G1)/($B$2:$B$12=G2),($D$2:$D$12))
Формула 2: След като поставите формулата, моля, натиснете Ctrl + Shift + Enter ключове.
=INDEX($D$2:$D$12,MATCH(1,($A$2:$A$12=G1)*($B$2:$B$12=G2),0))
Резултат:
Забележки:
- В горните формули:
- A2:A12=G1 означава търсене по критериите на G1 в диапазон A2:A12;
- B2:B12=G2 означава търсене по критериите на G2 в диапазон B2:B12;
- D2: D12 is диапазонът, от който искате да върнете съответната стойност.
- Ако имате повече от два критерия, просто трябва да обедините другите критерии във формулата, като например:
=LOOKUP(2,1/($A$2:$A$12=G1)/($B$2:$B$12=G2)/($C$2:$C$12=G3),($D$2:$D$12))
=INDEX($D$2:$D$12,MATCH(1,($A$2:$A$12=G1)*($B$2:$B$12=G2)*($C$2:$C$12=G3),0))
3.2.2 VLOOKUP съответстваща стойност въз основа на два или повече критерия с интелигентна функция
Може да е предизвикателство да запомните горните сложни формули, които трябва да се прилагат многократно, което може да забави ефективността на работата ви. Въпреки това, Kutools за Excel предлага Търсене на множество условия функция, която ви позволява да върнете съответния резултат въз основа на едно или повече условия само с няколко кликвания.
- Кликнете Kutools > Супер ТЪРСЕНЕ > Търсене на множество условия за да активирате тази функция.
- След това задайте операциите от диалоговия прозорец въз основа на вашите данни.
3.3 VLOOKUP за връщане на множество стойности с един или повече критерии
В Excel функцията VLOOKUP търси стойност и връща първата съвпадаща стойност само ако има няколко намерени съответстващи стойности. Понякога може да искате да върнете всички съответстващи стойности в ред, колона или в една клетка. Този раздел ще говори за това как да върнете множество съвпадащи стойности с едно или повече условия в работна книга.
3.3.1 VLOOKUP Всички съвпадащи стойности въз основа на едно или повече условия хоризонтално
Ако приемем, че имате таблица с данни, която съдържа държава, град и имена в диапазона A1:C14, и сега искате да върнете всички имена хоризонтално, които са от „САЩ“, както е показано на екранната снимка по-долу. За да разрешите тази задача, моля щракнете тук, за да получите резултата стъпка по стъпка.
3.3.2 VLOOKUP Вертикално всички съответстващи стойности въз основа на едно или повече условия
Ако трябва да направите Vlookup и да върнете всички съответстващи стойности вертикално въз основа на конкретни критерии, както е показано на екранната снимка по-долу, моля, щракнете тук, за да получите решението в подробности.
3.3.3 VLOOKUP Всички съответстващи стойности въз основа на едно или повече условия в една клетка
Ако искате да направите Vlookup и да върнете множество съответстващи стойности в една клетка с определен разделител, новата функция на TEXTJOIN може да ви помогне да разрешите тази задача бързо и лесно.
Забележки:
- Функцията TEXTJOIN е налична само в Excel 2019, Excel 365 и по-нови версии.
- Ако използвате Excel 2016 и по-стари версии, моля, използвайте дефинираната от потребителя функция от статията по-долу:
- Vlookup за връщане на множество стойности в една клетка в Excel
3.4 VLOOKUP за връщане на целия ред от съответстваща клетка
В този раздел ще говоря за това как да извлечете целия ред със съвпадаща стойност с помощта на функцията VLOOKUP.
Стъпка 1: Приложете и попълнете следната формула
Моля, копирайте или въведете формулата по-долу в празна клетка, където искате да изведете резултата, и натиснете Въведете ключ, за да получите първата стойност. След това плъзнете клетката с формула надясно, докато се покажат данните на целия ред.
=VLOOKUP($F$2,$A$1:$D$12,COLUMN(A1),FALSE)
Резултат:
Сега можете да видите, че се връщат всички данни от реда. Вижте екранна снимка:
Забележка: в горната формула:
- F2 е търсената стойност, на базата на която искате да върнете целия ред;
- A1: D12 е диапазонът от данни, от който искате да търсите търсената стойност;
- A1 показва номера на първата колона във вашия диапазон от данни;
- FALSE показва точно търсене.
Съвет:
- Ако бъдат намерени множество редове въз основа на съвпадащата стойност, за да върнете всички съответстващи редове, моля, приложете формулата по-долу, след което натиснете Ctrl + Shift + Enter ключове заедно, за да получите първия резултат. След това плъзнете манипулатора за запълване надясно. И след това продължете да плъзгате манипулатора за запълване надолу през клетките, за да получите всички съвпадащи редове. Вижте демонстрацията по-долу:
=IFERROR(INDEX(A:A,SMALL(IF(ISNUMBER(SEARCH($F$2,$A$2:$A$12)),ROW($A$2:$A$12),""),ROW()-1)),"")
3.5 Вложен VLOOKUP в Excel
Понякога може да се наложи да търсите стойности, които са свързани помежду си в множество таблици. В този случай можете да вложите няколко функции VLOOKUP заедно, за да получите крайната стойност.
Например имам работен лист, който съдържа две отделни таблици. Първата таблица изброява всички имена на продукти заедно със съответния им продавач. Втората таблица изброява общите продажби на всеки продавач. Сега, ако искате да намерите продажбите на всеки продукт, както е показано на следващата екранна снимка, можете да вложите функцията VLOOKUP, за да изпълните тази задача.
Общата формула за вложена функция VLOOKUP е:
Забележка:
- търсена_стойност е стойността, която търсите;
- Таблица_масив1, Таблица_масив2 са таблиците, в които съществуват търсената стойност и върнатата стойност;
- номер_индекс_колона1 посочва номера на колоната в първата таблица за намиране на междинните общи данни;
- номер_индекс_колона2 указва номера на колоната във втората таблица, която искате да върне съвпадащата стойност;
- 0 се използва за точно съвпадение.
Стъпка 1: Приложете и попълнете следната формула
Моля, приложете следната формула в празна клетка и след това плъзнете манипулатора за запълване надолу към клетките, към които искате да приложите тази формула.
=VLOOKUP(VLOOKUP(G3,$A$3:$B$7,2,0),$D$3:$E$7,2,0)
Резултат:
Сега ще получите резултата, както е показано на следната екранна снимка:
Забележка: в горната формула:
- G3 съдържа стойността, която търсите;
- A3: B7, D3: E7 са диапазоните на таблицата, в които съществуват стойността за търсене и върнатата стойност;
- 2 е номерът на колоната в диапазона, от който да се върне съответстващата стойност.
- 0 показва VLOOKUP точна математика.
3.6 Проверете дали съществува стойност въз основа на данни от списък в друга колона
Функцията VLOOKUP също може да ви помогне да проверите дали съществуват стойности въз основа на списъка с данни в друга колона. Например, ако искате да потърсите имената в колона C и просто да върнете Да или Не, ако името е намерено или не в колона A, както е показано на екранната снимка по-долу.
Стъпка 1: Приложете и попълнете следната формула
Моля, приложете следната формула в празна клетка, след което плъзнете манипулатора за попълване надолу към клетките, които искате да попълните с тази формула.
=IF(ISNA(VLOOKUP(C2,$A$2:$A$10,1,FALSE)), "No", "Yes")
Резултат:
И ще получите желания резултат, вижте екранната снимка:
Забележка: в горната формула:
- C2 е търсената стойност, която искате да проверите;
- A2: A10 е списъкът с обхват, откъдето да проверите дали стойностите за търсене ще бъдат намерени или не;
- FALSE показва за получаване на точно съвпадение.
3.7 VLOOKUP и сумиране на всички съответстващи стойности в редове или колони
Когато работите с числени данни, може да се наложи да извлечете съответстващи стойности от таблица и да сумирате числата в няколко колони или редове. Този раздел ще представи някои формули, които могат да ви помогнат да изпълните тази задача.
3.7.1 VLOOKUP и сумиране на всички съответстващи стойности в ред или няколко реда
Да предположим, че имате продуктов списък с продажби за няколко месеца, както е показано на следващата екранна снимка. Сега трябва да сумирате всички поръчки през всички месеци въз основа на дадените продукти.
Стъпка 1: Приложете и попълнете следната формула
Моля, копирайте или въведете следната формула в празна клетка и след това натиснете Ctrl + Shift + Enter ключове заедно, за да получите първия резултат. След това плъзнете манипулатора за попълване надолу, за да копирате тази формула в други клетки, от които се нуждаете.
=SUM(VLOOKUP(H2, $A$2:$F$9, {2,3,4,5,6}, FALSE))
Резултат:
Всички стойности в реда на първата съответстваща стойност са сумирани заедно, вижте екранната снимка:
Забележка: в горната формула:
- H2 е клетката, съдържаща стойността, която търсите;
- A2:F9 е диапазонът от данни (без заглавки на колони), който включва търсената стойност и съответстващите стойности;
- 2,3,4,5,6 {} са номерата на колони, използвани за изчисляване на общата сума на диапазона;
- FALSE показва точно съвпадение.
Съвет: Ако искате да сумирате всички съвпадения в няколко реда, моля, използвайте следната формула:
-
=SUMPRODUCT(($A$2:$A$9=H2)*$B$2:$F$9)
3.7.2 VLOOKUP и сумиране на всички съответстващи стойности в колона или множество колони
Ако искате да сумирате общата стойност за конкретните месеци, както е показано на екранната снимка по-долу. Нормалната функция VLOOKUP може да не ви помогне, тук трябва да приложите функциите SUM, INDEX и MATCH заедно, за да създадете формула.
Стъпка 1: Приложете следната формула
Приложете формулата по-долу в празна клетка и след това плъзнете манипулатора за запълване надолу, за да копирате тази формула в други клетки.
=SUM(INDEX($B$2:$F$9,0,MATCH(H2,$B$1:$F$1,0)))
Резултат:
Сега първите съответстващи стойности въз основа на конкретния месец в колона са сумирани заедно, вижте екранната снимка:
Забележка: в горната формула:
- H2 е клетката, съдържаща стойността, която търсите;
- B1: F1 е заглавките на колоните, които съдържат търсената стойност;
- B2: F9 е диапазонът от данни, който съдържа числовите стойности, които искате да сумирате.
Съвет: За VLOOKUP и сумиране на всички съответстващи стойности в множество колони, трябва да използвате следната формула:
-
=SUMPRODUCT($B$2:$F$9*(($B$1:$F$1)=H2))
3.7.3 VLOOKUP и сумиране на първите съответстващи или всички съвпадащи стойности с мощна функция
Може би горните формули са трудни за запомняне, в този случай ще ви препоръчам една мощна функция - Търсене и сума of Kutools за Excel, с тази функция можете да Vlookup и сумирате първите съвпадащи или всички съвпадащи стойности в редове или колони възможно най-лесно.
- Кликнете Kutools > Супер ТЪРСЕНЕ > ТЪРСЕНЕ и Сумиране за да активирате тази функция.
- След това задайте операциите от диалоговия прозорец според вашите нужди.
3.7.4 VLOOKUP и сумиране на всички съответстващи стойности както в редове, така и в колони
Ако искате да сумирате стойностите, когато трябва да съпоставите както колона, така и ред, например, за да получите общата стойност на продукта Пуловер през месец март, както е показано на екранната снимка по-долу.
Тук можете да използвате функцията SUMPRODCT, за да изпълните тази задача.
Моля, приложете следната формула в клетка и след това натиснете Въведете ключ, за да получите резултата, вижте екранната снимка:
=SUMPRODUCT(($B$2:$F$9)*($B$1:$F$1=I2)*($A$2:$A$9=H2))
Забележка: В горната формула:
- B2: F9 е диапазонът от данни, съдържащ числените стойности, които искате да сумирате;
- B1: F1 е заглавките на колоните, съдържащи търсената стойност, въз основа на която искате да сумирате;
- I2 е стойността за търсене в заглавките на колоните, които търсите;
- A2: A9 е заглавките на редовете, съдържащи търсената стойност, въз основа на която искате да сумирате;
- H2 е търсената стойност в заглавките на редовете, които търсите.
3.8 VLOOKUP за обединяване на две таблици въз основа на ключови колони
В ежедневната си работа, когато анализирате данни, може да се наложи да съберете цялата необходима информация в една таблица въз основа на една или повече ключови колони. За да изпълните тази задача, можете да използвате функциите INDEX и MATCH вместо функцията VLOOKUP.
3.8.1 VLOOKUP за обединяване на две таблици въз основа на една ключова колона
Например, имате две таблици, първата таблица, съдържаща данните за продуктите и имената, а втората таблица съдържа данните за продуктите и поръчките, сега искате да комбинирате тези две таблици, като съпоставите общата продуктова колона в една таблица.
Стъпка 1: Приложете и попълнете следната формула
Моля, приложете следната формула в празна клетка. След това плъзнете манипулатора за запълване надолу към клетките, към които искате да приложите тази формула
=INDEX($F$2:$F$8, MATCH($A2, $E$2:$E$8, 0))
Резултат:
Сега ще получите обединена таблица с колоната за ред, присъединяваща се към първата таблица въз основа на данните от ключовата колона.
Забележка: В горната формула:
- A2 е стойността за търсене, която търсите;
- F2: F8 е диапазон от данни, които искате да върнете съвпадащите стойности;
- E2: E8 е диапазон за търсене, който съдържа стойността за търсене.
3.8.2 VLOOKUP за сливане на две таблици въз основа на множество ключови колони
Ако двете таблици, които искате да обедините, имат множество ключови колони, за да обедините таблиците въз основа на тези общи колони, моля, следвайте стъпките по-долу.
Общата формула е:
Забележка:
- таблица за справки диапазонът от данни съдържа данните за търсене и съвпадащите записи;
- търсена_стойност1 е първият критерий, който търсите;
- обхват_за_търсене1 дали списъкът с данни съдържа първия критерий;
- търсена_стойност2 е вторият критерий, който търсите;
- обхват_за_търсене2 дали списъкът с данни съдържа втория критерий;
- връщане_номер_на_колона указва номера на колоната в lookup_table, който искате да върне съответстващата стойност.
Стъпка 1: Приложете следната формула
Моля, приложете формулата по-долу в празна клетка, където искате да поставите резултата, и след това натиснете Ctrl + Shift + Enter ключове заедно, за да получите първата съответстваща стойност, вижте екранната снимка:
=INDEX($E$2:$G$9, MATCH(1, ($A2=$E$2:$E$9) * ($B2=$F$2:$F$9), 0), 3)
Стъпка 2: Попълнете формулата в други клетки
След това изберете първата клетка с формула и плъзнете манипулатора за попълване, за да копирате тази формула в други клетки, както ви е необходимо:
3.9 VLOOKUP съпоставяне на стойности в множество работни листове
Трябвало ли ви е някога да извършите VLOOKUP в множество работни листове в Excel? Например, ако имате три работни листа с диапазони от данни и искате да извлечете конкретни стойности въз основа на критерии от тези листове, можете да следвате урока стъпка по стъпка Стойности на VLOOKUP в множество работни листове за изпълнение на тази задача.
VLOOKUP съответстващите стойности запазват форматирането на клетката
Когато търсите съответстващи стойности, оригиналното форматиране на клетката, като цвят на шрифта, цвят на фона, формат на данните и т.н., няма да бъде запазено. За да запазите форматирането на клетката или данните, този раздел ще представи някои трикове за решаване на задачи.
4.1 VLOOKUP съответстваща стойност и запазване на цвета на клетката, форматирането на шрифта
Както всички знаем, нормалната функция VLOOKUP може да извлече съвпадащата стойност само от друг диапазон от данни. Възможно е обаче да има случаи, в които бихте искали да получите съответната стойност заедно с форматирането на клетката, като цвят на запълване, цвят на шрифта и стил на шрифта. В този раздел ще обсъдим как да извлечем съвпадащи стойности, като същевременно запазим форматирането на източника в Excel.
Моля, изпълнете следните стъпки, за да потърсите и върнете съответната стойност заедно с форматирането на клетката:
Стъпка 1: Копирайте код 1 в модула Sheet Code
- В работния лист съдържа данните, които искате да VLOOKUP, щракнете с десния бутон върху раздела на листа и изберете Преглед на кода от контекстното меню. Вижте екранна снимка:
- В отворените Microsoft Visual Basic за приложения прозорец, моля, копирайте кода на VBA по-долу в прозореца на кода.
- VBA код 1: VLOOKUP за получаване на форматиране на клетка заедно със стойност за търсене
-
Sub Worksheet_Change(ByVal Target As Range) 'Updateby Extendoffice Dim I As Long Dim xKeys As Long Dim xDicStr As String On Error Resume Next Application.ScreenUpdating = False xKeys = UBound(xDic.Keys) If xKeys >= 0 Then For I = 0 To UBound(xDic.Keys) xDicStr = xDic.Items(I) If xDicStr <> "" Then Range(xDic.Keys(I)).Interior.Color = _ Range(xDic.Items(I)).Interior.Color Range(xDic.Keys(I)).Font.FontStyle = _ Range(xDic.Items(I)).Font.FontStyle Range(xDic.Keys(I)).Font.Size = _ Range(xDic.Items(I)).Font.Size Range(xDic.Keys(I)).Font.Color = _ Range(xDic.Items(I)).Font.Color Range(xDic.Keys(I)).Font.Name = _ Range(xDic.Items(I)).Font.Name Range(xDic.Keys(I)).Font.Underline = _ Range(xDic.Items(I)).Font.Underline Else Range(xDic.Keys(I)).Interior.Color = xlNone End If Next Set xDic = Nothing End If Application.ScreenUpdating = True End Sub
Стъпка 2: Копирайте код 2 в прозореца на модула
- И все пак в Microsoft Visual Basic за приложения прозорец, кликнете Поставете > Модулии след това копирайте долния VBA код 2 в прозореца на модула.
- VBA код 2: VLOOKUP за получаване на форматиране на клетка заедно със стойност за търсене
-
Public xDic As New Dictionary Function LookupKeepFormat (ByRef FndValue, ByRef LookupRng As Range, ByRef xCol As Long) Dim xFindCell As Range On Error Resume Next Set xFindCell = LookupRng.Find(FndValue, , xlValues, xlWhole) If xFindCell Is Nothing Then LookupKeepFormat = "" xDic.Add Application.Caller.Address, "" Else LookupKeepFormat = xFindCell.Offset(0, xCol - 1).Value xDic.Add Application.Caller.Address, xFindCell.Offset(0, xCol - 1).Address End If End Function
Стъпка 3: Изберете опцията за VBAproject
- След като поставите горните кодове, щракнете Инструменти > Препратки в Microsoft Visual Basic за приложения прозорец. След това проверете Microsoft Scripting Runtime в квадратчето Препратки – VBAProject диалогов прозорец. Вижте екранни снимки:
- След това кликнете върху OK за да затворите диалоговия прозорец, след което запазете и затворете прозореца с кода.
Стъпка 4: Въведете формулата за получаване на резултата
- Сега се върнете към работния лист, приложете следната формула. И след това плъзнете манипулатора за попълване надолу, за да получите всички резултати заедно с тяхното форматиране. Вижте екранна снимка:
=LookupKeepFormat(E2,$A$1:$C$10,3)
Забележка: в горната формула:
- E2 е стойността, която ще търсите;
- A1:C10 е диапазонът на таблицата;
- 3 е номерът на колоната на таблицата, от която искате да извлечете съответстващата стойност.
4.2 Запазете формата на датата от върната стойност от VLOOKUP
Когато използвате функцията VLOOKUP за търсене и връщане на стойност с формат на датата, върнатият резултат може да се покаже като число. За да запазите формата на датата във върнатия резултат, трябва да затворите функцията VLOOKUP във функцията TEXT.
Стъпка 1: Приложете и попълнете следната формула
Моля, приложете формулата по-долу в празна клетка. След това плъзнете манипулатора за попълване, за да копирате тази формула в други клетки.
=TEXT(VLOOKUP(E2,$A$2:$C$9,3,FALSE),"mm/dd/yyyy")
Резултат:
Всички съответстващи дати са върнати, както е показано на екранната снимка по-долу:
Забележка: В горната формула:
- E2 е търсената стойност;
- A2:C9 е обхватът на търсене;
- 3 е номерът на колоната, на която искате да бъде върната стойността;
- FALSE показва за получаване на точно съвпадение;
- мм / дд / гггг е форматът на датата, който искате да запазите.
4.3 Върнете коментар на клетка от VLOOKUP
Трябвало ли ви е някога да извлечете както съвпадащите клетъчни данни, така и свързания с тях коментар с помощта на VLOOKUP в Excel, както е показано на следната екранна снимка? Ако е така, дефинираната от потребителя функция, предоставена по-долу, може да ви помогне да изпълните тази задача.
Стъпка 1: Копирайте кода в модул
- Задръжте надолу ALT + F11 за да отворите Microsoft Visual Basic за приложения прозорец.
- Кликнете Поставете > Модули, след това копирайте и поставете следния код в прозореца на модула.
VBA код: Vlookup и връщане на съответстваща стойност с коментар на клетка:Function VlookupComment(LookVal As Variant, FTable As Range, FColumn As Long, FType As Long) As Variant 'Updateby Extendoffice Application.Volatile Dim xRet As Variant 'could be an error Dim xCell As Range xRet = Application.Match(LookVal, FTable.Columns(1), FType) If IsError(xRet) Then VlookupComment = "Not Found" Else Set xCell = FTable.Columns(FColumn).Cells(1)(xRet) VlookupComment = xCell.Value With Application.Caller If Not .Comment Is Nothing Then .Comment.Delete End If If Not xCell.Comment Is Nothing Then .AddComment xCell.Comment.Text End If End With End If End Function
- След това запазете и затворете прозореца с кода.
Стъпка 2: Въведете формулата, за да получите резултата
- Сега въведете следната формула и плъзнете манипулатора за попълване, за да копирате тази формула в други клетки. Той ще върне съвпадащите стойности и коментари едновременно, вижте екранната снимка:
=vlookupcomment(D2,$A$2:$B$9,2,FALSE)
Забележка: В горната формула:
- D2 е търсената стойност, която искате да върне съответната стойност;
- A2: B9 е таблицата с данни, която искате да използвате;
- 2 е номерът на колоната, която съдържа съответстващата стойност, която искате да върнете;
- FALSE показва за получаване на точно съвпадение.
4.4 VLOOKUP числа, съхранени като текст
Например, имам набор от данни, където идентификационният номер в оригиналната таблица е в числов формат и идентификационният номер в клетките за справка се съхранява като текст, може да срещнете грешка #N/A, когато използвате нормалната функция VLOOKUP. В този случай, за да извлечете правилната информация, можете да обвиете функциите TEXT и VALUE във функцията VLOOKUP. По-долу е формулата за постигане на това:
Стъпка 1: Приложете и попълнете следната формула
Моля, приложете следната формула в празна клетка и след това плъзнете манипулатора за запълване надолу, за да копирате тази формула.
=IFERROR(VLOOKUP(VALUE(D2),$A$2:$B$8,2,0),VLOOKUP(TEXT(D2,0),$A$2:$B$8,2,0))
Резултат:
Сега ще получите правилните резултати, както е показано на екранната снимка по-долу:
Забележки:
- В горната формула:
- D2 е търсената стойност, която искате да върне съответната стойност;
- A2: B8 е таблицата с данни, която искате да използвате;
- 2 е номерът на колоната, която съдържа съответстващата стойност, която искате да върнете;
- 0 показва за получаване на точно съвпадение.
- Тази формула също работи добре, ако не сте сигурни къде имате числа и къде имате текст.
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
Съдържание
- 1. Въвеждане на функцията VLOOKUP
- 2. Основни примери за VLOOKUP
- 2.1 Точен и приблизителен Vlookup
- Точно съвпадение
- Приблизително съвпадение
- 2.2 Чувстващ малки и големи букви Vlookup
- 2.3 Vlookup от дясно на ляво
- 2.4 Vlookup втори, n-ти или последен съответстваща стойност
- Втората или n-та съответстваща стойност
- Последната съответстваща стойност
- 2.5 Vlookup между две стойности
- С помощта на формула
- С помощта на удобна функция - Kutools
- 2.6 Vlookup за частично съвпадение
- 2.7 Vlookup от друг работен лист
- 2.8 Vlookup от друга работна книга
- 2.9 Коригирайте стойността на грешка 0 или #N/A във Vlookup
- 3. Разширени примери за VLOOKUP
- 3.1 Двупосочно търсене
- 3.2 Vlookup въз основа на повече критерии
- Чрез използване на формули
- Чрез използване на интелигентна функция - Kutools
- 3.3 Vlookup множество съвпадащи стойности
- Връща стойности хоризонтално
- Връща стойности вертикално
- Връщане на стойности в една клетка
- 3.4 Vlookup целия ред
- 3.5 Вложено Vlookup
- 3.6 Проверете дали съществува стойност
- 3.7 Vlookup и сума
- На редове
- В колони
- С мощна функция - Kutools
- Както в редове, така и в колони
- 3.8 Vlookup за обединяване на две таблици
- По една ключова колона
- Чрез множество ключови колони
- 3.9 Vlookup в множество работни листове
- 4. VLOOKUP и запазете форматирането на клетката
- 4.1 Запазете цвета и форматирането на шрифта
- 4.2 Запазете формата на датата
- 4.3 Запазете коментара на клетката
- 4.4 Числата се съхраняват като текст
- Най-добрите инструменти за производителност в офиса
- Коментари