
Обща формула
=VLOOKUP(val&"",table,col,0)
Обобщение
За да използвате функцията VLOOKUP за извличане на информация от таблица, където ключовите стойности са числа, съхранявани като текст, можете да използвате формула, която свързва празен низ ("") към числовата стойност за търсене, принуждавайки я към текст. В показания пример формулата в H3 е:
=VLOOKUP(id&"",planets,2,0) // returns "Earth"
където id (H2) и планетите (B3: B11) са наречени диапазони.
Забележка: Примерът е решение на проблема с несъответстващите числа и текст, които причиняват грешка # N / A. Ако няма несъответствие, заобиколното решение не е необходимо и можете да използвате нормална формула VLOOKUP.
Обяснение
Често срещана грешка в VLOOKUP е несъответствие между числа и текст. Най-често справочната колона в таблицата съдържа числови стойности, които приличат на числа, но всъщност са числа, съхранявани като текст. Когато истински номер се предава във VLOOKUP като първи аргумент, формулата връща грешка # N / A, въпреки че изглежда, че има съвпадение. На екрана по-долу е показан пример за този проблем:
Числата в колона B всъщност са текст, така че числовата стойност за търсене, 3, се проваля, въпреки че изглежда, че VLOOKUP трябва да съвпада с B5 и да връща "Земя". Можете да въведете число като текстова стойност, като предхождате числото с една кавичка (').
Най-доброто решение е да се уверите, че справочните стойности в таблицата наистина са числа. Ако обаче нямате контрол над таблицата, можете да модифицирате формулата VLOOKUP, за да принудите търсещата стойност да съответства на типа в таблицата. В показания пример принуждаваме числовата стойност за търсене към текст, като свързваме празен низ:
=VLOOKUP(id,planets,2,0) // original =VLOOKUP(id&"",planets,2,0) // revised
И преработената формула се грижи за грешката:
Можете също да направите същото с по-дълга формула, която използва функцията TEXT за преобразуване на числото в текст:
=VLOOKUP(TEXT(id,"@"),planets,2,0)
И числа, и текст
Ако не можете да сте сигурни кога ще имате числа и кога ще имате текст, можете да се погрижите за двете опции, като увиете VLOOKUP във функцията IFERROR и използвате формула, която обработва и двата случая:
=IFERROR(VLOOKUP(id,planets,3,0),VLOOKUP(id&"",planets,3,0))
Тук първо опитваме нормална формула VLOOKUP, която приема както търсещата стойност, така и първата колона в таблиците са числа. Ако това доведе до грешка, опитваме отново с преработената формула. Ако тази формула също се провали, VLOOKUP ще върне грешка # N / A както винаги.