Оглавление
В учебнике объясняется синтаксис функции Google Sheets VLOOKUP и показывается, как использовать формулы Vlookup для решения реальных задач.
При работе с взаимосвязанными данными одной из наиболее распространенных проблем является поиск информации на нескольких листах. Вы часто выполняете такие задачи в повседневной жизни, например, когда сканируете табло с расписанием рейсов по номеру вашего рейса, чтобы узнать время и статус вылета. Google Sheets VLOOKUP работает аналогичным образом - ищет и извлекает соответствующие данные из другой таблицы на том же листе илис другого листа.
Распространено мнение, что VLOOKUP - одна из самых сложных и непонятных функций. Но это не так! На самом деле, сделать VLOOKUP в Google Sheets очень просто, и через минуту вы в этом убедитесь.
Совет. Для пользователей Microsoft Excel у нас есть отдельный учебник по Excel VLOOKUP с примерами формул.
Google Sheets VLOOKUP - синтаксис и использование
Функция VLOOKUP в Google Sheets предназначена для выполнения функции вертикальный поиск - поиск ключевого значения (уникального идентификатора) по первому столбцу в указанном диапазоне и возврат значения в той же строке из другого столбца.
Синтаксис функции VLOOKUP в Google Sheets следующий:
VLOOKUP(search_key, range, index, [is_sorted])Первые 3 аргумента являются обязательными, последний - необязательным:
Search_key - значение для поиска (поисковое значение или уникальный идентификатор). Например, вы можете искать слово "яблоко", число 10 или значение в ячейке A2.
Диапазон - два или более столбцов данных для поиска. Функция Google Sheets VLOOKUP всегда ищет в первом столбце из ассортимент .
Индекс - номер столбца в ассортимент из которых совпадающее значение (значение в той же строке, что и ключ_поиска ) должны быть возвращены.
Первый столбец в ассортимент есть индекс 1. Если индекс меньше 1, формула Vlookup возвращает ошибку #VALUE! Если больше, чем количество столбцов в ассортимент , VLOOKUP возвращает ошибку #REF!
отсортирован - указывает, сортируется ли столбец поиска (TRUE) или нет (FALSE). В большинстве случаев рекомендуется FALSE.
- Если отсортирован равно TRUE или опущено (по умолчанию), первый столбец ассортимент должен быть отсортированные в порядке возрастания т.е. от A до Z или от наименьшего к наибольшему.
В этом случае формула Vlookup возвращает значение приблизительное соответствие Точнее, сначала выполняется поиск точного совпадения. Если точное совпадение не найдено, формула ищет ближайшее соответствие который меньше или равен ключ_поиска Если все значения в колонке поиска больше, чем ключ поиска, возвращается ошибка #N/A.
- Если отсортирован установлено значение FALSE, сортировка не требуется. В этом случае формула Vlookup ищет точное совпадение Если столбец поиска содержит 2 или более значений, точно равных ключ_поиска возвращается первое найденное значение.
На первый взгляд, синтаксис может показаться немного сложным, но приведенный ниже пример формулы Vlookup в Google Sheet облегчит понимание.
Предположим, у вас есть две таблицы: основная и таблица поиска, как показано на скриншоте ниже. Таблицы имеют общий столбец ( Идентификатор заказа ), который является уникальным идентификатором. Ваша цель - перенести статус каждого заказа из таблицы поиска в основную таблицу.
Итак, как использовать формулу Vlookup в Google Sheets для решения этой задачи? Для начала давайте определим аргументы для нашей формулы Vlookup:
- Search_key - Идентификатор заказа (A3), значение для поиска в первом столбце таблицы Lookup.
- Диапазон - Таблица поиска ($F$3:$G$8). Пожалуйста, обратите внимание, что мы блокировка диапазона используя абсолютные ссылки на ячейки, поскольку мы планируем скопировать формулу в несколько ячеек.
- Индекс - 2, потому что Статус столбец, из которого мы хотим вернуть совпадение, является 2-м столбцом в ассортимент .
- отсортирован - FALSE, потому что наш столбец поиска (F) не отсортирован.
Сложив все аргументы вместе, мы получаем такую формулу:
=VLOOKUP(A3,$F$3:$G$8,2,false)
Введите его в первую ячейку (D3) основной таблицы, скопируйте вниз по столбцу, и вы получите результат, подобный этому:
Вам все еще трудно понять формулу Vlookup? Тогда посмотрите на нее с другой стороны:
5 вещей, которые нужно знать о VLOOKUP в Google Sheets
Как вы уже поняли, функция VLOOKUP в Google Sheets - это вещь с нюансами. Помня эти пять простых фактов, вы убережете себя от неприятностей и сможете избежать наиболее распространенных ошибок Vlookup.
- В Google Sheets VLOOKUP не может смотреть влево, он всегда ищет в первом (самом левом) столбце диапазона. Чтобы сделать левый Vlookup , используйте формулу Google Sheets Index Match.
- Vlookup в Google Sheets - это без учета регистра то есть не различает строчные и прописные символы. Для поиск с учетом регистра , используйте эту формулу.
- Если VLOOKUP возвращает неверные результаты, установите значение отсортирован аргумент FALSE, чтобы вернуть точные совпадения. Если это не помогло, проверьте другие возможные причины, по которым VLOOKUP не работает.
- Когда отсортирован установлено в TRUE или опущено, не забудьте отсортировать первый столбец из ассортимент в порядке возрастания. В этом случае функция VLOOKUP будет использовать более быстрый алгоритм двоичного поиска, который корректно работает только на отсортированных данных.
- Google Sheets VLOOKUP может осуществлять поиск с помощью частичное совпадение на основе символы подстановочного знака : вопросительный знак (?) и звездочка (*). Более подробно см. пример формулы Vlookup.
Как использовать VLOOKUP в Google Sheets - примеры формул
Теперь, когда у вас есть базовое представление о том, как работает Vlookup в Google Sheets, пришло время попробовать свои силы в создании нескольких формул самостоятельно. Чтобы было легче следовать приведенным ниже примерам Vlookup, вы можете открыть образец листа Vlookup Google.
Как выполнить Vlookup с другого листа
В реальных электронных таблицах основная таблица и таблица поиска часто находятся на разных листах. Чтобы сослаться в формуле Vlookup на другой лист в той же электронной таблице, поместите имя рабочего листа с восклицательным знаком (!) перед ссылкой на диапазон. Например:
=VLOOKUP(A2,Sheet4!$A$2:$B$7,2,false)
Формула будет искать значение в A2 в диапазоне A2:A7 на Листе4, и возвращать совпадающее значение из столбца B (2-й столбец в ассортимент ).
Если имя листа включает пробелы или неалфавитные символы, обязательно заключите его в одинарные кавычки. Например:
=VLOOKUP(A2,'Lookup table'!$A$2:$B$7,2,false)
Совет. Вместо того чтобы вводить ссылку на другой лист вручную, вы можете сделать так, чтобы Google Sheets вставил ее автоматически. Для этого начните вводить формулу Vlookup и когда дойдет до строки ассортимент Это добавит ссылку на диапазон в формулу, и вам останется только изменить относительную ссылку (по умолчанию) на абсолютную. Для этого либо введите знак $ перед буквой столбца и номером строки, либо выделите ссылку и нажмите F4 для переключения между различными типами ссылок.
Google Sheets Vlookup с использованием символов подстановки
В ситуациях, когда вы не знаете всего значения поиска (ключ_поиска), но знаете его часть, вы можете выполнить поиск с помощью следующих символов подстановки:
- Вопросительный знак (?) для соответствия любому одиночному символу, и
- Звездочка (*) для соответствия любой последовательности символов.
Допустим, вы хотите получить информацию о конкретном заказе из приведенной ниже таблицы. Вы не можете вспомнить Id заказа полностью, но вы помните, что первый символ - "A". Поэтому вы используете звездочку (*), чтобы заполнить недостающую часть, как показано ниже:
=VLOOKUP("a*",$A$2:$C$7,2,false)
Еще лучше, если вы можете ввести известную часть ключа поиска в некоторую ячейку и объединить эту ячейку с "*" для создания более универсальной формулы Vlookup:
Чтобы вытащить предмет: =VLOOKUP($F$1& "*",$A$2:$C$7,2,false)
Чтобы вытянуть сумму: =VLOOKUP($F$1& "*",$A$2:$C$7,3,false)
Совет. Если вам нужно найти символ вопросительного знака или звездочки, поставьте тильду (~) перед символом, например, "~*".
Формула сопоставления индексов в Google Sheets для левого Vlookup
Одно из самых существенных ограничений функции VLOOKUP (как в Excel, так и в Google Sheets) заключается в том, что она не может смотреть слева от себя. То есть, если столбец поиска не является первым столбцом в таблице поиска, Google Sheets Vlookup потерпит неудачу. В таких ситуациях используйте более мощную и более долговечную формулу Index Match:
ИНДЕКС ( диапазон возврата , MATCH( ключ_поиска , диапазон поиска , 0))Например, чтобы найти значение A3 (ключ_поиска) в G3:G8 (диапазон_поиска) и вернуть совпадение из F3:F8 (диапазон_возврата), используйте эту формулу:
=INDEX($F$3:$F$8, MATCH (A3, $G$3:$G$8, 0))
На следующем снимке экрана показана формула Index Match в действии:
Еще одним преимуществом формулы Index Match по сравнению с Vlookup является то, что она невосприимчива к структурным изменениям, которые вы делаете в листах, поскольку она ссылается непосредственно на возвращаемый столбец. В частности, вставка или удаление столбца в таблице поиска ломает формулу Vlookup, поскольку "жестко закодированный" индексный номер становится недействительным, в то время как формула Index Match остается целой и невредимой.
Подробнее о INDEX MATCH читайте в статье Почему INDEX MATCH - лучшая альтернатива VLOOKUP. Хотя в приведенном выше руководстве рассматривается Excel, INDEX MATCH в Google Sheets работает точно так же, за исключением разных названий аргументов.
Vlookup с учетом регистра в Google Sheets
В случаях, когда регистр текста имеет значение, используйте INDEX MATCH в сочетании с функциями TRUE и EXACT, чтобы сделать Vlookup в Google Sheets чувствительным к регистру. формула массива :
ArrayFormula(INDEX( диапазон возврата , MATCH (TRUE,EXACT( диапазон поиска , ключ_поиска ),0)))Если предположить, что ключ поиска находится в ячейке A3, диапазон поиска - G3:G8, а диапазон возврата - F3:F8, то формула будет выглядеть следующим образом:
=ArrayFormula(INDEX($F$3:$F$8, MATCH (TRUE,EXACT($G$3:$G$8, A3),0)))
Как показано на скриншоте ниже, формула без проблем различает прописные и строчные символы, такие как A-1001 и a-1001:
Совет. Нажатие Ctrl + Shift + Enter при редактировании формулы автоматически вставляет функцию ARRAYFORMULA в начало формулы.
Формулы Vlookup - самый распространенный, но не единственный способ поиска в Google Sheets. Следующий и последний раздел этого руководства демонстрирует альтернативу.
Merge Sheets: альтернатива Vlookup для Google Sheets без формул
Если вы ищете визуальный способ выполнения Vlookup в таблицах Google без формул, воспользуйтесь дополнением Merge Sheets. Вы можете получить его бесплатно в магазине дополнений Google Sheets.
После добавления дополнения в Google Таблицы его можно найти в разделе Расширения вкладка:
Установив дополнение Merge Sheets, вы готовы провести его полевые испытания. Исходные данные вам уже знакомы: мы будем извлекать информацию из Статус столбец на основе Идентификатор заказа :
- Выберите любую ячейку с данными в пределах Основной лист и нажмите Дополнения > Объединить листы > Начало .
В большинстве случаев дополнение автоматически подберет всю таблицу. Если этого не произошло, либо щелкните по кнопке Автоматический выбор или выберите диапазон в основном листе вручную, а затем нажмите кнопку Следующий :
- Выберите диапазон в Лист поиска Диапазон не обязательно должен быть того же размера, что и диапазон на основном листе. В этом примере таблица поиска имеет на 2 строки больше, чем основная таблица.
В этом примере мы извлекаем информацию из Статус столбец на листе "Поиск" в Статус столбец на основном листе:
Нажмите Отделка Дайте дополнению Merge Sheets немного времени на обработку, и все готово!
Vlookup множественных совпадений простым способом!
Multiple VLOOKUP Matches - еще один инструмент Google Sheets для расширенного поиска. Как следует из названия, дополнение может возвращать все совпадения, а не только первое, как это делает функция VLOOKUP. Более того, оно может оценивать многочисленные условия посмотрите в любой направление , и возвращать все или указанное количество совпадений как значения или формулы .
Помня, что картинка стоит тысячи слов, давайте посмотрим, как дополнение работает на реальных данных. Предположим, некоторые заказы в нашей таблице содержат несколько позиций, и вы хотите получить все позиции конкретного заказа. Формула Vlookup не может сделать это, в то время как более мощная функция QUERY может. Проблема в том, что эта функция требует знания языка запросов или, по крайней мере, SQLСинтаксис. Нет желания тратить дни на изучение этого? Установите дополнение Multiple VLOOKUP Matches и получите безупречную формулу за считанные секунды!
В своем листе Google нажмите Дополнения > Множественные совпадения VLOOKUP > Начало , и определите критерии поиска:
- Выберите диапазон с вашими данными (A1:D9).
- Укажите, сколько совпадений нужно вернуть (в нашем случае все).
- Выберите, из каких столбцов возвращать данные ( Пункт , Сумма и Статус ).
- Задайте одно или несколько условий. Мы хотим получить информацию о номере заказа, введенном в F2, поэтому мы зададим только одно условие: Order ID = F2.
- Выберите левую верхнюю ячейку для результата.
- Нажмите Результат предварительного просмотра чтобы быть уверенным, что вы получите именно то, что ищете.
- Если все в порядке, нажмите либо Вставить формулу или Результат вставки .
Для этого примера мы выбрали возврат совпадений в виде формул. Итак, теперь вы можете ввести любой номер заказа в F2, и формула, показанная на скриншоте ниже, будет пересчитана автоматически:
Чтобы узнать больше о дополнении, посетите домашнюю страницу Multiple VLOOKUP Matches или приобретите его в G Suite Marketplace.
Вот как можно выполнить поиск в Google Sheets. Я благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!