Summary
This step-by-step article describes how to find data in a table (or range of cells) by using various built-in functions in Microsoft Excel. You can use different formulas to get the same result.
Create the Sample Worksheet
This article uses a sample worksheet to illustrate Excel built-in functions. Consider the example of referencing a name from column A and returning the age of that person from column C. To create this worksheet, enter the following data into a blank Excel worksheet.
You will type the value that you want to find into cell E2. You can type the formula in any blank cell in the same worksheet.
A |
B |
C |
D |
E |
||
1 |
Name |
Dept |
Age |
Find Value |
||
2 |
Henry |
501 |
28 |
Mary |
||
3 |
Stan |
201 |
19 |
|||
4 |
Mary |
101 |
22 |
|||
5 |
Larry |
301 |
29 |
Term Definitions
This article uses the following terms to describe the Excel built-in functions:
Term |
Definition |
Example |
Table Array |
The whole lookup table |
A2:C5 |
Lookup_Value |
The value to be found in the first column of Table_Array. |
E2 |
Lookup_Array |
The range of cells that contains possible lookup values. |
A2:A5 |
Col_Index_Num |
The column number in Table_Array the matching value should be returned for. |
3 (third column in Table_Array) |
Result_Array |
A range that contains only one row or column. It must be the same size as Lookup_Array or Lookup_Vector. |
C2:C5 |
Range_Lookup |
A logical value (TRUE or FALSE). If TRUE or omitted, an approximate match is returned. If FALSE, it will look for an exact match. |
FALSE |
Top_cell |
This is the reference from which you want to base the offset. Top_Cell must refer to a cell or range of adjacent cells. Otherwise, OFFSET returns the #VALUE! error value. |
|
Offset_Col |
This is the number of columns, to the left or right, that you want the upper-left cell of the result to refer to. For example, «5» as the Offset_Col argument specifies that the upper-left cell in the reference is five columns to the right of reference. Offset_Col can be positive (which means to the right of the starting reference) or negative (which means to the left of the starting reference). |
Functions
LOOKUP()
The LOOKUP function finds a value in a single row or column and matches it with a value in the same position in a different row or column.
The following is an example of LOOKUP formula syntax:
=LOOKUP(Lookup_Value,Lookup_Vector,Result_Vector)
The following formula finds Mary’s age in the sample worksheet:
=LOOKUP(E2,A2:A5,C2:C5)
The formula uses the value «Mary» in cell E2 and finds «Mary» in the lookup vector (column A). The formula then matches the value in the same row in the result vector (column C). Because «Mary» is in row 4, LOOKUP returns the value from row 4 in column C (22).
NOTE: The LOOKUP function requires that the table be sorted.
For more information about the LOOKUP function, click the following article number to view the article in the Microsoft Knowledge Base:
How to use the LOOKUP function in Excel
VLOOKUP()
The VLOOKUP or Vertical Lookup function is used when data is listed in columns. This function searches for a value in the left-most column and matches it with data in a specified column in the same row. You can use VLOOKUP to find data in a sorted or unsorted table. The following example uses a table with unsorted data.
The following is an example of VLOOKUP formula syntax:
=VLOOKUP(Lookup_Value,Table_Array,Col_Index_Num,Range_Lookup)
The following formula finds Mary’s age in the sample worksheet:
=VLOOKUP(E2,A2:C5,3,FALSE)
The formula uses the value «Mary» in cell E2 and finds «Mary» in the left-most column (column A). The formula then matches the value in the same row in Column_Index. This example uses «3» as the Column_Index (column C). Because «Mary» is in row 4, VLOOKUP returns the value from row 4 in column C (22).
For more information about the VLOOKUP function, click the following article number to view the article in the Microsoft Knowledge Base:
How to Use VLOOKUP or HLOOKUP to find an exact match
INDEX() and MATCH()
You can use the INDEX and MATCH functions together to get the same results as using LOOKUP or VLOOKUP.
The following is an example of the syntax that combines INDEX and MATCH to produce the same results as LOOKUP and VLOOKUP in the previous examples:
=INDEX(Table_Array,MATCH(Lookup_Value,Lookup_Array,0),Col_Index_Num)
The following formula finds Mary’s age in the sample worksheet:
=INDEX(A2:C5,MATCH(E2,A2:A5,0),3)
The formula uses the value «Mary» in cell E2 and finds «Mary» in column A. It then matches the value in the same row in column C. Because «Mary» is in row 4, the formula returns the value from row 4 in column C (22).
NOTE: If none of the cells in Lookup_Array match Lookup_Value («Mary»), this formula will return #N/A.
For more information about the INDEX function, click the following article number to view the article in the Microsoft Knowledge Base:
How to use the INDEX function to find data in a table
OFFSET() and MATCH()
You can use the OFFSET and MATCH functions together to produce the same results as the functions in the previous example.
The following is an example of syntax that combines OFFSET and MATCH to produce the same results as LOOKUP and VLOOKUP:
=OFFSET(top_cell,MATCH(Lookup_Value,Lookup_Array,0),Offset_Col)
This formula finds Mary’s age in the sample worksheet:
=OFFSET(A1,MATCH(E2,A2:A5,0),2)
The formula uses the value «Mary» in cell E2 and finds «Mary» in column A. The formula then matches the value in the same row but two columns to the right (column C). Because «Mary» is in column A, the formula returns the value in row 4 in column C (22).
For more information about the OFFSET function, click the following article number to view the article in the Microsoft Knowledge Base:
How to use the OFFSET function
Need more help?
VLOOKUP Function – Introduction
VLOOKUP function is THE benchmark.
You know something in Excel if you know how to use the VLOOKUP function.
If you don’t, you better not list Excel as one of your strong areas in your resume.
I have been a part of the panel interviews where as soon as the candidate mentioned Excel as his area of expertise, the first thing asked was – you got it – the VLOOKUP function.
Now that we know how important this Excel function is, it makes sense to ace it completely to be able to proudly say – “I know a thing or two in Excel”.
This is going to be a massive VLOOKUP tutorial (by my standards).
I’ll cover everything there is to know about it, and then show you useful and practical VLOOKUP examples.
So buckle up.
It’s time for the takeoff.
When to use the VLOOKUP Function in Excel?
VLOOKUP function is best suited for situations when you are looking for a matching data point in a column, and when the matching data point is found, you go to the right in that row and fetch a value from a cell which is a specified number of columns to the right.
Let’s take a simple example here to understand when to use Vlookup in Excel.
Remember when the exam score list was out and pasted on the notice board and everyone used to go crazy finding their names and their score (at least that’s what used to happen when I was in school).
Here is how it worked:
- You go up to the notice board and start looking for your name or enrolment number (running your finger from top to bottom in the list).
- As soon as you spot your name, you move your eyes to the right of the name/enrolment number to see your scores.
And that is exactly what the Excel VLOOKUP function does for you (feel free to use this example in your next interview).
VLOOKUP function looks for a specified value in a column (in the above example, it was your name) and when it finds the specified match, it returns a value in the same row (the marks you obtained).
Syntax
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
Input Arguments
- lookup_value – this is the look-up value you are trying to find in the left-most column of a table. It could be a value, a cell reference, or a text string. In the score sheet example, this would be your name.
- table_array – this is the table array in which you are looking for the value. This could be a reference to a range of cells or a named range. In the score sheet example, this would be the entire table that contains score for everyone for every subject
- col_index – this is the column index number from which you want to fetch the matching value. In the score sheet example, if you want the scores for Math (which is the first column in a table that contains the scores), you’d look in column 1. If you want the scores for Physics, you’d look in column 2.
- [range_lookup] – here you specify whether you want an exact match or an approximate match. If omitted, it defaults to TRUE – approximate match (see additional notes below).
Additional Notes (Boring, but important to know)
- The match could be exact (FALSE or 0 in range_lookup) or approximate (TRUE or 1).
- In approximate lookup, make sure that the list is sorted in ascending order (top to bottom), or else the result could be inaccurate.
- When range_lookup is TRUE (approximate lookup) and data is sorted in ascending order:
- If the VLOOKUP function can not find the value, it returns the largest value, which is less than the lookup_value.
- It returns a #N/A error if the lookup_value is smaller than the smallest value.
- If lookup_value is text, wildcard characters can be used (refer to the example below).
Now, hoping that you have a basic understanding of what the VLOOKUP function can do, let’s peel this onion and see some practical examples of the VLOOKUP function.
10 Excel VLOOKUP Examples (Basic & Advanced)
Here are 10 useful exampels of using Excel Vlookup that will show you how to use it in your day-to-day work.
Example 1 – Finding Brad’s Math Score
In the VLOOKUP example below, I have a list wth student names in the left-most column and marks in different subjects in columns B to E.
Now let’s get to work and use the VLOOKUP function for what it does best. From the above data, I need to know how much Brad scored in Math.
From the above data, I need to know how much Brad scored in Math.
Here is the VLOOKUP formula that will return Brad’s Math score:
=VLOOKUP("Brad",$A$3:$E$10,2,0)
The above formula has four arguments:
- “Brad: – this is the lookup value.
- $A$3:$E$10 – this is the range of cells in which we are looking. Remember that Excel looks for the lookup value in the left-most column. In this example, it would look for the name Brad in A3:A10 (which is the left-most column of the specified array).
- 2 – Once the function spots Brad’s name, it will go to the second column of the array, and return the value in the same row as that of Brad. The value 2 here indicated that we are looking for the score from the second column of the specified array.
- 0 – this tells the VLOOKUP function to only look for exact matches.
Here is how the VLOOKUP formula works in the above example.
First, it looks for the value Brad in the left-most column. It goes from top to bottom and finds the value in cell A6.
As soon as it finds the value, it goes to the right in the second column and fetches the value in it.
You can use the same formula construct to get anyone’s marks in any of the subjects.
For example, to find Maria’s marks in Chemistry, use the following VLOOKUP formula:
=VLOOKUP("Maria",$A$3:$E$10,4,0)
In the above example, the lookup value (student’s name) is entered in double quotes. You can also use a cell reference that contains the lookup value.
The benefit of using a cell reference is that it makes the formula dynamic.
For example, if you have a cell with a student’s name, and you are fetching the score for Math, the result would automatically update when you change the student’s name (as shown below):
If you enter a lookup value that is not found in the left-most column, it returns a #N/A error.
Example 2 – Two-Way Lookup
In Example 1 above, we hard-coded the column value. Hence, the formula would always return the score for Math as we have used 2 as the column index number.
But what if you want to make both the VLOOKUP value and the column index number dynamic. For example, as shown below, you can change either the student name or the subject name, and the VLOOKUP formula fetches the correct score. This is an example of a two-way VLOOKUP formula.
This is an example of a two-way VLOOKUP function.
To make this two-way lookup formula, you need to make the column dynamic as well. So when a user changes the subject, the formula automatically picks the correct column (2 in the case of Math, 3 in the case of Physics, as so on..).
To do this, you need to use the MATCH function as the column argument.
Here is the VLOOKUP formula that will do this:
=VLOOKUP(G4,$A$3:$E$10,MATCH(H3,$A$2:$E$2,0),0)
The above formula uses MATCH(H3,$A$2:$E$2,0) as the column number. MATCH function takes the subject name as the lookup value (in H3) and returns its position in A2:E2. Hence, if you use Math, it would return 2 as Math is found in B2 (which is the second cell in the specified array range).
Example 3 – Using Drop Down Lists as Lookup Values
In the above example, we have to manually enter the data. That could be time-consuming and error-prone, especially if you have a huge list of lookup values.
A good idea in such cases is to create a drop-down list of the lookup values (in this case, it could be student names and subjects) and then simply choose from the list.
Based on the selection, the formula would automatically update the result.
Something as shown below:
This makes a good dashboard component as you can have a huge data set with hundreds of students at the back end, but the end user (let’s say a teacher) can quickly get the marks of a student in a subject by simply making the selections from the drop down.
How to make this:
The VLOOKUP formula used in this case is the same used in Example 2.
=VLOOKUP(G4,$A$3:$E$10,MATCH(H3,$A$2:$E$2,0),0)
The lookup values have been converted into drop-down lists.
Here are the steps to create the drop down list:
- Select the cell in which you want the drop-down list. In this example, in G4, we want the student names.
- Go to Data –> Data Tools –> Data Validation.
- In the Data Validation Dialogue box, within the settings tab, select List from the Allow drop-down.
- In the source, select $A$3:$A$10
- Click OK.
Now you’ll have the drop-down list in cell G4. Similarly, you can create one in H3 for the subjects.
Example 4 – Three-way Lookup
What is a three-way lookup?
In Example 2, we’ve used one lookup table with scores for students in different subjects. This is an example of a two-way lookup as we use two variables to fetch the score (student’s name and the subject’s name).
Now, suppose in a year, a student has three different levels of exams, Unit Test, Midterm, and Final Examination (that’s what I had when I was a student).
A three-way lookup would be the ability to get a student’s marks for a specified subject from the specified level of exam.
Something as shown below:
In the above example, the VLOOKUP function can lookup in three different tables (Unit Test, Midterm, and Final Exam) and returns the score for the specified student in the specified subject.
Here is the formula used in cell H4:
=VLOOKUP(G4,CHOOSE(IF(H2="Unit Test",1,IF(H2="Midterm",2,3)),$A$3:$E$7,$A$11:$E$15,$A$19:$E$23),MATCH(H3,$A$2:$E$2,0),0)
This formula uses the CHOOSE function to make sure the right table is referred to. Let’s analyze the CHOOSE part of the formula:
CHOOSE(IF(H2=”Unit Test”,1,IF(H2=”Midterm”,2,3)),$A$3:$E$7,$A$11:$E$15,$A$19:$E$23)
The first argument of the formula is IF(H2=”Unit Test”,1,IF(H2=”Midterm”,2,3)), which checks the cell H2 and see what level of exam is being referred to. If it’s Unit Test, it returns $A$3:$E$7, which has the scores for Unit Test. If it’s Midterm, it returns $A$11:$E$15, else it returns $A$19:$E$23.
Doing this makes the VLOOKUP table array dynamic and hence makes it a three-way lookup.
Example 5 – Getting the Last Value from a List
You can create a VLOOKUP formula to get the last numerical value from a list.
The largest positive number that you can use in Excel is 9.99999999999999E+307. This also means that the largest lookup number in the VLOOKUP number is also the same.
I don’t think you would ever need any calculation involving such a large number. And that is exactly what we can use get the last number in a list.
Suppose you have a dataset (in A1:A14) as shown below and you want to get the last number in the list.
Here is the formula you can use:
=VLOOKUP(9.99999999999999E+307,$A$1:$A$14,TRUE)
Note that the formula above uses an approximate match VLOOKUP (notice TRUE at the end of the formula, instead of FALSE or 0). Also, note that the list doesn’t need to be sorted for this VLOOKUP formula to work.
Here is how the approximate VLOOKUP function works. It scans the left most column from top to bottom.
- If it finds an exact match, it returns that value.
- If it finds a value that is higher than the lookup value, it returns the value in the cell above it.
- If the lookup value is greater than all the values in the list, it returns the last value.
In the above example, the third scenario is at work.
Since 9.99999999999999E+307 is the largest number that can be used in Excel, when this is used as the lookup value, it returns the last number from the list.
In the same way, you can also use it to return the last text item from the list. Here is the formula that can do that:
=VLOOKUP("zzz",$A$1:$A$8,1,TRUE)
The same logic follows. Excel looks through all the names, and since zzz is considered bigger than any name/text starting with alphabets before zzz, it would return the last item from the list.
Example 6 – Partial Lookup using Wildcard Characters and VLOOKUP
Excel wildcard characters can be really helpful in many situations.
It’s that magic potion that gives your formulas super powers.
Partial look-up is needed when you have to look for a value in a list and there isn’t an exact match.
For example, suppose you have a data set as shown below, and you want to look for the company ABC in a list, but the list has ABC Ltd instead of ABC.
You can not use ABC as the lookup value as there is no exact match in column A. Approximate match also leads to erroneous results and it requires the list to be sorted in an ascending order.
However, you can use a wildcard character within the VLOOKUP function to get the match.
Enter the following formula in cell D2 and drag it to the other cells:
=VLOOKUP("*"&C2&"*",$A$2:$A$8,1,FALSE)
How does this formula work?
In the above formula, instead of using the lookup value as is, it is flanked on both sides with the wildcard character asterisk (*) – “*”&C2&”*”
An asterisk is a wildcard character in Excel and can represent any number of characters.
Using the asterisk on both sides of the lookup value tells Excel that it needs to look for any text that contains the word in C2. It could have any number of characters before or after the text in C2.
For example, cell C2 has ABC, so the VLOOKUP function looks through the names in A2:A8 and searches for ABC. It finds a match in cell A2, as it contains ABC in ABC Ltd. It doesn’t matter if there are any characters to the left or right of ABC. Until there is ABC in a text string, it will be considered a match.
Note: VLOOKUP function always returns the first matching value and stops looking further. So if you have ABC Ltd., and ABC Corporation in a list, it will return the first one and ignore the rest.
Example 7 – VLOOKUP Returning an Error Despite a Match in Lookup Value
It can drive you crazy when you see that there is a matching lookup value and the VLOOKUP function is returning an error.
For example, in the below case, there is a match (Matt), but the VLOOKUP function still returns an error.
Now while we can see there is a match, what we can not see with a naked eye is that there could be leading or trailing spaces. If you have these additional spaces before, after, or in between the lookup values, it ISN’T an exact match.
This is often the case when you import data from a database or get it from someone else. These leading/trailing spaces have a tendency to sneak in.
The solution here is the TRIM function. It removes any leading or trailing spaces or extra spaces between words.
Here is the formula that’ll give you the right result.
=VLOOKUP("Matt",TRIM($A$2:$A$9),1,0)
Since this is an array formula, use Control + Shift + Enter instead of just Enter.
Another way could be to first treat your lookup array with the TRIM function to make sure all the additional spaces are gone, and then use the VLOOKUP function as usual.
Example 8 – Doing a Case Sensitive Lookup
By default, the lookup value in the VLOOKUP function is not case sensitive. For example, if your lookup value is MATT, matt, or Matt, it’s all the same for the VLOOKUP function. It’ll return the first matching value irrespective of the case.
But if you want to do a case-sensitive lookup, you need to use the EXACT function along with the VLOOKUP function.
Here is an example:
As you can see, there are three cells with the same name (in A2, A4, and A5) but with a different alphabet case. On the right, we have the three names (Matt, MATT, and matt) along with their scores in Math.
Now the VLOOKUP function is not equipped to handle case-sensitive lookup values. In this above example, it would always return 38, which is the score for Matt in A2.
To make it case sensitive, we need to use a helper column (as shown below):
To get the values in the helper column, use the =ROW() function. It will simply get the row number in the cell.
Once you have the helper column, here is the formula that will give the case-sensitive lookup result.
=VLOOKUP(MAX(EXACT(E2,$A$2:$A$9)*(ROW($A$2:$A$9))),$B$2:$C$9,2,0)
Now let’s break down and understand what this does:
- EXACT(E2,$A$2:$A$9) – This part would compare the lookup value in E2 with all the values in A2:A9. It returns an array of TRUEs/FALSEs where TRUE is returned where there is an exact match. In this case, it would return the following array: {TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}.
- EXACT(E2,$A$2:$A$9)*(ROW($A$2:$A$9) – This part multiplies the array of TRUEs/FALSEs with the row number. Wherever there is a TRUE, it gives the row number, else it gives 0. In this case, it would return {2;0;0;0;0;0;0;0}.
- MAX(EXACT(E2,$A$2:$A$9)*(ROW($A$2:$A$9))) – This part returns the maximum value from the array of numbers. In this case, it would return 2 (which is the row number where there is an exact match).
- Now we simply use this number as the lookup value and use the lookup array as B2:C9
Note: Since this is an array formula, use Control + Shift + Enter instead of just enter.
Example 9 – Using VLOOKUP with Multiple Criteria
Excel VLOOKUP function, in its basic form, can look for one lookup value and return the corresponding value from the specified row.
But often there is a need to use VLOOKUP in Excel with multiple criteria.
Suppose you have a data with students name, exam type, and the Math score (as shown below):
Using the VLOOKUP function to get the Math score for each student for respective exam levels could be a challenge.
For example, if you try using VLOOKUP with Matt as the lookup value, it’ll always return 91, which is the score for the first occurrence of Matt in the list. To get the score for Matt for each exam type (Unit Test, Mid Term and Final), you need to create a unique lookup value.
This can be done using the helper column. The first step is to insert a helper column to the left of the scores.
Now, to create a unique qualifier for each instance of the name, use the following formula in C2: =A2&”|”&B2
Copy this formula to all the cells in the helper column. This will create unique lookup values for each instance of a name (as shown below):
Now, while there were repetitions of the names, there is no repetition when the name is combined with the level of examination.
This makes it easy as now you can use the helper column values as the lookup values.
Here is the formula that’ll give you the result in G3:I8.
=VLOOKUP($F3&"|"&G$2,$C$2:$D$19,2,0)
Here we have combined the student name and the level of examination to get the lookup value, and we use this lookup value and checks it in the helper column to get the matching record.
Note: In the above example, we have used | as the separator while joining text in the helper column. In some exceptionally rare (but possible) conditions, you may have two criteria that are different but ends up giving the same result when combined. Here is an example:
Note that while A2 and A3 are different and B2 and B3 are different, the combinations end up being the same. But if you use a separator, then even the combination would be different (D2 and D3).
Here is a tutorial on how to use VLOOKUP with multiple criteria without using helper columns. You can also watch my video tutorial here.
Example 10 – Handling Errors while Using the VLOOKUP Function
Excel VLOOKUP function returns an error when it can not find the specified lookup value. You may not want the ugly error value disturbing the aesthetics of your data in case VLOOKUP can’t find a value.
You can easily remove the error values with any meaning full text such as “Not Available” or “Not Found”.
For example, in the example below, when you try to find the score of Brad in the list, it returns an error as Brad’s name is not there in the list.
To remove this error and replace it with something meaningful, wrap your VLOOKUP function within the IFERROR function.
Here is the formula:
=IFERROR(VLOOKUP(D2,$A$2:$B$7,2,0),"Not Found")
The IFERROR function checks if the value returned by the first argument (which is the VLOOKUP function in this case) is an error or not. If it’s not an error, it returns the value by the VLOOKUP function, else it returns Not Found.
IFERROR function is available from Excel 2007 onwards. If you are using versions prior to that, use the following function:
=IF(ISERROR(VLOOKUP(D2,$A$2:$B$7,2,0)),"Not Found",VLOOKUP(D2,$A$2:$B$7,2,0))
Also See: How to handle VLOOKUP Errors in Excel.
That’s it in this VLOOKUP tutorial.
I’ve tried to cover major examples of using the Vlookup function in Excel. If you would like to see more examples added to this list, let me know in the comments section.
Note: I’ve tried my best to proofread this tutorial, but in case you find any errors or spelling mistakes, please let me know 🙂
Using VLOOKUP Function in Excel – Video
Related Excel Functions:
- Excel HLOOKUP Function.
- Excel XLOOKUP Function
- Excel INDEX Function.
- Excel INDIRECT Function.
- Excel MATCH Function.
- Excel OFFSET Function.
You May Also Like the Following Excel Tutorials:
- VLOOKUP Vs. INDEX/MATCH – The Debate ends here.
- Excel Index Match Examples
- How to Make VLOOKUP Function Case Sensitive.
- Get Multiple Lookup Values Without Repetition in a Single Cell
- Avoid Nested IF Function in Excel by using VLOOKUP
-
- Как пользоваться ВПР в Excel
- Особенности работы функции ВПР
- Как использовать формулу ВПР в Excel для сравнения двух таблиц
- Почему не работает ВПР в Excel
- Когда Интервальный просмотр может быть = 1
Функция ВПР в Excel (в английской версии VLOOKUP) используется для подтягивания значений в таблицу из другой таблицы при условии совпадения критерия поиска. Расшифровывается ВПР как “вертикальный поиск результата”. В этой статье разберемся, как сделать ВПР в Excel, ниже будет понятная инструкция.
ВПР ищет первое совпадение по критерию в левом столбца указанной таблицы и подтягивает значение из указанного столбца этой таблицы.
Как сделать ВПР в Excel понятная инструкция
Чтобы понять, как пользоваться функцией ВПР в Excel, разберем ее синтаксис:
=ВПР(искомое значение; таблица; номер столбца; [интервальный просмотр])
Искомое значение — значение или ссылка на ячейку, по которой будем искать значения в другой таблице. Это критерий поиска.
Таблица — ссылка на таблицу, в которой будет искать.
Номер столбца — порядковый номер столбца относительно самого левого столбца из выделенного диапазона поиска.
Интервальный просмотр — указывается 0 (точный поиск) или 1 (приблизительный поиск)
Рассмотрим использование ВПР на примере:
Есть таблица с количеством гостей в отеле, необходимо понять, есть ли зависимость количества проживающих от того, насколько тепло в этом городе. Для этого нужно подтянуть значения температуры воздуха из таблицы справочника.
В качестве критерия будет использоваться название месяца.
Добавим в первую таблицу столбец Температура и напишем следующую формулу:
В примере формула ВПР ищет значение Январь из первой таблице в крайнем левом столбце второй таблицы. И подтягивает совпадающее значение из указанного столбца (в данном случае, из второго столбца).
Аргумент Интервальный просмотр задаем 0, чтобы функция искала точное совпадение.
Запомним, что в абсолютном большинстве случаем Интервальный просмотр ставим = 0.
Кстати, если не указать интервальный просмотр совсем, то формула не выдаст ошибку, т.к. этот аргумент необязательный. Но результат будет неожиданным, поскольку в этом случае ВПР считает не указанный Интервальный просмотр равным 1 (а это приблизительный поиск).
Не забываем добавить абсолютные ссылки (значки доллара $) к диапазону, иначе диапазон “съедет” при копировании формулы.
Итак, мы получили в нашу таблицу значение из таблицы-справочника — подтянули по критерию названия месяца. Осталось только протянуть или скопировать формулу во все ячейки этого столбца.
Особенности работы функции ВПР
Несмотря на простоту использования формулы ВПР в Excel, у нее есть ряд особенностей, которые нужно учитывать в работе.
-
Функция ВПР ищет совпадение строго в крайнем левом столбце выделенной таблицы.
Ключевые слова здесь — “выделенной” таблицы. Чтобы понять, что это значит, добавим к таблице-справочнику еще один столбец слева (Год).
Чтобы сделать такой же ВПР, как в предыдущем примере (по критерию Месяц), нужно выделять столбцы H:I, хотя таблица содержит столбцы G:I. Иначе Excel будет искать в крайнем левом столбце, в котором содержится не месяц, а год.
Вывод: аргумент Таблица в данном случае — это выделенный диапазон ячеек, а не то, что мы видим “глазами” и считаем таблицей.
-
ВПР в Excel ищет первое совпадение с указанным критерием.
Для примера добавим еще одну строку в таблицу-справочник.
Теперь в таблице содержится два значения температуры для месяца Январь.
Но при этом, даже если мы изменим интервал таблицы для поиска, затянув в нее новую строку Январь 2023, то значение, которое подтянула ВПР, не изменится.
ВПР взяло первое совпадение.
-
В качестве критерия поиска можно использовать не только ссылку на ячейку (как в предыдущих примерах), но и ввести значение напрямую в формулу. Это не очень удобно, но возможно.
Текстовые значения необходимо вводить в кавычках, числовые — просто число.
Пример функции ВПР с текстовым критерием поиска
Пример функции ВПР с числовым критерием поиска
Как использовать формулу ВПР в Excel для сравнения двух таблиц
Функцию ВПР часто используют для сравнения двух таблиц.
-
Сверка двух таблиц по пропускам значений
Для примера удалим из первой таблицы две строки. Наша задача — понять, каких месяцев не хватает в первой таблице.
Для этого во вторую таблицу при помощи функции ВПР подтянем значения из первой таблицы Excel.
Значения можно подтягивать любые, например, количество проживающих. В данном случае сами значения не важны, важны пропуски.
Значения по месяцам Июнь и Октябрь подтянулись с ошибкой #Н/Д (нет данных) — это значит, что в исходной таблице эти месяцы пропущены.
-
Сверка числовых значений
Предположим, у нас есть статистика по количеству проживающих в другом отеле сети по месяцам и годам. Сравним с первым отелем. Для этого добавим новый столбец, и в нем сделаем ВПР по критерию месяца.
А теперь обратите внимание, что месяц Январь повторяется в обоих таблицах (разный год). Но для второго значения Январь в первую таблицу подтянулись цифры из первого значения Январь второй таблицы.
Это произошло потому, что ВПР в Excel ищет первое совпадение.
Выходы из ситуации:
- убедиться, что значения в столбце поиски во второй таблице уникальные
- использовать функцию СУММЕСЛИ или СУММЕСЛИМН
- использовать ВПР по нескольким критериям
Почему не работает ВПР в Excel
То, что ВПР не работает, можно понять по появлению ошибки #Н/Д.
Не работает ВПР — значит, что функция не находит значение. Причины:
- Ошибка в написании критерия. Часто в текст закрадываются лишние пробелы или латинские буквы вместо кириллицы, и тогда появится ошибка.
В данном примере в конце слова Январь стоит невидимый пробел. А поскольку функция ВПР в Excel ищет точное совпадение Январь + пробел в конце и просто Январь — это два разных значения.
- Съехал или “не дотянут” диапазон таблицы для поиска.
В данном случае значение Январь не попало в диапазон поиска, поэтому появилась ошибка #Н/Д.
Также часто при появлении новых строк в таблице-источнике забывают исправлять диапазон в формуле ВПР (он как бы не дотягивается до конца таблицы), тогда тоже будет ошибка.
Когда Интервальный просмотр может быть = 1
Аргумент Интервальный просмотр в ВПР может принимать только два значения — 0 или 1 (если его не указать, то по умолчанию считается 1).
Во всех предыдущих примерах мы использовали интервальный просмотр = 0. Это подходит для большинства ситуаций на практике.
Но иногда необходимо использовать интервальный просмотр = 1. Как правило, он используется для числовых критериев, чтобы подтянуть значение из определенного диапазона критериев.
Более подробно об этом — в статье
В этой статье мы узнали, как сделать ВПР в Excel, надеюсь, это была понятная инструкция.
Сообщество Excel Analytics | обучение Excel
Канал на Яндекс.Дзен
Вам может быть интересно:
В табличном редакторе Microsoft Excel множество различных формул и функций. Они позволяют сэкономить время и избежать ошибок – достаточно правильно написать формулу и подставить нужные значения.
В этой статье мы рассмотрим функцию ВПР (или VLOOKUP, что означает «вертикальный просмотр»). Функция ВПР помогает работать с данными из двух таблиц и подтягивать значения из одной в другую. Использовать ее удобно, когда нужно посчитать выручку или прикинуть бюджет, если в одной таблице указан прайс-лист, а в другой количество проданного товара.
Допустим, есть таблица с количеством проданного товара и таблица с ценами на эти товары
Необходимо к каждому товару из таблицы слева добавить цену из прайса справа.
Как создать функцию ВПР в Excel
Необходимая последовательность значений в функции называется синтаксис. Обычно функция начинается с символа равенства «=», затем идет название функции и аргументы в скобках.
Записываем формулу в столбик цены (С2). Это можно сделать двумя способами:
-
Выделить ячейку и вписать функцию.
-
Выделить ячейку → нажать на Fx (Shift +F3) → выбрать категорию «Ссылки и массивы» → выбрать функцию ВПР → нажать «ОК».
После этого открывается окно, где можно заполнить ячейки аргументов формулы.
Синтаксис функции ВПР выглядит так:
=ВПР(искомое значение;таблица;номер столбца;интервальный просмотр)
В нашем случае получится такая формула:
=ВПР(A2;$G$2:$H$11;2;0)
Аргументы функции ВПР
Сейчас разберемся что и куда писать.
Со знаком равенства «=» и названием «ВПР» все понятно. Поговорим об аргументах. Они записываются в скобках через точку с запятой или заполняются в ячейки в окне функции. Формула ВПР имеет 4 аргумента: искомое значение, таблица, номер столбца и интервальный просмотр.
Искомое значение – это название ячейки, из которой мы будем «подтягивать» данные. Формула ВПР ищет полное или частичное совпадение в другой таблице, из которой берет информацию.
В нашем случае выбираем ячейку «A2», в ней находится наименование товара. ВПР возьмет это название и будет искать аналогичную ячейку во второй таблице с прайсом.
=ВПР(A2;
Таблица – это диапазон ячеек, из которых мы будем «подтягивать» данные для искомого значения. В этом аргументе используем абсолютные ссылки. Это значит, что в формуле таблица будет выглядеть как «$G$2:$H$11» вместо «G2:H11». Знаки «$» можно поставить вручную, а можно выделить «G2:H11» внутри формулы и нажать F4. Если этого не сделать, таблица не зафиксируется в формуле и изменится при копировании.
В нашем случае – это таблица с прайсом. Формула будет искать в ней совпадение с ячейкой, которую указали в первом аргументе формулы – A2 (Кофе). Нажимаем F4 и делаем ссылку абсолютной.
=ВПР(A2;$G$2:$H$11
Номер столбца – это столбец таблицы, из которой нужно взять данные. Именно из него мы будем «подтягивать» результат.
-
Формула сканирует таблицу по вертикали.
-
Находит в самом левом столбце совпадение с искомым значением.
-
Смотрит в столбец напротив, очередность которого мы указываем в этом аргументе.
-
Передает данные в ячейку с формулой.
В нашем случае – это столбец с ценой продуктов в прайсе. Формула ищет искомое значение ячейки A2 (Кофе) в первом столбце прайса и «подтягивает» данные из второго столбца (потому что мы указали цифру 2) в ячейку с формулой.
=ВПР(A2;$G$2:$H$11;2
Интервальный просмотр – это параметр, который может принимать 2 значения: «истина» или «ложь». Истина обозначается в формуле цифрой 1 и означает приблизительное совпадение с искомым значением. Ложь обозначается цифрой 0 и подразумевает точное совпадение. Приблизительный поиск и критерий «истина» обычно используют при работе с числами, а точный и «ложь» – в работе с наименованиями.
В нашем случае искомое значение – это текстовое наименование. Поэтому используем точный поиск – ставим цифру 0 и закрываем скобку.
=ВПР(A2;$G$2:$H$11;2;0)
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Автозаполнение
В конце протягиваем формулу вниз до конца, в результате чего происходит автозаполнение.
Чтобы функция ВПР правильно сработала во время автозаполнения, искомое значение должно быть относительной ссылкой, а таблица – абсолютной.
-
В нашем случае искомое значение – A2. Это относительная ссылка на ячейку, потому что в ней нет знаков «$». Благодаря этому ссылка на искомое значение меняется относительно каждой строчки, когда происходит автозаполнение в другие ячейки: A2 → A3 → … → A11. Это удобно, когда необходимо повторить формулу на несколько строк, ведь ее не приходится писать заново.
-
Таблица зафиксирована абсолютной ссылкой «$G$2:$H$11». Это означает, что ссылки на ячейки не изменятся во время автозаполнения. Таким образом, расчет каждый раз будет корректным и опираться на таблицу.
ВПР и приблизительный интервальный просмотр
В предыдущем примере мы «подтягивали» значения из таблицы, используя точный интервальный просмотр. Он подходит для работы с наименованиями. Теперь разберем ситуацию, когда может понадобиться приблизительный интервальный просмотр.
Задача. В магазин привезли товар. Необходимо присвоить каждому товару размер партии, опираясь на его количество.
Товары такие же, как и в первом примере, но задача изменилась: нужно привязать формулу не к наименованию, а к количеству
Решение. Заполняем формулу ВПР в ячейке «Партия», как было показано в предыдущем примере.
Разница в том, что теперь искомое значение – число, а интервальный просмотр – истина, что означает приблизительный поиск. Получается вот такой результат:
Что произошло? Аргумент «интервальный просмотр» имеет значение 1. Это значит, что формула ВПР ищет в таблице ближайшее меньшее искомое значение.
В нашем случае количество товара «Кофе» – 380. ВПР берет это число в виде искомого значения, после чего ищет ближайшее меньшее в соседней таблице – число 300. В конце функция «подтягивает» данные из столбца напротив («Крупная»). Если количество товара «Кофе» = 340 – это «Крупная партия». Важно, чтобы крайний левый столбец таблицы, которая указана в формуле, был отсортирован по возрастанию. В противном случае ВПР не сработает.
Значения и данные во второй таблице отсортированы по убыванию – ВПР не работает
Итоги
-
Функция ВПР означает вертикальный просмотр. Она просматривает крайний левый столбец таблицы сверху вниз.
-
Синтаксис функции: =ВПР(искомое значение;таблица;номер столбца;интервальный просмотр).
-
Функцию можно вписать вручную или в специальном окне (Shift + F3).
-
Искомое значение – относительная ссылка, а таблица – абсолютная.
-
Интервальный просмотр может искать точное или приблизительное совпадение с искомым значением.
-
Приблизительный поиск и критерий «истина» обычно используют при работе с числами, а точный и «ложь» – в работе с наименованиями.
-
Порядок работы с функцией подходит для Гугл-таблиц.
Функция ВПР (VLOOKUP) в Excel используется для поиска данных из одной таблицы и сопоставления их с данными из другой таблицы.
Содержание
- Функция ВПР в Excel для чайников
- Синтаксис
- Аргументы функции
- Дополнительная информация
- Примеры использования ВПР в Excel
- Пример 1. Ищем результат экзамена для студента
- Пример 2. Двухфакторный поиск данных
- Пример 3. Используем выпадающий список при двух факторном поиске
- Пример 4. Трех факторный поиск данных ВПР
- Пример 5. Получаем последнее значение колонки с помощью функции VLOOKUP (ВПР)
- Пример 6. Частичный поиск с использованием символов подстановочных знаков и ВПР
- Пример 7. Функция ВПР возвращает ошибку, несмотря на совпадение в значении поиска
- Пример 8. Функция ВПР в Excel с несколькими условиями
- Пример 9. Обработка ошибок с помощью функции ВПР
Функция ВПР в Excel для чайников
На примере ниже, в таблице справа, мы хотим подставить данные результатов экзамена по математике для студента Сидорова. Нам известны данные по всем студентам из таблицы слева. Используя формулу, мы можем подставить необходимые для нас данные.
Синтаксис
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup]) — английская версия
=ВПР(искомое_значение, таблица, номер_столбца, [интервальный_просмотр]) — русская версия
Аргументы функции
- lookup_value (искомое_значение) — это величина для поиска, из крайнего левого столбца таблицы. Это может быть значение, ссылка на ячейку или текстовая строка. В примере со студентами это их фамилии;
- table_array (таблица) — это диапазон данных, в котором будет осуществлен поиск. Это может быть ссылка на диапазон ячеек или именованный диапазон. В примере с таблицей со студентами, это будет вся таблица, которая содержит оценку и фамилии студентов;
- col_index (номер_столбца) — это порядковый номер столбца в диапазоне с данными, из которого будет получена искомая величина;
- [range lookup] ([интервальный_просмотр]) — этот аргумент указывает на точность совпадения данных при поиске. Укажите «0» — если точное, «1» — если приблизительное совпадение.
Дополнительная информация
- совпадение искомых данных может быть точным и приблизительным;
- при сопоставлении по приблизительной точности данных убедитесь, что данные в таблицах отсортированы в убывающем порядке (от большого к малому). Иначе, результат сопоставления будет некорректным;
- при сопоставлении данных по приблизительной точности:
— если функция не найдет искомое значение, она выдаст наибольшую величину, которая будет меньше чем значения поиска;
— если функция при сопоставлении выдает ошибку #N/A, то искомое значение меньше чем самая маленькая величина в искомом диапазоне;
— вы можете использовать подстановочные знаки для искомых значений.
Примеры использования ВПР в Excel
Пример 1. Ищем результат экзамена для студента
На примере ниже, в левой колонке таблицы указан список студентов. В правой части таблицы указаны итоговые баллы по экзаменам этих студентов.
Перед нами стоит задача узнать, какой балл получил студент Петров по Физике.
Узнать это мы можем с помощью формулы ниже:
=VLOOKUP(«Петров»,$A$3:$E$10,3,0) — английская версия
=ВПР(«Петров»;$A$3:$E$10;3;0) — русская версия
Формула выше состоит из четырех аргументов:
- “Петров” — фамилия, данные по которой, ищем;
- $A$3:$E$10 — диапазон данных с результатами экзаменов;
- “3” — порядковый номер столбца диапазона данных со значением оценки по Физике;
- “0” — точное совпадение искомого значения.
Ниже, наглядно изображено как работает по примеру наша функция.
Сначала, она ищет в крайней левой колонке диапазона данных фамилию “Петров”. Поиск происходит сверху вниз.
Как только Excel нашел точное совпадение “Петров” в диапазоне данных, система “шагает” в право, на третью колонку для отображения искомых данных.
Используя этот подход вы можете получить любые данные по каждому студенту и учебному предмету.
Например, чтобы найти результаты экзамена для студента Пескова по Химии, нам нужна формула:
=VLOOKUP(«Песков»,$A$20:$E$28,4,0) — английская версия
=ВПР(«Песков»;$A$20:$E$28;4;0) — русская версия
В приведенном выше примере фамилия студента указана в двойных кавычках. Также, можно использовать ссылку на ячейку с искомым значением. Ссылка на ячейку делает формулу динамической.
Например, если у вас есть ячейка с фамилией, и вы ищете оценку по математике, результат будет автоматически обновляться при изменении имени учащегося (как показано ниже):
Если в качестве аргумента поиска будет введена фамилия студента, которой нет в диапазоне данных, функция выдаст ошибку.
Пример 2. Двухфакторный поиск данных
На примере выше мы указывали вручную в качестве атрибута «номер_столбца» порядковый номер колонки с данными.
Но что, если мы хотим сделать поиск динамическим? Что если, мы хотим вводить имя студента и название предмета и функция автоматически выведет нужные данные? Для этого нам потребуется использовать двух факторный поиск.
Ниже пример двух факторного поиска:
Чтобы сделать двух факторную формулу поиска, важно сделать выбор данных из колонок динамическим. Так, когда пользователь меняет название предмета: Физика, Математика и т.д., в формуле изменяется соответствующий атрибут столбца с данными.
Чтобы сделать это, нам потребуется функция MATCH (ПОИСКПОЗ) в качестве аргумента отвечающего за порядковый номер колонки.
Так будет выглядеть формула для двухфакторного поиска:
=VLOOKUP($G$5,$A$4:$E$12,MATCH($H$4,$A$3:$E$3,0),0) — английская версия
=ВПР($G$5;$A$4:$E$12;ПОИСКПОЗ($H$4;$A$3:$E$3;0);0) — русская версия
В формуле выше используется функция MATCH (ПОИСКПОЗ), которая отвечает за порядковый номер колонки с данными. MATCH (ПОИСКПОЗ) принимает название учебного предмета как значение поиска (в ячейке “H4”) и возвращает его позицию в диапазоне ячеек “A2:E2”.
Если указать “Математика”, Excel вернет “2”, поскольку “Математика” находится в ячейке “B2” (вторая по счету в этом массиве).
Пример 3. Используем выпадающий список при двух факторном поиске
Используя способ из примера №2, нам требуется делать много ручной работы. Высок риск допустить ошибку и потратить много времени, особенно, если вы работаете с большим объемом данных.
Здесь лучше использовать выпадающие списки как значения для поиска (в нашем примере это фамилии студентов и учебные предметы).
Основываясь на тех данных, что вы выберете из выпадающего списка, функция автоматически выведет необходимые данные, как это указано на примере ниже:
Такой подход позволяет создать дашборд, с помощью которого вы легко сможете обрабатывать большие списки с данными.
Ниже мы рассмотрим, как сделать такую таблицу.
Для этого нам потребуется формула из Примера №2:
=VLOOKUP($G$5,$A$4:$E$12,MATCH($H$4,$A$3:$E$3,0),0) — английская версия
=ВПР($G$5;$A$4:$E$12;ПОИСКПОЗ($H$4;$A$3:$E$3;0);0) — русская версия
Данные поиска были преобразованы в выпадающие списки.
Чтобы сделать выпадающий список, нужно:
- Выбрать ячейку, в которой вы хотите создать выпадающий список. В нашем примере в ячейке “G4” мы указали фамилии студентов.
- Перейти к вкладке Данные -> Проверка данных.
- В диалоговом окне «Проверка данных» на вкладке «Настройки» выбрать «Список» и в раскрывающемся списке выберите «Разрешить».
- В источнике выбрать $A$3:$A$10
- Нажать «ОК».
Теперь у вас появится раскрывающийся список в ячейке “G4”. Аналогично, вы можете создать его в “H3” для предметов.
Пример 4. Трех факторный поиск данных ВПР
Что такое трех факторный поиск?
В Примере 2 мы использовали одну таблицу с оценками для студентов по разным предметам. Это пример двухфакторного поиска, поскольку мы используем две переменные для получения оценки (фамилия студента и предмет).
Теперь предположим, что к концу года студент прошел три уровня экзаменов: «Вступительный», «Полугодовой» и «Финальный экзамен».
Трехсторонний поиск — это возможность получить отметки студента по предмету с определенным уровнем экзамена.
Вот пример трехстороннего поиска:
В приведенном выше примере, функция ищет данные в трех разных таблицах с данными («Вступительный», «Полугодовой» и «Финальный экзамен») и возвращает значения оценок студента по определенному предмету по конкретному уровню экзамена.
Для таких расчетов нам поможет формула:
=VLOOKUP(G5,CHOOSE(IF(H3=»Вступительный»,1,IF(H3=»Полугодовой»,2,3)),$A$4:$E$12,$A$16:$E$24,$A$28:$E$36),MATCH(H4,$A$3:$E$3,0),0) — английская версия
=ВПР(G5;ВЫБОР(ЕСЛИ(H3=»Вступительный»;1;ЕСЛИ(H3=»Полугодовой»;2;3));$A$4:$E$12;$A$16:$E$24;$A$28:$E$36);ПОИСКПОЗ(H4;$A$3:$E$3;0);0) — русская версия
Эта формула использует функцию CHOOSE (ВЫБОР), чтобы убедиться, что данные выбраны из правильной таблицы. Давайте проанализируем часть формулы CHOOSE (ВЫБОР):
CHOOSE(IF(H3=»Вступительный»,1,IF(H3=»Полугодовой»,2,3)),$A$4:$E$12,$A$16:$E$24,$A$28:$E$36),MATCH(H4,$A$3:$E$3,0),0) — английская версия
ВЫБОР(ЕСЛИ(H3=»Вступительный»;1;ЕСЛИ(H3=»Полугодовой»;2;3));$A$4:$E$12;$A$16:$E$24;$A$28:$E$36);ПОИСКПОЗ(H4;$A$3:$E$3;0);0) — русская версия
Первый аргумент формулы (IF(H3=»Вступительный»,1,IF(H3=»Полугодовой»,2,3) или (ЕСЛИ(H3=»Вступительный»;1;ЕСЛИ(H3=»Полугодовой»;2;3) проверяет ячейку “H3” и определяет, на какой уровень экзамена ссылаются. Если это «Вступительный», функция возвращает данные из диапазона $A$4:$E$12, который содержит оценки для вступительного экзамена.
Если выбран уровень «Полугодовой», то система возвращает данные из диапазона $A$16:$E$24, в другом случае она возвращает данные из диапазона $A$28:$E$36.
Такой подход делает массив таблиц динамическим и трех факторным.
Больше лайфхаков в нашем Telegram Подписаться
Пример 5. Получаем последнее значение колонки с помощью функции VLOOKUP (ВПР)
С помощью ВПР вы можете вычислить последнее число из списка.
Наибольшее положительное число, которое вы можете использовать в Excel, равно 9.99999999999999E + 307. Это также означает, что самый большой номер поиска в номере VLOOKUP также 9.99999999999999E + 307.
Я не думаю, что вам когда-нибудь понадобится какой-то расчет, в котором участвует такое большое число. Но с его помощью мы можем получить последнее число в списке.
Предположим, у вас есть набор данных (в диапазоне ячеек A1:A14), как показано ниже, и вы хотите получить число из последней ячейки в списке.
Для этого нам подойдет следующая формула:
=VLOOKUP(9.99999999999999E+307,$A$1:$A$14,TRUE) — английская версия
=ВПР(9.99999999999999E+307;$A$1:$A$14;ИСТИНА)
Обратите внимание, что в формуле выше используется приблизительная точность совпадения данных (несмотря на это нет необходимости упорядочивать список).
Вот как работает функция с приблизительной точностью совпадения данных. Она просматривает левую колонку сверху вниз.
- Если он находит точное совпадение, она возвращает это значение;
- Если она находит число, превышающее значение поиска => возвращает число в ячейке над ним;
- Если значение поиска больше всех чисел в списке, функция возвращает последнее число из списка.
В нашем примере работает третий сценарий.
Число 9.99999999999999E + 307 это самое большое число, которое можно использовать в Excel, когда оно используется как критерий поиска, тогда функция VLOOKUP (ВПР) возвращает последнее число из списка.
Таким же образом вы можете использовать этот принцип для возврата последнего текстового элемента из списка. Вот формула, которая может это сделать:
=VLOOKUP(«яяя»,$A$1:$A$14,1,TRUE) — английская версия
=ВПР(«яяя»;$A$1:$A$14;1;ИСТИНА) — русская версия
Здесь действует та же логика. Система просматривает все названия из списка. Так как “яяя” самое большое текстовое значение => результатом вычисления будет самое крайнее значение из списка данных.
Пример 6. Частичный поиск с использованием символов подстановочных знаков и ВПР
Символы подстановки в Excel могут быть полезными во многих ситуациях.
Частичный поиск необходим, когда вам нужно искать значение в списке, в котором нет точного соответствия искомым данным.
Например, у вас есть набор данных, как показано ниже, и вы хотите найти компанию “ABC” в списке, но в списке есть только “ABC Ltd” вместо “ABC”.
Вы не можете использовать “ABC” в качестве значения поиска, так как в столбце “A” нет точного соответствия. Приблизительное совпадение часто приводит к ошибочным результатам и требует сортировки списка в порядке возрастания.
Однако, вы можете использовать подстановочный знак в VLOOKUP (ВПР) для более точного соответствия данных.
Введите следующую формулу в ячейку “D2” и перетащите ее в другие ячейки:
=VLOOKUP(«*»&C2&»*»,$A$2:$A$8,1,FALSE) — английская версия
=ВПР(«*»&C2&»*»;$A$2:$A$8;1;ЛОЖЬ) — русская версия
Как это работает?
В формуле, указанной выше мы добавили к значению поиска “звездочки” с двух сторон. Указывая такие “звездочки” вы даете Excel понять, что готовы осуществить поиск, при котором в искомых данных как в начале так и в конце значения могут быть любые другие слова, буквы или цифры.
Таким образом, осуществляя поиск, Excel будет понимать, что необходимо искать значение, которое содержит слово из ячейки “С2” (в нашем примере).
Например, в ячейке “C2” указано название компании “ABC”, поэтому функция просматривает значения в диапазоне данных “A2:A8” и ищет “ABC”. Она находит соответствие в ячейке “A2”, так как та содержит слово “ABC” в “ABC Ltd”. Не имеет значения, есть ли какие-либо символы слева или справа от “ABC”.
Примечание: ВПР всегда возвращает первое совпадающее значение и перестает искать дальше. Поэтому, если у вас есть название компании “ABC Ltd”. и “ABC Corporation” в списке, она вернет первый по порядку и проигнорирует остальные.
Пример 7. Функция ВПР возвращает ошибку, несмотря на совпадение в значении поиска
Это может свести вас с ума, когда вы увидите, что имеется соответствующее значение поиска, а функция возвращает ошибку.
Например, у вас в таблице есть очевидное соответствие (Иван), но система по-прежнему возвращает ошибку.
Рассматривая значения в таблице глубже, вы можете заметить, что в диапазоне данных значение “Иван “ написано с пробелом. Если в диапазоне данных по которым вы осуществляете поиск есть пробелы до значений, после или между словами, то функция их не сопоставит.
Решение есть, и зовут его — функция TRIM. Она удаляет все лишние пробелы в значениях.
Ниже формула, которая поможет вам сопоставить данные несмотря на лишние пробелы в диапазоне данных.
=VLOOKUP(«Иван»,TRIM($A$2:$A$15),1,0) — английская версия
=ВПР(«Иван»,СЖПРОБЕЛЫ($A$2:$A$15);1;0) — русская версия
Для того, чтобы функция TRIM (СЖПРОБЕЛЫ) заработала при использовании VLOOKUP (ВПР), следует вводить формулу после набора не с помощью клавиши Enter на клавиатуре, а с помощью сочетания клавиш Ctrl + Shift + Enter.
Пример 8. Функция ВПР в Excel с несколькими условиями
Функция в своей базовой форме может искать одно значение поиска и возвращать соответствующие данные из указанного диапазона данных.
Но часто нам необходимо использовать VLOOKUP с поиском по несколькими критериям.
Представим, что у вас есть таблица с результатами экзаменов студентов по трем уровням экзамена: «Вступительный», «Полугодовой» и «Финальный экзамен»:
Сопоставить данные по конкретному студенту, предмету и уровню экзамена с помощью функции ВПР — нелегкая задача, так как сопоставляя данные по студенту и предмету, она будет выдавать результат первого совпадения, но далеко не факт, что этот результат будет корректным и соответствовать необходимому уровню экзамена.
Осуществить поиск по студенту + названию предмета + уровню экзамена можно с помощью создания вспомогательного столбца, как показано на примере ниже:
Теперь, нам необходимо создать уникальный ID для каждого студента и уровня экзамена с помощью формулы во вспомогательном столбце: =A2&»|»&B2.
Протяните эту формулу в каждую ячейку столбца данной таблицы. Таким образом мы создадим уникальный ID, по которому мы можем сопоставлять данные.
Благодаря вспомогательному столбцу мы избежали того, что при сопоставлении данных, функция будет выдавать данные по не нужному уровню экзамена.
Теперь вы можете использовать значения вспомогательного столбца в качестве значений поиска.
Ниже формула, с помощью которой удобно сопоставлять данные из вашей таблицы в список студентов, распределенных по уровню экзамена.
=VLOOKUP($F3&»|»&G$2,$C$2:$D$19,2,0) — английская версия
=ВПР($F3&»|»&G$2;$C$2:$D$19;2;0) — русская версия
С помощью этой формулы мы объединили имя студента и уровень экзамена, чтобы получить значение поиска которое мы проверяем его во вспомогательном столбце и получить данные.
Пример 9. Обработка ошибок с помощью функции ВПР
Функция возвращает ошибку каждый раз, когда не может сопоставить значение поиска в заданном диапазоне данных.
В Excel есть возможность заменить сообщения об ошибке на заданное вами текстовое или числовое значение типа “Нет”, “Не доступно”, “Нет данных” и.т.д.
На примере ниже, мы пытаемся сопоставить результаты экзамена студента Ивана из таблицы. Но так как данных по Ивану в таблице нет, функция выдает ошибку.
Для того, чтобы заменить сообщение ошибки на какое-то более формальное значение нам поможет функция ЕСЛИОШИБКА(IFERROR):
=IFERROR(VLOOKUP(D2,$A$2:$B$7,2,0),»Нет данных») — английская версия
=ЕСЛИОШИБКА(ВПР(D2;$A$2:$B$7;2;0);»Нет данных») — русская версия
Функция ЕСЛИОШИБКА(IFERROR) проверяет, если в результате вычислений по формуле выдается ошибка, то она выдает, то значение, которое вы указали в функции ЕСЛИОШИБКА(IFERROR), например “Нет данных”.