VLOOKUP не работает (8 причин и решений)

  • Поделись Этим
Hugh West

Оглавление

VLOOKUP является одной из самых распространенных и полезных функций. Поскольку она широко используется, многие люди жалуются на то, что не работает VLOOKUP правильно или показывает неправильные результаты. Хотя VLOOKUP имеет некоторые ограничения, но большинство ошибок, которые мы получаем, связаны с неправильным пониманием синтаксиса или неаккуратным его использованием. В этой статье я объясню, почему VLOOKUP не работает.

Чтобы объяснение было понятным, я использую набор данных, который представляет информацию о продуктах конкретного фруктового магазина. В наборе данных есть 5 столбцов, а именно Фрукты , Идентификатор заказа, количество (кг), цена, и Дата заказа .

Скачать для практики

Не стесняйтесь скачать рабочую тетрадь по ссылке ниже.

VLOOKUP не работает в Excel.xlsx

8 причин, по которым VLOOKUP не работает

1. VLOOKUP не работает и показывает ошибку N/A

В этом разделе я покажу вам, почему #N/A ошибка происходит во время работы с функция VLOOKUP А также я предложу вам лучшее решение, чтобы избежать #N/A ошибка.

1.1. Ведущие и косые пробелы

В большом наборе данных возможность наличия лишних пробелов - обычное дело. Кроме того, трудно определить ошибку, поскольку вы не получите ее, если не просмотрите внимательно весь набор данных.

Здесь я применил VLOOKUP формулу правильно.

Сначала выберите ячейку для размещения результирующего значения.

➤ Я выбрал клетку I4

Затем введите следующую формулу в поле Формула бара .

=VLOOKUP(H4,B4:F12,2)

Здесь, в VLOOKUP функцию, я выбрал ячейку H4 в качестве lookup_value , и выбрал диапазон B4:F12 в качестве массив_таблиц Поскольку я хочу знать Идентификатор заказа учитывая 2 в качестве col_index_num .

Нажмите кнопку ENTER клавишу. Теперь, вы должны были получить Идентификатор заказа из поиск значение, но оно покажет #N/A .

Теперь, просмотрев набор данных, вы обнаружите, что lookup_value Apple имеет несколько ведущих мест, поэтому VLOOKUP не работает.

Решение

Чтобы удалить лишние пробелы в начале или конце строки, используйте lookup_value спор с функция TRIM в пределах VLOOKUP функция.

Позвольте мне показать вам, как вы можете использовать TRIM функция внутри VLOOKUP функция.

Чтобы избежать VLOOKUP ошибка введите следующую формулу в выделенную ячейку.

=VLOOKUP(TRIM(H4),B4:F12,2)

Здесь TRIM функция удалит все существующие ведущие и последующие пробелы выбранной ячейки H4 .

1.2. За ошибку в опечатке VLOOKUP не работает

Опечатка lookup_value это еще одна причина того, что не работает VLOOKUP .

Здесь вы увидите, что я правильно вставил формулу в выделенную ячейку.

=VLOOKUP(H4,B4:F12,2)

Нажмите кнопку ENTER но вместо того, чтобы показать Идентификатор заказа , он покажет вам #N/A ошибка.

Теперь посмотрите на lookup_value вы увидите, что написание Apple неверно, это причина VLOOKUP не работает.

Решение

Всегда тщательно набирайте lookup_value Вы должны сохранить точное написание значения из таблицы данных.

Пока я печатал lookup_value как в таблице, поэтому VLOOKUP работает.

1.3. Числовое значение, отформатированное как текст

В случае, если числовые значения форматируются как текст в массив_таблиц тогда он покажет вам #N/A ошибка при использовании VLOOKUP функция.

Я постараюсь получить Цена с помощью Идентификатор заказа в качестве lookup_value .

Сначала выберите ячейку для размещения результирующего значения.

➤ Я выбрал клетку I4

Затем введите следующую формулу в поле Формула бара .

=VLOOKUP(H4,C4:F12,3)

Нажмите кнопку ENTER Таким образом, вы получите #N/A ошибка вместо Цена .

Теперь, если вы пройдете через Идентификатор заказа столбец, то вы увидите число 1001 форматируется как текст. Это причина того, что не работает VLOOKUP .

Решение

Чтобы избежать подобных ошибок, всегда проверяйте формат числовых значений. Здесь я исправил числовой формат на числовой, поэтому VLOOKUP работает.

Читать далее: VLOOKUP Частичный текст из одной ячейки в Excel

1.4. Значение поиска не является крайним левым столбцом

Сайт VLOOKUP функция сохраняет последовательность, которая является lookup_value должен быть крайняя левая колонка Если нет, то ничего не получится.

Я постараюсь получить Цена с помощью Идентификатор заказа в качестве lookup_value .

Поэтому я использовал следующую формулу.

=VLOOKUP(H4,B4:F12,3)

