Applies ToExcel за Microsoft 365 Excel за Microsoft 365 за Mac Excel за уеб Excel 2024 Excel 2024 за Mac Excel 2021 Excel 2021 за Mac Excel 2019 Excel 2019 for Mac Excel 2016

Съвет: Опитайте да използвате новата XLOOKUP функция – подобрена версия на VLOOKUP, която работи в произволна посока и връща точни съвпадения по подразбиране, което прави използването му по-лесно и по-удобно от предшественика й.

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

В най-простия си вид функцията VLOOKUP казва:

=VLOOKUP(Какво искате да търсите, къде искате да го потърсите, номера на колоната в диапазона, съдържащ стойността за връщане, връща приблизително или Точно съвпадение – посочено като 1/TRUE или 0/FALSE).

Вашият браузър не поддържа видео. Инсталирайте Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

Съвет: Тайната на VLOOKUP е да организирате данните си така, че стойността, по която търсите (Плодове), да е отляво на върнатата стойност (Количество), която искате да намерите.

Използване на функцията VLOOKUP за търсене на стойност в таблица.

Синтаксис 

VLOOKUP(справка_стойност; таблица_масив; кол_индекс_ном; [диапазон_справка])

Например:

  • =VLOOKUP(A2;A10:C20;2;TRUE)

  • =VLOOKUP("Тодоров";B2:E7;2;FALSE)

  • =VLOOKUP(A2;"Подробни данни за клиента"! A:F,3,FALSE)

Име на аргумент

Описание

справка_стойност    (задължителен)

Стойността, по която търсите. Стойността, по която искате да търсите, трябва да бъде в първата колона на диапазона от клетки, които задавате в аргумента table_array .

Ако например масивът от таблици обхваща клетки B2:D7, lookup_value трябва да бъде в колона B.

Справка_стойност може да бъде стойност или препратка към клетка.

таблица_масив    (задължителен)

Диапазонът от клетки, в който VLOOKUP ще извърши търсене за справка_стойност и върнатата стойност. Можете да използвате наименуван диапазон или таблица и можете да използвате имена в аргумента вместо препратки към клетки. 

Първата колона в диапазона от клетки трябва да съдържа lookup_value. Диапазонът от клетки също трябва да включва върнатата стойност, която искате да намерите.

Научете как се избират диапазони в работен лист.

кол_индекс_ном    (задължителен)

Номерът на колоната (започващ с 1 за най-лявата колона на table_array), която съдържа върнатата стойност.

диапазон_справка    (незадължителен)

Логическа стойност, указваща дали VLOOKUP да търси приблизително, или точно съвпадение:

  • Приблизително съвпадение – 1/TRUE предполага, че първата колона в таблицата е сортирана по числов или азбучен ред и след това ще търси най-близката стойност. Това е методът по подразбиране, ако не зададете друг. Например =VLOOKUP(90;A1:B100;2;TRUE).

  • Точно съвпадение – 0/FALSE търси точната стойност в първата колона. Например =VLOOKUP("Тодоров";A1:B100;2;FALSE).

Как да започнете

Има четири сегмента от информация, които ще ви трябват, за да съставите синтаксиса на VLOOKUP:

  1. Стойността, която искате да търсите, наричана също стойност на справка.

  2. Диапазонът, където се намира стойността на справка. Не забравяйте, че стойността на справка винаги трябва да бъде в първата колона в диапазона, за да може VLOOKUP да работи правилно. Например ако стойността на справка е в клетка C2, тогава диапазонът ви трябва да започва с C.

  3. Номерът на колона в диапазона, който съдържа върнатата стойност. Например ако зададете B2:D11 като диапазон, трябва да броите B като първа колона, C за втора и т.н.

  4. По желание можете да зададете TRUE, ако искате приблизително съвпадение, или FALSE, ако искате точно съвпадение на върнатата стойност. Ако не зададете нищо, стойността по подразбиране винаги ще бъде TRUE, или приблизително съвпадение.

Сега съберете заедно всичко по-горе, както следва:

=VLOOKUP(стойност за справка; диапазон, съдържащ търсената стойност; номерът на колоната в диапазона, съдържащ върнатата стойност; приблизително съвпадение (TRUE) или Точно съвпадение (FALSE)).

Примери

Ето няколко примера на VLOOKUP:

Пример 1

=VLOOKUP (B3;B2:E7;2;FALSE)

