Cum se utilizează funcția Excel VLOOKUP -

rezumat

VLOOKUP este o funcție Excel pentru a căuta date într-un tabel organizat vertical. VLOOKUP acceptă potrivirea aproximativă și exactă, și metacaracterele (*?) Pentru potrivirile parțiale. Valorile de căutare trebuie să apară în prima coloană a tabelului trecută în VLOOKUP.

Scop

Căutați o valoare într-un tabel prin potrivirea în prima coloană

Valoare returnată

Valoarea potrivită dintr-un tabel.

Sintaxă

= VLOOKUP (valoare, tabel, col_index, (range_lookup))

Argumente

  • valoare - Valoarea de căutat în prima coloană a unui tabel.
  • table - Tabelul din care să extrageți o valoare.
  • col_index - Coloana din tabel din care să extrageți o valoare.
  • range_lookup - (opțional) TRUE = potrivire aproximativă (implicit). FALS = potrivire exactă.

Versiune

Excel 2003

Note de utilizare

VLOOKUP este o funcție Excel pentru a obține date dintr-un tabel organizat vertical. Valorile de căutare trebuie să apară în prima coloană a tabelului trecută în VLOOKUP. VLOOKUP acceptă potrivirea aproximativă și exactă, și metacaracterele (*?) Pentru potrivirile parțiale.

Date verticale | Numere coloane | Arată doar corect | Moduri de potrivire | Potrivire exactă | Meci aproximativ | Primul meci | Meci cu comodine | Căutare bidirecțională | Criterii multiple | # N / A Erori | Videoclipuri

V este pentru verticală

Scopul VLOOKUP este de a obține informații dintr-un tabel organizat astfel:

Folosind numărul comenzii din coloana B ca valoare de căutare, VLOOKUP poate obține codul de client, suma, numele și statul pentru orice comandă. De exemplu, pentru a obține numele clientului pentru comanda 1004, formula este:

=VLOOKUP(1004,B5:F9,4,FALSE) // returns "Sue Martin"

Pentru date orizontale, puteți utiliza HLOOKUP, INDEX și MATCH sau XLOOKUP.

VLOOKUP se bazează pe numerele de coloane

Când utilizați VLOOKUP, imaginați-vă că fiecare coloană din tabel este numerotată, începând de la stânga. Pentru a obține o valoare dintr-o anumită coloană, furnizați numărul corespunzător ca „index coloană”. De exemplu, indexul coloanei pentru preluarea prenumelui de mai jos este 2:

Numele și adresa de e-mail pot fi recuperate cu coloanele 3 și 4:

=VLOOKUP(H3,B4:E13,2,FALSE) // first name =VLOOKUP(H3,B4:E13,3,FALSE) // last name =VLOOKUP(H3,B4:E13,4,FALSE) // email address

VLOOKUP arată doar corect

VLOOKUP poate privi doar spre dreapta. Datele pe care doriți să le extrageți (valorile rezultatelor) pot apărea în orice coloană din dreapta valorilor de căutare:

Dacă trebuie să căutați valori în stânga, consultați INDEX și MATCH sau XLOOKUP.

Potrivire exactă și aproximativă

VLOOKUP are două moduri de potrivire, exactă și aproximativă. Numele argumentului care controlează potrivirea este „ range_lookup ”. Acesta este un nume confuz, deoarece se pare că are ceva de-a face cu intervale de celule precum A1: A10. De fapt, cuvântul „interval” în acest caz se referă la „interval de valori” - când range_lookup este ADEVĂRAT, VLOOKUP se va potrivi mai degrabă cu un interval de valori decât cu o valoare exactă. Un bun exemplu în acest sens este utilizarea VLOOKUP pentru a calcula notele.

Este important să înțelegem că range_lookup implicit este TRUE, ceea ce înseamnă că VLOOKUP va folosi în mod implicit potrivirea aproximativă, ceea ce poate fi periculos. Setați range_lookup la FALSE pentru a forța potrivirea exactă:

=VLOOKUP(value, table, col_index) // approximate match (default) =VLOOKUP(value, table, col_index, TRUE) // approximate match =VLOOKUP(value, table, col_index, FALSE) // exact match

Notă: De asemenea, puteți furniza zero (0) în loc de FALS pentru o potrivire exactă.

Potrivire perfecta

În majoritatea cazurilor, probabil că veți dori să utilizați VLOOKUP în modul de potrivire exactă. Acest lucru are sens atunci când aveți o cheie unică de utilizat ca valoare de căutare, de exemplu, titlul filmului din aceste date:

Formula din H6 pentru a găsi Anul , bazată pe o potrivire exactă a titlului filmului, este:

=VLOOKUP(H4,B5:E9,2,FALSE) // FALSE = exact match

Meci aproximativ

In cases when you want the best match , not necessarily an exact match , you'll want to use approximate mode. For example, below we want to look up a commission rate in the table G5:H10. The lookup values come from column C. In this example, we need to use VLOOKUP in approximate match mode, because in most cases an exact match will never be found. The VLOOKUP formula in D5 is configured to perform an approximate match by setting the last argument to TRUE:

=VLOOKUP(C5,$G$5:$H$10,2,TRUE) // TRUE = approximate match

VLOOKUP will scan values in column G for the lookup value. If an exact match is found, VLOOKUP will use it. If not, VLOOKUP will "step back" and match the previous row.