Но здесь Идентификатор заказа столбец не является крайним левым столбцом в table_array B4:F12 вот почему он показывает #N/A ошибка.

Решение

Здесь вы можете избежать ошибки двумя способами.

⏩ Первое - вы можете изменить массив_таблиц где lookup_value будет самый левый столбец.

⏩ Во-вторых, вы можете разместить lookup_value столбец в самой левой позиции таблицы набора данных.

Читать далее: VLOOKUP с двумя значениями поиска в Excel (2 подхода)

1.5. Таблица увеличенного размера или вставка новой строки и столбца со значением

Иногда мы вставляем новые данные в наш набор данных, но забываем изменить массив_таблиц тогда VLOOKUP не может работать должным образом.

Я постараюсь получить Идентификатор заказа с помощью Фрукты в качестве lookup_value .

Поэтому я использовал следующую формулу.

=VLOOKUP(H4,B4:F12,2,FALSE)

Здесь я использовал точное совпадение тип, чтобы избежать вводящей в заблуждение информации, а также вставить информацию для Личи но получил ошибку, потому что я не обновил массив_таблиц .

Решение

Помните, что каждый раз, когда вы вставляете новые данные в таблицу набора данных, обновляйте таблицу таблица-массив также.

⏩ Здесь я обновил массив_таблиц в формуле.

=VLOOKUP(H4,B4:F14,2,FALSE)

⏩ Другой способ - преобразование набора данных в таблицу.

Сначала выберите диапазон ячеек.

Затем откройте Вставка >> выбрать Таблица

A диалоговое окно появится.

Затем нажмите OK .

Поскольку ваш набор данных теперь превращен в таблицу, вы можете просто использовать имя таблицы.

Читать далее: Почему VLOOKUP возвращает #N/A, когда совпадение существует? (5 причин и решений)

2. VLOOKUP не работает и показывает ошибку VALUE

Из этого раздела вы узнаете, почему ошибка #VALUE происходит во время работы с VLOOKUP Кроме того, я предложу вам все возможные решения, чтобы избежать #VALUE ошибка.

2.1. Для индексного номера колонки менее 1

Если вы по ошибке используете col_index_num менее 1 , тогда вы получите #VALUE ошибка.

В случае, если вы получите это #VALUE пожалуйста, проверьте свой col_index_num аргумент.

Читать далее: VLOOKUP с числами в Excel (4 примера)

2.2. Использование более 255 символов

Предположим, у вас есть длинный текст в качестве значения, которое больше, чем 255 персонажей, то у вас будет #VALUE ошибка.

Здесь, в A7 ячейку, я вставил значение, превышающее 255 персонажи.

Затем используйте следующую формулу

=VLOOKUP(G4,A4:E12,2)

Теперь вы можете видеть, что результат показывает #VALUE ошибка.

Решение

Чтобы избежать этой ошибки, вы можете либо уменьшить символ, либо использовать ИНДЕКС и функции MATCH вместо VLOOKUP .

Здесь я использовал МАТЧ и ИНДЕКС функция.

=INDEX($B$4:$B$12,MATCH(TRUE,INDEX($A$4:$A$12=G4,0),0))

Здесь, в ИНДЕКС функция выбрала абсолютную ссылку диапазона ячеек $B$4:$B$12 откуда я хочу вернуть значение.

В МАТЧ функция, данная TRUE в качестве lookup_value и использовал другой INDEX($A$4:$A$12=G4,0) функционировать как массив поиска затем использовали 0 в качестве тип_соответствия использовать Точное совпадение .

Нажмите кнопку ENTER и вы получите результат для lookup_value более чем 255 персонажи.

Читать далее: Функция INDEX MATCH в сравнении с функцией VLOOKUP (9 примеров)

Похожие чтения

  • Excel LOOKUP vs VLOOKUP: с 3 примерами
  • Как сделать VLOOKUP чувствительным к регистру в Excel (4 метода)
  • Excel VLOOKUP для поиска последнего значения в столбце (с альтернативами)
  • Как выполнить VLOOKUP с диким знаком в Excel (2 метода)
  • Excel VLOOKUP для возврата нескольких значений по вертикали

3. VLOOKUP не работает и показывает ошибку REF

Здесь вы узнаете, почему #REF ошибка происходит во время работы с VLOOKUP функцию, а также вы получите решение, как избежать #REF ошибка.

3.1. Использование таблицы Column Index Number Greater Than Table

В случае, если вы используете col_index_num больше, чем количество столбцов, которые вы имеете в массив_таблиц тогда вы получите #REF ошибка.

Здесь я использовал 6 в качестве номер_индекса_кол но массив_таблиц есть 5 столбцов в целом, поэтому VLOOKUP функция не работает и показывает #REF ошибка.

Решение

Во избежание #REF ошибка проверяет col_index_num и использовать номер, который находится в массив_таблиц .

Читать далее: VLOOKUP для возврата нескольких столбцов в Excel (4 примера)