VLOOKUP търси Olivier в първата колона (колона B) в table_array B2:E7 и връща Olivier от втората колона (колона C) на table_array.  False връща точно съвпадение.

Пример 2

=VLOOKUP (102;A2:C7;2;FALSE)

VLOOKUP търси точно съвпадение (FALSE) на фамилното име за 102 (lookup_value) във втората колона (колона B) в диапазона A2:C7 и връща Fontana.

Пример 3

=IF(VLOOKUP(103;A1:E7;2;FALSE)="Souse";"Located";"Not found")

IF проверява дали VLOOKUP връща Sousa като фамилно име на служител, съответстващо на 103 (lookup_value) в A1:E7 (table_array). Тъй като фамилното име, съответстващо на 103, е Leal, условието IF е false и не е намерено.

Пример 4

=INT(YEARFRAC(DATE(2014;6;30);VLOOKUP(105;A2:E7;5;FLASE);1))

VLOOKUP търси датата на раждане на служителя, съответстващ на 109 (lookup_value) в диапазона A2:E7 (table_array) и връща 03.04.1955 г. След това YEARFRAC изважда тази дата на раждане от 6.6.2014 г. и връща стойност, която след това се преобразува от INY в цяло число 59.

Пример 5

IF(ISNA(VLOOKUP(105;A2:E7;2;FLASE))=TRUE;"Служителят не е намерен";VLOOKUP(105;A2:E7;2;FALSE))

IF проверява дали VLOOKUP връща стойност за фамилно име от колона B за 105 (lookup_value). Ако VLOOKUP намери фамилно име, IF ще покаже фамилното име, в противен случай IF връща Служителят не е намерен. ISNA гарантира, че ако VLOOKUP върне #N/A, грешката се замества от Служител, който не е намерен, а не от #N/A.



В този пример върнатата стойност е Burke, която е фамилното име, съответстващо на 105.

Можете да използвате VLOOKUP, за да комбинирате няколко таблици в една, стига една от таблиците да има общи полета с всички останали. Това може да е особено полезно, ако трябва да споделите работна книга с хора, които имат по-стари версии на Excel, които не поддържат функции за данни с множество таблици като източници на данни – като комбинирате източниците в една таблица и промените източника на данни на функцията с новата таблица, функцията за данни може да се използва в по-стари версии на Excel (при условие че самата функция за данни се поддържа от по-старата версия).

Работен лист с колони, които използват VLOOKUP, за да получите данни от други таблици

Тук колоните A-F и H имат стойности или формули, които използват само стойности в работния лист, а останалите колони използват VLOOKUP и стойностите на колона A (клиентски код) и колона B (адвокат), за да получат данни от други таблици.

  1. Копирайте таблицата, която съдържа общите полета, в нов работен лист и й дайте име.

  2. Щракнете върху Инструменти за данни > данни > Релации, за да отворите диалоговия прозорец Управление на зависимости.

    Диалоговият прозорец Управление на зависимости
  3. За всяка изброена релация обърнете внимание на следното:

    • Полето, което свързва таблиците (изброени в скоби в диалоговия прозорец). Това е lookup_value за вашата формула на VLOOKUP.

    • Името на свързаната таблица за справка. Това е table_array във формулата VLOOKUP.

    • Полето (колоната) в свързаната таблица за справки, съдържащо данните, които искате, в новата ви колона. Тази информация не се показва в диалоговия прозорец Управление на зависимости – ще трябва да прегледате свързаната таблица за справки, за да видите кое поле искате да извлечете. Искате да обърнете внимание на номера на колоната (A=1) – това е col_index_num във вашата формула.

  4. За да добавите поле към новата таблица, въведете формулата VLOOKUP в първата празна колона, като използвате информацията, събрана в стъпка 3.

    В нашия пример колоната G използва Attorney ( the lookup_value), за да получи данните за Bill Rate от четвъртата колона (col_index_num = 4) от таблицата в работния лист Attorneys, tblAttorneys ( table_array), с формулата =VLOOKUP([@Attorney],tbl_Attorneys;4;FALSE).

    Формулата може също да използва препратка към клетка и препратка към диапазон. В нашия пример това би било =VLOOKUP(A2;'Attorneys'! A:D,4;FALSE).

  5. Продължете да добавяте полета, докато не получите всички полета, от които имате нужда. Ако се опитвате да подготвите работна книга, съдържаща функции за данни, които използват няколко таблици, променете източника на данни на функцията за данни в новата таблица.

