Как да използвате формулата VLOOKUP в Excel с множество листове

  • Споделя Това
Hugh West

Днес ще покажем как да използвате формулата VLOOKUP Всъщност една от най-важните и широко използвани функции на Excel е функцията VLOOKUP . Освен това можем да използваме функцията VBA VLOOKUP за търсене на конкретни данни в един работен лист или в диапазон от работни листове.

Също така днес ще покажем как можем да използваме Формули VLOOKUP за да потърсите някои конкретни данни в множество работни листове в Excel.

Изтегляне на работна тетрадка за практика

Можете да изтеглите работната тетрадка за упражнения от тук:

Формула VLOOKUP с множество листове.xlsx Mock Test Marks.xlsx

Въведение във функцията VLOOKUP на Excel

=VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup])

  • Тази функция приема диапазон от клетки, наречен table_array като аргумент.
  • След това търси конкретна стойност, наречена lookup_value в първи колона на table_array .
  • Освен това търси приблизително съвпадение, ако [range_lookup] аргументът е TRUE , в противен случай се търси точно съвпадение. Тук по подразбиране е TRUE .
  • Ако намери съвпадение на lookup_value в първи колона на table_array , се премества няколко стъпки надясно към определена колона (col_index_number).

След това връща стойността от тази клетка.

Освен това сме приложили пример за това. VLOOKUP Сега погледнете следната фигура.

Разбивка на формулата

Тук се използва формулата VLOOKUP(G8,B4:D15,3,FALSE) търсеше стойността на G8 клетка " Анджела " в първи колона на таблицата: B4:D15 .

След като намери един, той се премести направо в 3. колона (Както col_index_number е 3 .)

След това върна стойността оттам, е 322 .

5 начина за използване на формулата VLOOKUP в Excel с множество листове

Тук имаме работна тетрадка с оценките от писмените изпити и изпитите на випуска на някои кандидати в рамките на три седмици в различни работни листове. освен това името на първия е Седмица 1 .

След това се въвежда името на 2. работният лист е Седмица 2 .

И накрая, името на 3. работен лист, съдържащ знаци за Marco Group е Седмица 3 .

Сега нашата цел е да извлечем техните знаци от три работни листове към новия работен лист, като използвате VLOOKUP функция на Excel.

1. Формула VLOOKUP за търсене във всеки работен лист поотделно

Тук имаме нов работен лист, наречен "Само VLOOKUP" с имената на всички кандидати, подредени по азбучен ред (от А до Я) . Сега ще използваме VLOOKUP формула за търсене от няколко листа в Excel.

Най-напред ще потърсим в три работни листове поотделно.

Тук ще търсим lookup_value от един работен лист в диапазон от клетки на друг работен лист.

Синтаксисът на формулата ще бъде:

=VLOOKUP(lookup_value,'Sheet_name'!table_array, col_index_number,FALSE)

  • Търсене на Маркс в Написано на на Кандидати от седмица 1 , въведете тази формула в C5 клетката на новия работен лист:
=VLOOKUP(B5,'Week 1'!$B$5:$D$10,2,FALSE)

  • Впоследствие натиснете ВЪВЕДЕТЕ .

Това показва #N/A! Грешка, защото стойността на клетката B5 в "Само VLOOKUP" лист, Алекс Хейлс , не се намира в обхвата B5:D10 на листа "Седмица 1 " .

  • След това плъзнете Дръжка за пълнене икона.

В резултат на това виждаме оценките само на онези кандидати, които са се явили на Седмица 1 се показват, а останалите показват грешки.

  • По същия начин, за да определите оценката за вива, запишете следната формула в D5 клетка.
=VLOOKUP(B5,'Week 1'!$B$5:$D$10,3,FALSE)

  • След това натиснете ВЪВЕДЕТЕ .

  • След това плъзнете Дръжка за пълнене за да приложите формулата в останалите клетки.

Така че виждаме оценките само на онези кандидати, които са се явили на Седмица 1 се показват, а останалите показват грешки.

Освен това можем да изпълним подобна задача за Седмица 2 и Седмица 3 но това няма да задоволи нуждите ни. Затова трябва да потърсим по-добър подход.

Известие: Тук сме използвали относителна референция на клетката за lookup_value (B5) , но абсолютна референция към клетката за table_array ($B$5:$D$10) . Защото искаме lookup_value да се увеличават едно по едно при плъзгане на Дръжка за пълнене икона, но table_array остава постоянен.

