- Почему функция ВПР (VLOOKUP) не работает в Google таблицах?
- Почему не работает? Разбираем наиболее типичные ошибки при использовании функции ВПР в Google таблицах.
- Ошибка при вводе данных
- Ошибка при вводе функции.
- Неверные ссылки в функции ВПР
- Неверно указан параметр “сортировка” (is_sorted).
- Столбец поиска не является первым слева столбцом диапазона поиска.
- Несовпадение форматов данных.
- Лишние пробелы и непечатаемые знаки.
- Неправильно указан номер столбца.
- Ошибка в ссылке на данные из другой таблицы
- После изменения таблицы функция перестала работать
- Как убрать сообщение об ошибке?
- Почему не работает функция ВПР в Excel (причины, ошибки и их решение)
- Несколько причин, по которым возникает ошибка #Н/Д
- Неправильный ввод искомого значения
- Если ищется приближенное соответствие
- При поиске точного соответствия введенному запросу
- На данный момент столбец не является крайним левым
- Числовые значения отформатированы, как текстовые
- Если стоит пробел в начале или в конце содержимого
- Ошибка #ЗНАЧ! в формуле ВПР
- Причина 1: значение, которое ищется, содержит больше 255 знаков
- Причина 2: не прописан полный путь к рабочей книге, используемой для поиска
- Причина 3: пользователь ввел значение меньше 1 в аргумент «Номер столбца»
- Ошибка #ИМЯ?
- Почему еще может не работать функция ВПР?
- Нечувствительность к регистру
- Возвращение первого найденного значения
- Новая колонка была вставлена в таблицу или убрана из таблицы
- Искажение ссылок на ячейки при копировании функции
- Обработка ошибок при использовании функции ВПР
- Использование функции ЕСЛИОШИБКА
- Использование функции ЕОШИБКА
Почему функция ВПР (VLOOKUP) не работает в Google таблицах?
Рассматривая синтаксис функции ВПР (VLOOKUP), мы уже отмечали, что в случае, если поиск завершится неудачей, функция возвратит ошибку “#Н/Д” (#N/A). Давайте постараемся вместе попробовать ответить на вопрос: «Почему функция ВПР не работает?»
Также мы постараемся показать несколько несложных приёмов, которые позволят подстраховать себя от случайной ошибки с функцией ВПР.
Если функция ВПР не сработала так, как нам нужно, и мы видим сообщение об ошибке, то это ещё не значит, что мы сделали что-то неправильно.
Почему не работает? Разбираем наиболее типичные ошибки при использовании функции ВПР в Google таблицах.
В первую очередь, сообщение об ошибке вы увидите, если значение, которое вы ищете, действительно отсутствует в указанном диапазоне поиска. Здесь мы бессильны. Все остальные случаи, когда ВПР не работает, связаны с тем, что мы что-то не учли или сделали неверно.
Итак, разберём наиболее распространённые ошибки.
Ошибка при вводе данных
В этом случае ничего найти не удастся и вы увидите ошибку #Н/Д. Самое простое решение здесь очень часто оказывается самым верным. Быть может, вы просто ошиблись при вводе данных в ячейку поиска. Это вполне может случиться, в особенности если вы вводите значение поиска не в ячейку, а прямо в формулу.
Проверьте, правильно ли введены данные.
Ошибка при вводе функции.
Если вы видите сообщение об ошибке #ИМЯ? (#NAME?), то это означает, что при вводе названия самой функции ВПР вы допустили ошибку – перепутали или добавили лишнюю букву.
Проверьте синтаксис написания функции, и всё бедет в порядке.
Неверные ссылки в функции ВПР
Проверьте, правильно ли вы указали диапазон поиска а также ячейку со значением, которое мы будем искать.
К примеру, мы ищем цену бананов.
Но в функции вы указали обычные (относительные) ссылки, забыв заменить их на абсолютные ($), и затем произвели какие-то действия с таблицей. К примеру, добавили столбец. В результате ваш диапазон поиска автоматически изменился и стал шире на 1 столбец.
Ваши ссылки в формуле теперь будут ссылаться на неверные ячейки. Цена у вас находится теперь в 3-м столбце, а вы берёте данные из второго. В результате ВПР не работает.
Важно! При изменении ссылок сообщение об ошибке часто не появляется. Поэтому будьте внимательны в использовании относительных и абсолютных ссылок!
Неверно указан параметр “сортировка” (is_sorted).
Включен поиск до первого приблизительного совпадения в отсортированном диапазоне (параметр is_sorted = TRUE), но на самом деле данные не отсортированы.
Об этой ошибке мы подробно говорили, когда рассматривали правила использования функции ВПР в Google таблицах.
Столбец поиска не является первым слева столбцом диапазона поиска.
Часто забывают о том, что функция ВПР (VLOOKUP) ищет совпадающие значения только в первом слева столбце диапазона, который вы указали.
Если ваши значения поиска находятся не в первом, а во втором или другом столбце, то функция ВПР не будет работать и вы вновь увидите сообщение #Н/Д. К примеру, вы ищете цену по артикулу товара, но в первом столбце прайс-листа у вас находятся наименования.
Это важное ограничение функции ВПР нельзя забывать.
Несовпадение форматов данных.
Формат ячейки, откуда берется искомое значение наименования (например D3 в нашем случае), и формат ячеек первого столбца (A3:A21) из диапазона поиска отличаются (например, числовой и текстовый). Этот случай особенно часто встречается при использовании вместо текстовых наименований числовых кодов (номера счетов, артикулы, идентификаторы, даты и т.п.)
Итак, здесь мы пытаемся найти текстовое значение среди чисел. Закономерно функция ВПР возвращает нам ошибку.
Как видите, с виду записи одинаковы, однако в ячейке D6 значение сохранено как число, а в ячейке A10 – как текст. Текст не может быть равен числу, поэтому функция возвращает ошибку.
Как решить эту проблему со случайной ошибкой в формате записи? Можно использовать функцию ТЕКСТ, которая преобразует любые значения в текстовый вид.
Теперь функция ВПР нашей Google таблицы выглядит так:
Обычную ссылку на ячейку D6 мы заменяем функцией
Первый аргумент – это сама ячейка, а второй аргумент означает формат, в который мы будем преобразовывать значение этой ячейки. В данном случае – в текстовый.
Как видите, использование вложенной функции помогло решить проблему с несовпадением форматов данных.
Если же такая ошибка только одна, то можно просто исправить формат данных в ячейке. Нажмите Меню -> Формат-> Число-> Обычный текст. Значение в ячейке будет преобразовано в текст.
Как видите, ошибка исчезла, поскольку теперь текстовое значение сравнивается с таким же текстовым значением.
Лишние пробелы и непечатаемые знаки.
Функция не может найти нужного значения, потому что в коде присутствуют пробелы или невидимые непечатаемые знаки (перенос строки и т.п.).
В нашем примере функция ВПР возвратила ошибку, так как в ячейке D4 при вводе данных случайно были добавлены два пробела после значения. И, поскольку сравниваются символьные значения, поиск, естественно, завершился неудачно.
Такая ошибка может встеречаться довольно часто, и обнаружить её визуально практически невозможно.
К примеру, если наименование состоит из 2 слов, то вполне возможно случайное появление лишнего пробела между этими словами.
Могут быть также случайно добавлены символы, невидимые на экране и на печати (табуляция, перевод строки и т.д.). Визуально определить такие ошибки практически невозможно.
В этом случае можно использовать текстовые функции СЖПРОБЕЛЫ (TRIM) и ПЕЧСИМВ (CLEAN) для удаления лишних пробелов либо других невидимых символов. Вместо
Функция СЖПРОБЕЛЫ (TRIM) удаляет пробелы, а функция ПЕЧСИМВ (CLEAN) удаляет все непечатаемые и невидимые символы из текстового значения.
Эту комбинацию функций рекомендуем применять всегда «на всякий случай», чтобы подстраховать себя от случайных ошибок.
Неправильно указан номер столбца.
Иногда неправильно указывают номер столбца, значение из которого вы хотите получить (третий аргумент функции ВПР).
Номер столбца не может быть меньше 1 и не может быть больше, чем количество столбцов в указанном для поиска диапазоне. Если номер столбца указан неверно, то ВПР возвращает ошибку #VALUE!
Когда вы видите такую ошибку, пересчитайте количество столбцов в диапазоне, который вы указали в функции, и убедитесь, что это значение не меньше, чем номер столбца, указанный третьим аргументом функции ВПР.
И в любом случае – номер столбца должен быть больше 1. Вряд ли кто-то из вас будет руками вводить значение 0 или -1, но если вы получаете номер столбца при помощи каких-то функций, вложенных в ВПР, то здесь-то и может быть ошибка.
Ошибка в ссылке на данные из другой таблицы
Мы с вами говорили о том, что диапазон поиска может быть расположен в другой таблице или даже в другом файле Google таблиц.
Если вы случайно допустили ошибку при указании ссылки на эти данные, то увидите сообщение об ошибке #ССЫЛКА! (#REF!)
Это будет означать, что вы ссылаетесь на неверный диапазон, который программа найти не может.
После изменения таблицы функция перестала работать
Вы сделали все правильно и до тех пор, пока вы не вставили несколько строк или стрлбцов в вашу таблицу, функция работала верно.
Теперь же появилась ошибка #Н/Д. В чем дело?
А дело всё в том, что вы не использовали в функции ВПР абсолютные ссылки, не добавляли к адресам ячеек, строк и столбцов знак $. В результате после добавления (или удаления) строк или столбцов ваши ссылки изменились и формула перестала работать.
Постарайтесь отменить слеланные изменения, благо Google таблицы хранят всю историю изменений вашей таблицы.
Важно! Всегда используйте абсолютные ссылки в формуле, где это необходимо, чтобы застраховать себя от подобных неожиданных изменений.
Как убрать сообщение об ошибке?
Сообщения об ошибке функции ВПР (VLOOKUP) не только показывают, что функция ВПР не работает, но и еще совсем не украшают вашу таблицу. Поэтому, видя сообщение об ошибке, вы, конечно же, захотите от них избавиться.
Но прежде чем приступать к таким радикальным мерам, всё же проверьте – а всё ли вы сделали правильно?
Итак, что нужно сделать прежде всего, увидев сообщение “#Н/Д”.
Во-первых, проверьте адрес диапазона поиска. Действительно ли то значение, которое вы ищете, может находиться в первом столбце диапазона.
Во-вторых, проверьте правильно ли вы указали тип параметра “сортировка” (is_sorted): ИСТИНА или ЛОЖЬ.
В-третьих, проверьте возможные несовпадения форматов, наличие лишних пробелов в условии поиска. Используйте рекомендации, которые мы давали выше.
Если вы все сделали правильно, но диапазоне поиска всё же нет нужного значения, дополните формулу функцией ЕСЛИОШИБКА (IFERROR). Например, так:
Синтаксис функции ЕСЛИОШИБКА очень простой. Первый аргумент – это выражение, значение которого мы проверяем на возниконвение ошибки.
Если ошибки нет, товозвращается значение этого выражения. Если же возникает ошибка, то функция возвращает значение второго аргумента. В данном случае в ячейке F9 будет указано “Не найдено”.
Согласитесь, это гораздо более красиво и информативно, чем стандартное сообщение об ошибке.
Источник
Почему не работает функция ВПР в Excel (причины, ошибки и их решение)
В этом руководстве описывается, как можно быстро решить проблему, при которой функция Excel ВПР() показывает пользователю ошибку в разных версиях программы электронных таблиц. Также будут описаны ошибки, получившие наибольшее распространение, а также будут приведены рекомендации, как можно обойти ограничения этой функции.
Раньше вы могли уже читать о том, для чего предназначена функция ВПР, и где ее можно применять. Особенно, если вы до этого активно интересовались функциями программы электронных таблиц Excel. В таком случае вы уже должны стать экспертом в этой области.
Но даже если вы слышали об этой функции, вы все равно можете столкнуться со сложностями. По разным причинам эта функция считается самой сложной в программе электронных таблиц. Для ее использования есть множество ограничений, а также незаметных с первого взгляда нюансов, которые являются источником большого количества проблем и ошибок.
В этом сравнительно небольшом руководстве вы найдете простой способ, как обойти такие ошибки, как #Н/Д, #ИМЯ, #ЗНАЧ!, которые часто появляются при работе с этой функцией, а также ознакомитесь с самыми частыми ситуациями, когда эти ошибки возникают.
Несколько причин, по которым возникает ошибка #Н/Д
В формуле = ВПР эта ошибка расшифровывается, как «Нет данных». Простыми словами, у электронной таблицы не получается отыскать значение, которое необходимо пользователю. Есть множество причин, по которым эта проблема может появляться.
Неправильный ввод искомого значения
Наиболее частая причина возникновения этой ошибки – ввод значения с опечаткой. Например, случайно была написана буква вместо цифры. Особенно часто эта ошибка появляется, если обрабатываются огромные массивы данных.
Если ищется приближенное соответствие
Если пользователь применяет range_lookup (то есть, интервальный просмотр) в качестве аргумента функции, в конечном итоге возможно появление ошибки #Н/Д. Это может случиться при возникновении одного из следующих условий:
- Если значение, которое необходимо найти в конкретном диапазоне, меньше, чем самое крошечное в анализируемой совокупности данных.
- Если перед введением функции пользователь не упорядочил по возрастанию связанную с ней колонку.
При поиске точного соответствия введенному запросу
Если значение, которое пользователь пытается найти, ищется с помощью формулы, и найти его не удалось, это тоже может быть причиной возникновения этой ошибки.
На данный момент столбец не является крайним левым
Наиболее существенным ограничением при использовании формулы ВПР – невозможность применить ее к столбцу, который не является крайним левым. Обычно пользователь забывает об этом, и в результате формула выдает описанную выше ошибку.
Преодоление этой трудности заключается в следующем: если по какой-то причине не получается переместить столбец влево, необходимо использовать сразу две функции Excel: ИНДЕКС(), ПОИСКПОЗ().
Числовые значения отформатированы, как текстовые
Это также часто встречаемый источник проблем с формулой ВПР() . Нередко пользователь может не замечать, что числовые значения отформатированы как текстовые. Часто такая проблема может встретиться, если информация копируется из других источников.
Еще одна причина подобной ошибки – пользователь забыл о том, что он поставил апостроф перед числом, чтобы сохранить ноль, который находится перед значением. Например, может быть так, как показано на следующей картинке.
Еще одна причина ошибки – формат может быть обозначен, как «Общий». Определить это можно по расположению значения внутри ячейки. Если они выравниваются по левому краю, это означает, что формат выбран как «Общий».
Чтобы исправить эту проблему, достаточно просто нажать на параметр «Конвертировать в число» в контекстном меню.
Если эта ошибка вызвана несколькими ячейками с числовыми значениями, их необходимо выделить, после чего нужно кликнуть по соответствующей области правой кнопкой мыши. В ответ на это действие появится контекстное меню, в котором нужно выбрать опцию «Формат ячеек», далее нужно будет нажать на «Число» и выбрать числовой формат. Последнее действие – нажатие кнопки «ОК».
Если стоит пробел в начале или в конце содержимого
Причина возникновения этой ошибки наименее заметна. Если таблица существенно большая, тяжело увидеть, в каких клетках располагаются пробелы. Особенно если часть ячеек оказывается за пределами экрана.
Решение номер 1: Если пробелы находятся в таблице, к которой применяется функция ВПР
Если в основной таблице обнаружены пробелы, можно применить функцию СЖПРОБЕЛЫ в аргументе «Искомое значение». Значительно проще это продемонстрировать на примере.
=ВПР(СЖПРОБЕЛЫ($F2),$A$2:$C$10,3,FALSE)
Решение номер 2: Если лишние пробелы находятся в столбце или таблице поиска
В таком случае не получится легко предотвратить ошибку. Здесь необходимо использовать несколько функций: ИНДЕКС(), ПОИСКПОЗ(), СЖПРОБЕЛЫ().
В результате получится формула массива, для правильного ввода которой нужно нажать на комбинацию клавиш Ctrl+Shift+Enter.
В качестве альтернативного способа решения этой проблемы можно воспользоваться дополнением «Trim Spaces for Excel», которое позволяет убрать ненужные пробелы в формулах как в главной таблице, так и в таблице поиска. Это бесплатный инструмент, который можно скачать по .
Ошибка #ЗНАЧ! в формуле ВПР
В целом, Excel отображает эту ошибку, если в формуле используется неправильный тип данных. Выделяется несколько причин этой ошибки.
Причина 1: значение, которое ищется, содержит больше 255 знаков
Это еще одно ограничение этой функции. Нельзя ее применять к ячейкам, содержимое которых длиннее 255 знаков. Если этот предел превышается, в результате может появиться сообщение #ЗНАЧ!.
Чтобы решить эту проблему, необходимо использовать связку формул ИНДЕКС()+ПОИСКПОЗ() . Вот пример формулы, демонстрирующий на практике реализацию этой задачи:
=ИНДЕКС(C2:C7;ПОИСКПОЗ(ИСТИНА;ИНДЕКС(B2:B7=F$2;0);0))
Причина 2: не прописан полный путь к рабочей книге, используемой для поиска
При указании данных из другого файла, необходимо ввести полный путь к нему. Проще говоря, необходимо указать как его имя, так и расширение, после чего ввести имя листа и не забыть про восклицательный знак. Лучше всего это все заключить в апострофы для предотвращения возникновения ошибок из-за наличия пробелов в папке к файлу или в самой книге Excel.
Вот как эта формула выглядит:
А вот пример использования этой формулы на практике:
Здесь программа будет искать содержимое ячейки A3 столбца c листа Sheet2 файла «NewPrice». Данные формула будет извлекать из столбца C.
Если программа не может получить доступ к файлу, функция будет выдавать ошибку #ЗНАЧ. Причем ошибка будет выдаваться, даже если этот файл открыт в данный момент параллельно с файлом, где прописывается формула.
Причина 3: пользователь ввел значение меньше 1 в аргумент «Номер столбца»
Тяжело вообразить, что кто-то может вводить для обозначения столбца значение меньше единицы. Но такая ситуация бывает, если в аргументе прописана переменная, значение которой вычисляется другой функцией Excel.
Таким образом, если аргумент «Номер столбца» будет меньше единицы, функция также вернет ошибку #ЗНАЧ!
Если же аргумент «Номер столбца» больше, чем общее количество столбцов в этом наборе данных, то функция ВПР() выдаст ошибку #ССЫЛ!.
Ошибка #ИМЯ?
Наиболее простой проблемой является ошибка #ИМЯ? Означает она, что имя функции было введено неправильно. Поэтому, чтобы ее исправить, необходимо просто найти опечатку.
Почему еще может не работать функция ВПР?
Функция ВПР() имеет довольно сложный синтаксис. Но не только он является причиной сложностей в работе с этой формулой. В ходе пользования программой может появиться множество неприятностей даже в, казалось бы, простых случаях. Далее приводятся самые распространенные ситуации, когда ВПР() может выдавать ошибку. Также описываются ограничения, которые нужно учитывать.
Нечувствительность к регистру
Эта функция не может понять, где большая буква, а где – маленькая. Поэтому в наборе данных, где есть аналогичные за исключением регистра символов элементы, она вернет первый попавшийся, без учета регистра.
Чтобы решить эту проблему, можно использовать другую функцию Excel, которая может искать нужное значение в столбце (ИНДЕКС(), ПОИСКПОЗ(), ПРОСМОТР() и другие) вместе с СОВПАД(). Последняя функция может различать регистр.
Возвращение первого найденного значения
Кроме использования другой функции для поиска значения с учетом регистра, можно использовать другую формулу, если точно известно, какое по очередности значение нужно найти. Для этого необходимо использовать функции ИНДЕКС(), НАИМЕНЬШИЙ() и СТРОКА(). Так можно будет выбирать 2, 3, 4 или любое другое требуемое значение.
Новая колонка была вставлена в таблицу или убрана из таблицы
К сожалению, формула ВПР() перестает работать при каждом добавлении в таблицу столбца. Все потому, что ее синтаксис требует введения всего массива ячеек, в которых осуществляется поиск информации. Конечно, ситуация меняется, если туда вставляется столбец.
Здесь также нужно использовать функции ИНДЕКС() и ПОИСКПОЗ(). Они позволяют указать не массив всего диапазона, а лишь требуемые столбцы, и поэтому можно редактировать все остальные без необходимости обновлять связанные с ними формулы.
Искажение ссылок на ячейки при копировании функции
Вам сразу стало понятно, в чем проблема, верно? Решить ее просто: используя абсолютные ссылки на те ячейки, которые нужно оставить стабильными при копировании функции. Для этого необходимо перед названием столбца или строки поставить значок доллара ($). Например, прописать диапазон таким образом: $A$2:$C$100. Более простой вариант: $A:$C. С помощью клавиши F4 можно оперативно изменять тип адреса ячейки.
Обработка ошибок при использовании функции ВПР
Если нет необходимости демонстрировать пользователям код ошибки (например, #Н/Д), можно использовать ВПР() совместно с функцией ЕСЛИОШИБКА() в Excel последних версий вплоть до 2007. Также можно использовать две функции ЕСЛИ()+ЕОШИБКА(), если версия более старая.
Использование функции ЕСЛИОШИБКА
Для этой формулы характерен простой синтаксис:
Таким образом, на месте первого аргумента вставляется значение, которое тестируется на наличие ошибки, а на месте второго необходимо прописать текст или число, выдаваемые при возникновении ошибки.
Вот пример использования функции на практике:
В этом случае будет возвращаться пустая ячейка, если обнаруживается ошибка.
Можно в кавычки написать любую другую фразу. Например, ту, которая показана на скриншоте.
Использование функции ЕОШИБКА
Описанная выше функция впервые появилась в Excel 2007 версии, поэтому, если используются более старые версии программы (например, если компьютер имеет небольшую производительность, но на нем нужно обрабатывать большие объемы данных), нужно использовать такую формулу:
=ЕСЛИ(ЕОШИБКА(ВПР формула);”Ваше сообщение при ошибке”;ВПР формула)
На практике формула будет выглядеть следующим образом:
Итак, на сегодня все. Как вы можете увидеть, большинство проблем с формулой ВПР являются сложными только на первый взгляд. На самом деле, они решаются довольно просто. Достаточно запомнить, что каждая из ошибок означает, и в следующий раз можно понять, какие действия нужно предпринимать. Если же таблица будет читаться пользователем, который абсолютно не разбирается в электронных таблицах, а исправить ошибку пока не удается, можно запрограммировать текст, который будет отображаться вместо кода ошибки.
Источник