Note: data must be sorted in ascending order by lookup value when you use approximate match mode with VLOOKUP.

First match

In the case of duplicate values, VLOOKUP will find the first match when the match mode is exact. In screen below, VLOOKUP is configured to find the price for the color "Green". There are three entries with the color Green, and VLOOKUP returns the price for the first entry, $17. The formula in cell F5 is:

=VLOOKUP(E5,B5:C11,2,FALSE) // returns 17

Wildcard match

The VLOOKUP function supports wildcards, which makes it possible to perform a partial match on a lookup value. For instance, you can use VLOOKUP to retrieve values from a table after typing in only part of a lookup value. To use wildcards with VLOOKUP, you must specify exact match mode by providing FALSE or 0 for the last argument, range_lookup . The formula in H7 retrieves the first name, "Michael", after typing "Aya" into cell H4:

=VLOOKUP($H$4&"*",$B$5:$E$104,2,FALSE)

Read a more detailed explanation here.

Two-way lookup

Inside the VLOOKUP function, the column index argument is normally hard-coded as a static number. However, you can also create a dynamic column index by using the MATCH function to locate the right column. This technique allows you to create a dynamic two-way lookup, matching on both rows and columns. In the screen below, VLOOKUP is configured to perform a lookup based on Name and Month. The formula in H6 is:

=VLOOKUP(H4,B5:E13,MATCH(H5,B4:E4,0),0)

For more details, see this example.

Note: In general, INDEX and MATCH is a more flexible way to perform two-way lookups.

Multiple criteria

The VLOOKUP function does not handle multiple criteria natively. However, you can use a helper column to join multiple fields together, and use these fields like multiple criteria inside VLOOKUP. In the example below, Column B is a helper column that concatenates first and last names together with this formula:

=C5&D5 // helper column

VLOOKUP is configured to do the the same thing to create a lookup value. The formula in H6 is:

=VLOOKUP(H4&H5,B5:E13,4,0)

For details, see this example.

Note: INDEX and MATCH and XLOOKUP are more robust ways to handle lookups based on multiple criteria.

VLOOKUP and #N/A errors

If you use VLOOKUP you will inevitably run into the #N/A error. The #N/A error just means "not found". For example, in the screen below, the lookup value "Toy Story 2" does not exist in the lookup table, and all three VLOOKUP formulas return #N/A:

One way to "trap" the NA error is to use the IFNA function like this:

The formula in H6 is:

=IFNA(VLOOKUP(H4,B5:E9,2,FALSE),"Not found")

The message can be customized as desired. To return nothing (i.e. to display a blank result) when VLOOKUP returns #N/A you can use an empty string like this:

=IFNA(VLOOKUP(H4,B5:E9,2,FALSE),"") // no message

The #N/A error is useful because it tells you something is wrong. In practice, there are many reasons why you might see this error, including:

  • The lookup value does not exist in the table
  • The lookup value is misspelled, or contains extra space
  • Match mode is exact, but should be approximate
  • The table range is not entered correctly
  • You are copying VLOOKUP, and the table reference is not locked

Read more: VLOOKUP without #N/A errors

More about VLOOKUP

  • More VLOOKUP examples
  • VLOOKUP videos
  • 23 tips for using VLOOKUP

Other notes

  • Range_lookup controls whether value needs to match exactly or not. The default is TRUE = allow non-exact match.
  • Set range_lookup to FALSE to require an exact match and TRUE to allow a non-exact match .
  • If range_lookup is TRUE (the default setting), a non-exact match will cause the VLOOKUP function to match the nearest value in the table that is still less than value .
  • When range_lookup is omitted, the VLOOKUP function will allow a non-exact match, but it will use an exact match if one exists.
  • If range_lookup is TRUE (the default setting) make sure that lookup values in the first row of the table are sorted in ascending order. Otherwise, VLOOKUP may return an incorrect or unexpected value.
  • If range_lookup is FALSE (require exact match), values in the first column of table do not need to be sorted.

Related videos

Cum se folosește VLOOKUP pentru potrivirile aproximative În acest videoclip, ne uităm la modul de configurare a VLOOKUP pentru a căuta valori pe baza unei potriviri aproximative. Acest lucru este bun pentru cote de impozitare, taxe poștale, comisioane și altele asemenea. Cum să înlocuim IF-urile imbricate cu VLOOKUP În acest scurt videoclip, ne uităm la înlocuirea unei formule IF imbricate tipice cu o formulă VLOOKUP. Comparativ cu instrucțiunile IF imbricate, VLOOKUP este mai simplu și mai transparent. De asemenea, este mai ușor să ajustați mai târziu. Cum să grupați valorile cu VLOOKUP În acest videoclip, vom analiza o modalitate simplă de a utiliza VLOOKUP pentru a grupa datele în categorii specifice. Cum să utilizați VLOOKUP cu un tabel În acest videoclip, ne uităm la cum să utilizați VLOOKUP pentru a căuta valori într-un tabel Excel. Cum să utilizați INDEX și MATCH cu un tabel În acest videoclip, vom analiza cum să utilizați INDEX și MATCH cu un tabel Excel. Utilizarea INDEX și MATCH cu un tabel Excel este extraordinar de simplă. Referințe structurate în interiorul unui tabel În acest videoclip, vom analiza modul de utilizare a sintaxei de referință structurate în interiorul unui tabel.

Articole interesante...