Прочетете още: Защо VLOOKUP връща #N/A, когато има съвпадение? (5 причини и решения)

2. Търсене в няколко листа с функцията IFERROR в Excel

Този път първо ще потърсим кандидат в първия работен лист ( Седмица 1 ).

След това, ако не го намерим в първия работен лист, ще го потърсим във втория работен лист ( Седмица 2 ).

И ако все още не сме го открили, ще потърсим в третия работен лист ( Седмица 3 ).

Ако не го открием все още, ще решим, че той/тя е бил/а отсъства от изпита.

В предишния раздел видяхме, VLOOKUP връща N/A! грешка, ако не намери съответствие с lookup_value в table_array .

Затова този път ще свием гнездо VLOOKUP функции в рамките на на Функция IFERROR за обработка на грешките.

Следователно синтаксисът на формулата ще бъде:

=IFERROR(VLOOKUP(lookup_value, "Sheet1_Name"!table_array,col_index_number,FALSE),IFERROR(VLOOKUP(lookup_value, "Sheet2_Name"!table_array,col_index_number,FALSE),IFERROR(VLOOKUP(lookup_value, "Sheet3_Name"!table_array,col_index_number,FALSE), "Отсъстващ")))

  • Сега въведете следната формула в C5 клетка на "VLOOKUP & IFERROR" лист.