Проблем

Защо е възникнала грешка

Върната е грешна стойност

Ако аргументът диапазон_справка е TRUE или е пропуснат, първата колона трябва да се сортира по азбучен или числов ред. Ако първата колона не е сортирана, върнатата стойност може да е нещо, което не очаквате. Или сортирайте първата колона, или използвайте "FALSE" за точно съвпадение.

#N/A в клетка

  • Ако диапазон_справка е TRUE и ако стойността в справка_стойност е по-малка от най-малката стойност в първата колона на таблица_масив, ще получите стойността за грешка #N/A.

  • Ако диапазон_справка е FALSE, стойността за грешка #N/A означава, че не е намерено точното число.

За повече информация за отстраняване на грешки тип #N/A във VLOOKUP вижте Как да коригирате грешка #N/A във функцията VLOOKUP.

#REF! в клетка

Ако col_index_num е по-голямо от броя на колоните в таблица_масив, ще получите #REF! стойността на грешка.

За повече информация за отстраняването на #REF! във VLOOKUP, вижте Как се коригира #REF! грешка.

#VALUE! в клетка

Ако table_array е по-малко от 1, ще получите #VALUE! стойността на грешка.

За повече информация за отстраняване на грешки тип #VALUE! във VLOOKUP вижте Как да коригирате грешка #VALUE! във функцията VLOOKUP.

#NAME? в клетка

Стойността за грешка #NAME? обикновено означава, че липсват кавички във формулата. За да търсите името на човек, трябва да използвате кавички около името във формулата. Например въведете името като "Тодоров" в =VLOOKUP("Тодоров";B2:E7;2;FALSE).

За повече информация вижте Как се коригира #NAME! грешка.

#ПРЕЛИВАНЕ! в клетка

Тази конкретна грешка #SPILL! обикновено означава, че вашата формула разчита на неявно сечение за търсената стойност и използва цяла колона като препратка. Например =VLOOKUP(A:A;A:C;2;FALSE). Можете да решите проблема, като фиксирате препратката към справка с оператора @ по следния начин: =VLOOKUP(@A:A;A:C;2;FALSE). Като алтернатива, можете да използвате традиционния метод VLOOKUP и да препратите към една клетка вместо към цяла колона: =VLOOKUP(A2;A:C;2;FALSE).

Направете следното

Защо

Използвайте абсолютни препратки за диапазон_справка

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

Научете как да използвате абсолютни препратки към клетките.

Не съхранявайте стойности, които са число или дата, като текст.

При търсене на стойности, които са число или дата, се уверете, че данните в първата колона на таблица_масив не се съхраняват като текстови стойности. В противен случай VLOOKUP може да върне неправилна или неочаквана стойност.

Сортиране на първата колона

Сортирайте първата колона на таблица_масив, преди да използвате VLOOKUP, когато диапазон_справка е TRUE.

Използване на заместващи символи

Ако диапазон_справка е FALSE и справка_стойност е текст, можете да използвате заместващи символи – въпросителен знак (?) и звездичка (*) – в справка_стойност. Въпросителният знак съответства на единичен знак. Звездичката съответства на произволна поредица от знаци. Ако искате да намерите самите въпросителен знак или звездичка, напишете тилда (~) пред знака.

Например =VLOOKUP("Фонтан?";B2:E7;2;FALSE) ще извърши търсене за всички екземпляри на Тофана с последна буква, която може да се различава.

Уверете се, че вашите данни не съдържат грешни знаци.

При търсене на текстови стойности в първата колона проверете дали данните в нея нямат начални интервали, крайни интервали, несъгласувана употреба на прави (' или ") или типографски (‘ или “) кавички или знаци, които не могат да се отпечатат. В тези случаи VLOOKUP може да върне неочаквана стойност.

За да получите точни резултати, опитайте да използвате функцията CLEAN или функцията TRIM, за да премахнете крайните интервали след стойностите на таблицата в клетка.

Имате нужда от още помощ?

Винаги можете да попитате експерт в техническата общност на Excel или да получите поддръжка в Общността за отговори от.

Вж. също

XLOOKUP функция

Видео: Кога и как да използвате VLOOKUP

Карта за бързи справки: припомняне на VLOOKUP

Как да коригирате грешка #N/A във функцията VLOOKUP

Търсене на стойности с VLOOKUP, INDEX или MATCH

HLOOKUP функция

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

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