4. Ошибка имени VLOOKUP

Позвольте мне показать вам, почему #NAME ошибка возникает и как его можно устранить.

4.1. При неправильном написании имени функции VLOOKUP не работает

Сайт #NAME ошибка возникает из-за неправильного написания названия функций.

Решение

Во избежание #NAME ошибки всегда используйте соответствующее имя функции из встроенной функции Excel.

5. Использование приблизительного соответствия

Если вы используете приблизительное соответствие (ИСТИНА) тогда остается возможность либо #N/A ошибка или неправильный результат.

Я постараюсь получить Идентификатор заказа с помощью Фрукты в качестве lookup_value .

Поэтому я использовал следующую формулу.

=VLOOKUP(H4,B4:F12,2,TRUE)

Но здесь я дал Личи в качестве поиск_значения и использовал TRUE в качестве range_lookup . VLOOKUP показывает 1007 в качестве Идентификатор заказа что неверно, потому что 1007 это Идентификатор заказа из Вишня .

Поскольку я использовал приблизительное соответствие, вместо ошибки отображается неверная информация.

Решение

Используйте lookup_value осторожно. Вместо того, чтобы использовать приблизительное соответствие тип, который вы можете использовать точное совпадение типа. Я думаю, что получить ошибку гораздо лучше, чем иметь недостоверную информацию.

Вы можете завершить формулу с помощью функция IFERROR показать сообщение об ошибке, когда он не может найти значение в пределах диапазона.

6. ссылка на таблицу относительная

Если ваш массив таблиц ссылается относительно, то может возникнуть уведомление об ошибке или ошибка при копировании формулы в поиск другие значения.

Решение

Чтобы избежать этой ошибки, используйте абсолютную ссылку.

Нажмите кнопку F4 во время выбора ссылки, то он преобразует ссылку относительная ссылка на абсолютная ссылка .

Здесь я использовал следующую формулу

=VLOOKUP(I4,C4:$F$12,2)

7. VLOOKUP не работает Для вставки нового столбца

Если вы вставляете новый столбец в существующий набор данных, тогда VLOOKUP функция не работает. col_index-num используется для возврата информации о записи в VLOOKUP функция. col_index-num не является долговечным, поэтому если вы вставляете новый, то VLOOKUP не сработает.

Здесь вы можете увидеть VLOOKUP функция работает правильно.

Но здесь я вставил один новый столбец, поэтому он показывает 0 вместо того, чтобы показать ожидаемый результат.

Решение

⏩ Чтобы избежать подобных проблем, можно защитить рабочий лист так, чтобы никто не мог вставить новые столбцы, но это недостаточно дружелюбно.

⏩ Другое решение заключается в том, что вы можете использовать МАТЧ функция внутри VLOOKUP функция.

Итак, введите следующую формулу.

=VLOOKUP(I4,B4:G12,MATCH(J3,B3:G3,0),FALSE)

Здесь, в функция VLOOKUP Я выбрал ячейку I4 в качестве lookup_value затем выбрал диапазон B4:G12 в качестве массив_таблиц и как col_index_num использовал МАТЧ функция, также используется FALSE в качестве range_lookup чтобы получить Точное совпадение .

В МАТЧ функцию, я использовал имя столбца J3 в качестве lookup_value , затем выбрал диапазон имен столбцов B3:G3 в качестве массив поиска затем принят 0 в качестве тип_соответствия использовать Точное совпадение .

Нажмите кнопку ENTER Таким образом, вы получите желаемый результат.

8. Значение поиска имеет дублирующиеся значения

В случае, если ваш lookup_value содержит дубликаты значений, то VLOOKUP не будет работать для всех доступных значений.

VLOOKUP возвращает только первое значение, которое соответствует искомому значению.

Решение

Чтобы избежать подобных проблем, можно либо удалить дубликаты, либо использовать поворотный стол .

⏩ Вы можете удалить дубликаты с помощью функции Удаление дубликатов затем "Лента".

⏩ Также вы можете использовать Поворотная таблица .

Чтобы использовать его,

Сначала выберите диапазон ячеек

Затем откройте Вставка вкладка>> выбрать Поворотная таблица

A диалоговое окно появится окно, выберите место, затем нажмите OK .

Теперь вы можете выбрать Фрукты и Идентификатор заказа в Строки тогда он покажет существующие Идентификатор заказа выбранного вами Фрукты .

Читать далее: Как найти дублирующиеся значения в Excel с помощью VLOOKUP

Практическая секция

В рабочей тетради я привел лист для тренировки этих объясненных способов.

Заключение

В этой статье я постарался охватить все типы сценариев, связанных с VLOOKUP не работает вместе с решением, чтобы избежать ошибок. Эти различные способы помогут вам работать с VLOOKUP И последнее, но не менее важное: если у вас есть какие-либо предложения, идеи или отзывы, пожалуйста, оставляйте свои комментарии ниже.

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.