=IFERROR(VLOOKUP(B5,'Week 1'!$B$5:$D$10,2,FALSE),IFERROR(VLOOKUP(B5,'Week 2'!$B$5:$D$10,2,FALSE),IFERROR(VLOOKUP(B5,'Week 3'!$B$5:$D$10,2,FALSE), "Отсъстващ"))

  • След това натиснете ВЪВЕДЕТЕ .

В резултат на това ще видите писмените знаци на Алекс Хейлс .

След това ще открием оценките на Алекс Хейлс.

  • Затова запишете следната формула в D5 клетка.
=IFERROR(VLOOKUP(B5,'Week 1'!$B$5:$D$10,3,FALSE),IFERROR(VLOOKUP(B5,'Week 2'!$B$5:$D$10,3,FALSE),IFERROR(VLOOKUP(B5,'Week 3'!$B$5:$D$10,3,FALSE), "Отсъстващ"))

  • След това натиснете ВЪВЕДЕТЕ .

  • След това изберете двете клетки C5 и D5 .
  • Следователно плъзнете Дръжка за пълнене икона към Автоматично попълване съответните данни в останалите клетки C6:D24 .

Накрая ще видите оценките от писмения изпит и от випуска за всички кандидати.

Прочетете още: Пример за VLOOKUP между два листа в Excel

Подобни четива

  • VLOOKUP не работи (8 причини & решения)
  • Excel LOOKUP срещу VLOOKUP: с 3 примера
  • Какво е масив от таблици във VLOOKUP? (Обяснено с примери)
  • Как да използвате вложен VLOOKUP в Excel (3 критерия)
  • Използване на VLOOKUP с множество критерии в Excel (6 метода + алтернативи)

3. Използване на комбинирана формула за търсене в няколко листа в Excel

Всъщност вложените IFERROR и VLOOKUP Формулата, която използвахме по-рано, е полезна, но все още е малко сложна за използване. По принцип има голяма вероятност да се объркате и да генерирате грешки, ако има много работни листове.

Така ще създадем друга формула, като използваме ИНДИРЕКТЕН , INDEX , MATCH , и COUNTIF функции, които изглеждат още по-сложни, но са сравнително по-лесни за прилагане, когато има много работни листове.

  • Преди всичко създайте хоризонтален масив с имената на всички работни листове. Тук сме създали такъв в F5:H5 клетки.

  • След това въведете следната формула в C5 клетка.
=IFERROR(VLOOKUP(B5,INDIRECT("'"&INDEX($F$5:$H$5,1,MATCH(TRUE,COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!B5:B10"),B5)>0,0))&"'!$B$5:$D$10"),2,FALSE), "Отсъства")

  • Впоследствие натиснете ВЪВЕДЕТЕ .

Разбивка на формулата

  • На първо място, COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!B5:B10"),B5) връща колко пъти е увеличена стойността в клетката B5 е налице в диапазона 'Седмица 1'!B5:B10 , 'Седмица 2'!B5:B10 и 'Седмица 3'!B5:B10 съответно. [Тук $F$5:$H$5 са имената на работните листове. ИНДИРЕКТЕН формулата получава 'Sheet_Name'!B5:B10 .]
    • Изход: {0,0,1} .
  • Второ, MATCH(TRUE,{0,0,1}>0,0) връща в кой работен лист е стойността в B5 е налице.
    • Изход: 3 .
  • Тук тя се връща 3 като стойността в B5 ( Алекс Хейлс ) е в работен лист № 3 ( Седмица 3 ).
  • Трето, INDEX($F$5:$H$5,1,3) връща името на работния лист, в който стойността в клетка B5 е.
    • Изход: "Седмица 3" .
  • Четвърто, INDIRECT("'"& "Седмица 3″&"'!$B$4:$D$9") връща общия обхват от клетки на работния лист, в който е вписана стойността в B5 е налице.
    • Изход: {"Nathan Mills",72,59; "Ruth Williamson",53,55; "Alex Hales",67,70; "Matthew Shepherd",76,45; "Christina Paul",69,75; "Ricardo Moyes",57,61}.
  • Накрая, VLOOKUP(B5,{"Нейтън Милс",72,59; "Рут Уилямсън",53,55; "Алекс Хейлс",67,70; "Матю Шепърд",76,45; "Кристина Пол",69,75; "Рикардо Мойс",57,61},2,FALSE) връща 2-ра колона на реда от този диапазон, в който стойността в клетка B5 мачове.
    • Изход: 67 .
  • Така че това е оценката от писмения изпит, която търсихме.
  • И ако името не е намерено в нито един работен лист, ще се върне "Отсъства" защото го вложихме в IFERROR функция.

Тук можете да използвате подобна формула, за да откриете Viva оценки на кандидатите.

  • Затова променете col_index_number от 2 към 3 и напишете формулата.
=IFERROR(VLOOKUP(B5,INDIRECT("'"&INDEX($F$5:$H$5,1,MATCH(TRUE,COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!B5:B10"),B5)>0,0))&"'!$B$5:$D$10"),3,FALSE), "Отсъства")

  • След това натиснете ВЪВЕДЕТЕ за да получите резултата.

  • След това плъзнете Дръжка за пълнене икона.

И накрая, получихме оценките от писмения изпит и от випуска на всички кандидати. Освен това имената на тези, които не са открити, са отбелязани като отсъстващи.

Прочетете още: Функцията INDEX MATCH срещу VLOOKUP (9 примера)

4. Формула VLOOKUP с динамичен номер на индекса на колоната

Досега за извличане на оценките от писмения изпит използвахме col_index_num като 2 . И за оценките от вива, 3 .

Всъщност вмъкваме формулите поотделно в двете колони.

В крайна сметка, когато имаме няколко колони, ще бъде доста трудно да вмъкваме формули във всички колони поотделно.

И така, този път ще генерираме формула, за да можем да я вмъкнем в първи и го плъзнете към всички колони чрез Дръжка за пълнене икона.

Просто. Вместо да вмъквате чисто число като col_index_num , вмъкнете КОЛОНИ($C$1:D1) ако формулата е в колона C ( За писмени оценки ).

След това ще върне 2 .

След това, ако го плъзнем към колона E , тя ще стане КОЛОНИ($C$1:E1) и да върнете 3 И така нататък.

  • Затова сега променяме формулата от предишния раздел на тази:
=IFERROR(VLOOKUP($B5,INDIRECT("'"&INDEX($F$5:$H$5,1,MATCH(TRUE,COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!B5:B10"),$B5)>0,0))&"'!$B$5:$D$10"),COLUMNS($C$1:D1),FALSE), "Отсъстващ")

  • След това натиснете ВЪВЕДЕТЕ .

  • След това плъзнете Дръжка за пълнене иконата вдясно за получаване на Viva марки.

  • След това плъзнете Дръжка за пълнене икона надолу.

Накрая ще видите оценките от писмения изпит и от випуска за всички кандидати.

Известие: Тук сме променили lookup_value от B5 до $B5 , така че да остане непроменена при плъзгане надясно, но да се промени при плъзгане надолу.

Прочетете още: Динамичен VLOOKUP в Excel (с 3 формули)

5. Формула VLOOKUP с комбинирани функции в Excel

Тук ще използваме друг VLOOKUP формула в Excel с няколко листа, като игнорира IFERROR Нека видим стъпките, дадени по-долу.

Стъпки:

  • Първо, трябва да изберете нова клетка C5 където искате да запазите писмените знаци.
  • Второ, трябва да използвате формулата, дадена по-долу в C5 клетка.
=VLOOKUP(B5,INDIRECT("'"&INDEX($F$5:$H$5,MATCH(1,--(COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!$B$5:$D$10"),B5)>0),0))&"'!$B$5:$D$10"),2,FALSE)

  • Трето, натиснете ВЪВЕДЕТЕ .

  • По същия начин използвайте следната формула в D5 клетка за получаване на оценките от Viva.
=VLOOKUP(B5,INDIRECT("'"&INDEX($F$5:$H$5,MATCH(1,--(COUNTIF(INDIRECT("'"&$F$5:$H$5&"'!$B$5:$D$10"),B5)>0),0))&"'!$B$5:$D$10"),3,FALSE)

  • Впоследствие натиснете ВЪВЕДЕТЕ .

  • След това плъзнете Дръжка за пълнене икона.

Накрая ще видите оценките на всички кандидати както от писмения изпит, така и от вива. Освен това ще видите #N/A грешка, при която имената липсват в посочените листове.

Ограничения на функцията VLOOKUP и някои алтернативи в Excel

  • Тук не можете да използвате VLOOKUP функция, когато lookup_value не е в първи например в предишния пример не можете да използвате колоната VLOOKUP функция, за да научите името на кандидата, който е получил 90 на писмения изпит.
  • Въпреки това можете да използвате IF , IFS , INDEX MATCH , XLOOKUP , или ФИЛТЪР функциите на Excel, за да решите това (Тук можете да посетите тази статия ).
  • Освен това, VLOOKUP връща само първи стойност, ако повече от една стойност отговаря на lookup_value В тези случаи можете да използвате ФИЛТЪР за да получите всички стойности (Тук можете да посетите тази статия ).

Как да приложите формулата VLOOKUP в Excel с няколко работни книги

В този раздел ще обсъдим как да приложим VLOOKUP формула в Excel с няколко работни книги. Сега нека имаме следната работна книга с име Марки от пробния тест . Освен това в тази работна книга има три работни листове. Те са Седмица 1, Седмица 2 , и Седмица 3 .

В този момент искаме да сравним предварителните и окончателните писмени оценки, получени от кандидатите. Първо намерихме окончателните писмени оценки. Тук можете да ги намерите, като следвате някой от предишните методи. Сега ще извлечем предварителните писмени оценки от друга работна книга.

  • Затова запишете следната формула в D5 клетка.
=IFERROR(VLOOKUP(B5,"[Mock Test Marks.xlsx]Week 1"!$B$5:$D$10,2,FALSE),IFERROR(VLOOKUP(B5,"[Mock Test Marks.xlsx]Week 2"!$B$5:$D$10,2,FALSE),IFERROR(VLOOKUP(B5,"[Mock Test Marks.xlsx]Week 3"!$B$5:$D$10,2,FALSE), "Отсъстващ")))

Тук, когато използвате тази формула, трябва да отворите и двете работни книги. В противен случай трябва да използвате път/място на запълване вместо да използвате само името на файла.

  • След това натиснете ВЪВЕДЕТЕ .

  • След това плъзнете Дръжка за пълнене икона надолу.

Накрая ще видите окончателните и предварителните писмени оценки на всички кандидати.

Практически раздел

Сега можете сами да практикувате обяснения метод.

Заключение

Използвайки тези методи, можете да използвате VLOOKUP функция на Excel като формула за извличане на данни от няколко листа в работна книга. И така, имате ли други въпроси? Не се колебайте да ни ги зададете.

Хю Уест е опитен обучител и анализатор на Excel с над 10 години опит в индустрията. Има бакалавърска степен по счетоводство и финанси и магистърска степен по бизнес администрация. Хю има страст към преподаването и е разработил уникален подход на преподаване, който е лесен за следване и разбиране. Неговите експертни познания по Excel са помогнали на хиляди студенти и професионалисти по целия свят да подобрят уменията си и да постигнат отлични резултати в кариерата си. Чрез своя блог Хю споделя знанията си със света, като предлага безплатни уроци за Excel и онлайн обучение, за да помогне на хората и фирмите да достигнат пълния си потенциал.