Как в excel найти данные в одном столбце которых нет в другом

В сегодняшнем выпуске рассмотрим популярный вопрос Как в Excel найти значения из одного столбца в другом столбце.

Данный вопрос очень часто появляется и в жизни бывают много задач, которые требуют например сравнить списки, большие списки с ФИО.

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

Поэтому применим функции Excel.

И так, у нас есть два столбца со значениями:

500429     500429
НЗР000000001204   -1187234937
2,147E+09     1577329455
-1,106E+09     -1602497801
500915     -169464495
2,147E+09     1819498112
2,147E+09     -1861647569
НЗР000000003690   НЗР000000001204
      -2100089984
      2147238856
      2147238865
      2147249303
      2147242885
      2147249303
      2147253748
      2147257732
      2147263841
      2147264655
      2147265218
      500429

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

Решение достаточно простое, сама формула будет иметь вид 

=ЕСЛИ(ЕОШИБКА(ПОИСКПОЗ(A56;$C$56:$C$75;0));»Нету»;»Есть»)

Рассмотрим более подробно.

Вначале мы используем функцию ПОИСКПОЗ — данная функция выполняет поиск указанного элемента в массиве ячеек и возвращает его позицию.

Синтаксис

ПОИСКПОЗ(значение которое ищем; массив в котором осуществляем поиск;[тип_сопоставления])

С помощью ПОИСКПОЗ(A56;$C$56:$C$75;0) определяем позицию (да в принципе этой формулы уже достаточно, чтобы определить наличие значений первого столбца во втором, только эта формула будет выводить номер позиции, в которой находится искомое значение), но мы хотим видеть конкретное значение есть/нету.

Далее используем функцию ЕОШИБКА она проверяет значение ячейки и если в ней будет #Н/Д, #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!, #ЧИСЛО!, #ИМЯ? или #ПУСТО! то мы получим ИСТИНА, а если в ячейки какое-то конкретное значение то ЛОЖЬ.

Теперь будем использовать функцию ЕСЛИ, ЕСЛИ(ЕОШИБКА(ПОИСКПОЗ(A56;$C$56:$C$75;0));»Нету»;»Есть»)

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

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

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

Описание

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

Создание образца листа

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

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

A

B

C

D

E

1

Имя

Правитель

Возраст

Поиск значения

2

Анри

501

Плот

Иванов

3

Стэн

201

19

4

Иванов

101

максималь

5

Ларри

301

составляет

Определения терминов

В этой статье для описания встроенных функций Excel используются указанные ниже условия.

Термин

Определение

Пример

Массив таблиц

Вся таблица подстановки

A2: C5

Превышающ

Значение, которое будет найдено в первом столбце аргумента «инфо_таблица».

E2

Просматриваемый_массив
-или-
Лукуп_вектор

Диапазон ячеек, которые содержат возможные значения подстановки.

A2: A5

Номер_столбца

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

3 (третий столбец в инфо_таблица)

Ресулт_аррай
-или-
Ресулт_вектор

Диапазон, содержащий только одну строку или один столбец. Он должен быть такого же размера, что и просматриваемый_массив или Лукуп_вектор.

C2: C5

Интервальный_просмотр

Логическое значение (истина или ложь). Если указано значение истина или опущено, возвращается приближенное соответствие. Если задано значение FALSE, оно будет искать точное совпадение.

ЛОЖЬ

Топ_целл

Это ссылка, на основе которой вы хотите основать смещение. Топ_целл должен ссылаться на ячейку или диапазон смежных ячеек. В противном случае функция СМЕЩ возвращает #VALUE! значение ошибки #ИМЯ?.

Оффсет_кол

Число столбцов, находящегося слева или справа от которых должна указываться верхняя левая ячейка результата. Например, значение «5» в качестве аргумента Оффсет_кол указывает на то, что верхняя левая ячейка ссылки состоит из пяти столбцов справа от ссылки. Оффсет_кол может быть положительным (то есть справа от начальной ссылки) или отрицательным (то есть слева от начальной ссылки).

Функции

LOOKUP ()

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

Ниже приведен пример синтаксиса формулы подСТАНОВКи.

   = Просмотр (искомое_значение; Лукуп_вектор; Ресулт_вектор)


Следующая формула находит возраст Марии на листе «образец».

   = ПРОСМОТР (E2; A2: A5; C2: C5)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в векторе подстановки (столбец A). Формула затем соответствует значению в той же строке в векторе результатов (столбец C). Так как «Мария» находится в строке 4, функция Просмотр возвращает значение из строки 4 в столбце C (22).

Примечание. Для функции Просмотр необходимо, чтобы таблица была отсортирована.

Чтобы получить дополнительные сведения о функции Просмотр , щелкните следующий номер статьи базы знаний Майкрософт:
 

Использование функции Просмотр в Excel

ВПР ()

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

Ниже приведен пример синтаксиса формулы ВПР :

    = ВПР (искомое_значение; инфо_таблица; номер_столбца; интервальный_просмотр)

Следующая формула находит возраст Марии на листе «образец».

   = ВПР (E2; A2: C5; 3; ЛОЖЬ)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в левом столбце (столбец A). Формула затем совпадет со значением в той же строке в Колумн_индекс. В этом примере используется «3» в качестве Колумн_индекс (столбец C). Так как «Мария» находится в строке 4, функция ВПР возвращает значение из строки 4 В столбце C (22).

Чтобы получить дополнительные сведения о функции ВПР , щелкните следующий номер статьи базы знаний Майкрософт:
 

Как найти точное совпадение с помощью функций ВПР или ГПР

INDEX () и MATCH ()

Вы можете использовать функции индекс и ПОИСКПОЗ вместе, чтобы получить те же результаты, что и при использовании поиска или функции ВПР.

Ниже приведен пример синтаксиса, объединяющего индекс и Match для получения одинаковых результатов поиска и ВПР в предыдущих примерах:

    = Индекс (инфо_таблица; MATCH (искомое_значение; просматриваемый_массив; 0); номер_столбца)

Следующая формула находит возраст Марии на листе «образец».


= ИНДЕКС (A2: C5; MATCH (E2; A2: A5; 0); 3)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в столбце A. Затем он будет соответствовать значению в той же строке в столбце C. Так как «Мария» находится в строке 4, формула возвращает значение из строки 4 в столбце C (22).

Обратите внимание Если ни одна из ячеек в аргументе «число» не соответствует искомому значению («Мария»), эта формула будет возвращать #N/А.
Чтобы получить дополнительные сведения о функции индекс , щелкните следующий номер статьи базы знаний Майкрософт:

Поиск данных в таблице с помощью функции индекс

СМЕЩ () и MATCH ()

Функции СМЕЩ и ПОИСКПОЗ можно использовать вместе, чтобы получить те же результаты, что и функции в предыдущем примере.

Ниже приведен пример синтаксиса, объединяющего смещение и сопоставление для достижения того же результата, что и функция Просмотр и ВПР.

   = СМЕЩЕНИЕ (топ_целл, MATCH (искомое_значение; просматриваемый_массив; 0); Оффсет_кол)

Эта формула находит возраст Марии на листе «образец».

   = СМЕЩЕНИЕ (A1; MATCH (E2; A2: A5; 0); 2)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в столбце A. Формула затем соответствует значению в той же строке, но двум столбцам справа (столбец C). Так как «Мария» находится в столбце A, формула возвращает значение в строке 4 в столбце C (22).

Чтобы получить дополнительные сведения о функции СМЕЩ , щелкните следующий номер статьи базы знаний Майкрософт:
 

Использование функции СМЕЩ

Нужна дополнительная помощь?

У меня есть два столбца в Excel, и я хочу найти (желательно выделить) элементы, которые находятся в столбце B, но не в столбце A.

Какой самый быстрый способ сделать это?

  1. Выберите список в столбце A
  2. Щелкните правой кнопкой мыши и выберите Name a Range …
  3. Введите «ColumnToSearch»
  4. Нажмите ячейку C1
  5. Введите эту формулу: =MATCH(B1,ColumnToSearch,0)
  6. Перетащите формулу вниз для всех элементов в B

Если формуле не удается найти совпадение, она будет помечена # N/A, в противном случае это будет число.

Если вы хотите, чтобы оно было ИСТИНА для совпадения и ЛОЖЬ для отсутствия совпадения, используйте эту формулу:

=ISNUMBER(MATCH(B1,ColumnToSearch,0))

Если вы хотите вернуть необнаруженное значение и вернуть пустую строку для найденных значений

=IF(ISNUMBER(MATCH(B1,ColumnToSearch,0)),"",B1)

Вот быстрый и грязный метод.

Выделите столбец B и откройте условное форматирование.

Выбор Используйте формулу, чтобы определить, какие ячейки выделить.

Введите следующую формулу, а затем установите предпочитаемый формат.

=countif(A:A,B1)=0

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

Взял меня навсегда, чтобы понять это, но это очень просто. Предполагая, что данные начинаются с A2 и B2 (для заголовков), введите эту формулу в C2:

=MATCH(B2,$A$2:$A$287,0)

Затем нажмите и перетащите вниз.

Ячейка с #N/A означает, что значение непосредственно рядом с ней в столбце B не отображается нигде во всем столбце A.

Обратите внимание, что вам нужно изменить 287 долларов США, чтобы соответствовать всему поисковому массиву в столбце А. Например, если ваши данные в столбце А уменьшаются на 1000 записей, это должно быть 1000 долларов США.

Смотрите мой ответ по формуле массива на листинг A, который не найден в B здесь:

= ЕСЛИОШИБКА (ИНДЕКС ($ A $ 2:$ A $ 1999, MATCH (0, ЕСЛИОШИБКА (ПОИСКПОЗ ($ A $ 2:$ A $ 1999, $ B $ 2:$ B $ 399,0), СЧЕТЕСЛИ ($ C $ 1:$ С1, $ A $ 2:$ A $ 1999)), 0)), «»)

Сравнение двух столбцов имен и возвращение пропущенных имен

Мои требования состояли не в том, чтобы выделить, а в том, чтобы показать все значения, кроме дубликатов в двух столбцах. Я воспользовался решением @ brenton и улучшил его, чтобы показать значения, чтобы я мог использовать данные напрямую:

=IF(ISNA(MATCH(B2,$A$2:$A$2642,0)), A2, "")

Скопируйте его в первую ячейку 3-го столбца и примените формулу по всему столбцу, чтобы в нем были перечислены все элементы из столбца B, которые не перечислены в столбце A.

Спасибо тем, кто поделился своими ответами. Благодаря вашим решениям я смог сделать свой собственный путь.

В моей версии этого вопроса у меня было две колонки для сравнения — полный выпускной класс (Col A) и подмножество этого выпускного класса (Col B). Я хотел быть в состоянии выделить в полном выпускном классе тех студентов, которые были членами подмножества.

Я поместил следующую формулу в третий столбец:

=if(A2=LOOKUP(A2,$B$2:$B$91),1100,0)

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

ответ дан Drew McAllister11

в C1 напишите =if(A1=B1 , 0, 1) . Затем в Conditional formatting выберите Data bars или Color scales . Это самый простой способ.

ответ дан A.Ramin walyar1

Всё ещё ищете ответ? Посмотрите другие вопросы с метками microsoft-excel microsoft-excel-2007 conditional-formatting.

Как проверить или найти, существует ли значение в другом столбце?

док проверьте, есть ли в другом списке 1

Предположим, у меня есть два столбца данных, которые содержат некоторые повторяющиеся значения в обоих столбцах, как показано на скриншоте слева. А теперь я хочу выяснить, существуют ли значения в столбце A и в столбце C. Сравнивать их одно за другим — не лучший метод, здесь я могу рассказать о некоторых удобных приемах решения этой проблемы в Excel.

Метод 1. Проверьте, существует ли значение в другом столбце с формулой

Метод 2: проверьте, существует ли значение в другом столбце, и выделите их с помощью условного форматирования

Способ 3: проверьте, существует ли значение в другом столбце, и сразу затените их с помощью Kutools for Excel


Проверьте, существует ли значение в другом столбце с формулой

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

1. Во-первых, вы можете скопировать два столбца данных и вставить их в столбец A и столбец C отдельно на новом листе, оставив столбец B пустым, чтобы ввести следующую формулу.

2. Введите эту формулу: = ЕСЛИ (ЕСТЬ ОШИБКА (ВПР (A4; $ C $ 4: $ C $ 14; 1; ЛОЖЬ)); «Не существует»; «Существует») в ячейку B2 и нажмите Enter ключ, см. снимок экрана:

док проверьте, есть ли в другом списке 2

Внимание: в приведенной выше формуле, A4 — это ячейка первого столбца, которую вы хотите проверить, находится ли она в другом столбце, и 4 канадских доллара: 14 канадских долларов столбец, с которым вы хотите сравнивать.

3. Затем выберите ячейку B4 и перетащите маркер заполнения к ячейкам, которые вам нужны, чтобы применить эту формулу, вы получите следующий результат: Существовать означает, что значение в списке A существует и в списке B, и Не существует указывает, что значение отсутствует в списке B.

док проверьте, есть ли в другом списке 3


Найдите или выделите, если значение существует в другом столбце:

Kutools for Excel‘s Выберите одинаковые и разные ячейки Эта функция может помочь вам выбрать и выделить одинаковые и разные значения ячеек между двумя столбцами по мере необходимости.      Нажмите, чтобы скачать Kutools for Excel!

док проверьте, есть ли в другом списке 11


Проверьте, существует ли значение в другом столбце, и выделите их с помощью условного форматирования

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

1. Выделите ячейки в списке A, которые вы хотите выделить также ячейки, из которых выходят значения, в списке B.

2. Затем нажмите Главная > Условное форматирование > Новое правило, В Новое правило форматирования диалоговое окно, щелкните Используйте формулу, чтобы определить, какие ячейки следует форматировать. из Выберите тип правила раздел, а затем введите эту формулу = ПОИСКПОЗ (A4; $ C $ 4: $ C $ 14,0) в Формат значений, где эта формула истинна текстовое поле, см. снимок экрана:

док проверьте, есть ли в другом списке 4

3. Затем нажмите Формат кнопку, чтобы перейти к Формат ячеек диалоговом окне и выберите нужный цвет под Заполнять вкладку, см. снимок экрана:

док проверьте, есть ли в другом списке 5

4. Затем нажмите OK > OK чтобы закрыть диалоговые окна, и теперь вы можете видеть, что значения как в списке A, так и в списке B выделены из списка A, см. снимок экрана:

док проверьте, есть ли в другом списке 6


Проверьте, существует ли значение в другом столбце, и сразу затените их с помощью Kutools for Excel

Работы С Нами Kutools for ExcelАвтора Выберите одинаковые и разные ячейки функция, мы можем быстро выбрать или заштриховать дубликаты или различия в двух столбцах. Это поможет вам с первого взгляда найти повторяющиеся или уникальные значения.

После установки Kutools for Excel, пожалуйста, сделайте следующее:

1. Нажмите Кутулс > Выберите > Выберите одинаковые и разные ячейки, см. снимок экрана:

док проверьте, есть ли в другом списке 7

2. В Выберите одинаковые и разные ячейки диалоговом окне выполните следующие действия:

A: Нажмите  с Найдите значения в: (Диапазон A) раздел, чтобы выбрать столбец данных, который вы хотите сравнить с другим столбцом. И нажмите  под Согласно: (Диапазон B) раздел, чтобы выбрать ячейки, с которыми вы хотите сравнивать.

B: Выбрать Каждый ряд под на основании .

C: Уточнить Те же ценности из Найти .

D: Вы можете заполнить цвет фона или цвет шрифта теми же значениями, которые вам нужны под Обработка результатов раздел, выберите цвет, который вам нравится.

док проверьте, есть ли в другом списке 8

3. После завершения настроек нажмите Ok все значения в столбце A и столбце C затенены в столбце A, как показано на следующем снимке экрана:

док проверьте, есть ли в другом списке 9

Внимание: Если вы хотите заполнить те же значения в столбце C, вам просто нужно заменить Найдите значения в данные столбца и Согласно информации столбец в диалоговом окне, и вы получите следующие результаты:

док проверьте, есть ли в другом списке 10

Скачать и бесплатную пробную версию Kutools for Excel Сейчас !


Проверьте, существует ли значение в другом столбце, и сразу затените их с помощью Kutools for Excel


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Skip to content

5 способов – поиск значения в массиве Excel

В статье предлагается несколько различных формул для выполнения поиска в двумерном массиве значений Excel.  Просмотрите эти варианты и выберите наиболее для вас подходящий.

При поиске данных в электронных таблицах Excel чаще всего вы будете искать вертикально в столбцах или горизонтально в строках. Но иногда вам нужно просматривать сразу два условия – как строки, так и столбцы. Другими словами, вы стремитесь найти значение на пересечении определенной строки и столбца. Это называется матричным поиском (также известным как двумерный или поиск в диапазоне). Далее показано, как это можно сделать различными способами.

  • Поиск в массиве при помощи ИНДЕКС ПОИСКПОЗ
  • Формула ВПР и ПОИСКПОЗ для поиска в диапазоне
  • Функция ПРОСМОТРX для поиска в строках и столбцах
  • Формула СУММПРОИЗВ для поиска по строке и столбцу
  • Поиск в матрице с именованными диапазонами

Поиск в массиве при помощи ИНДЕКС ПОИСКПОЗ

Самый популярный способ выполнить двусторонний поиск в Excel — использовать комбинацию ИНДЕКС с двумя ПОИСКПОЗ. Это разновидность классической формулы ПОИСКПОЗ ИНДЕКС , к которой вы добавляете еще одну функцию ПОИСКПОЗ, чтобы получить номера строк и столбцов:

ИНДЕКС( массив_данных ; ПОИСКПОЗ( значение_вертикальное ;  диапазон_поиска_столбец ; 0), ПОИСКПОЗ( значение_горизонтальное ;  диапазон_поиска_строка ; 0))

В этом способе, как и во всех остальных, мы используем поиск по двум условиям. Первое из них должно обнаружить совпадение в определенном столбце (в заголовках строк), а второе – в определенной строке (то есть, в заголовках столбцов). В результате мы имеем строку и столбец, которые соответствуют заданным условиям. А на пересечении их как раз и будут находиться искомые данные.

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

  • Массив_данных — B2:E11 (ячейки данных, не включая заголовки строк и столбцов)
  • Значение_вертикальное — H1 (целевой товар)
  • Диапазон_поиска_столбец – A2:A11 (заголовки строк: названия напитков)
  • Значение_горизонтальное — H2 (целевой период)
  • Диапазон_поиска_строка — B1:E1 (заголовки столбцов: временные периоды)

Соедините все аргументы вместе, и вы получите следующую формулу для поиска числа в диапазоне:

=ИНДЕКС(B2:E11; ПОИСКПОЗ(H1;A2:A11;0); ПОИСКПОЗ(H2;B1:E1;0))

Как работает эта формула?

Хотя на первый взгляд это может показаться немного сложным, логика здесь простая. Функция ИНДЕКС извлекает значение из массива данных на основе номеров строк и столбцов, а две функции ПОИСКПОЗ предоставляют ей эти номера:

ИНДЕКС( B2:E11; номер_строки ; номер_столбца )

Здесь мы используем способность ПОИСКПОЗ возвращать относительную позицию значения в искомом массиве .

Итак, чтобы получить номер строки, мы ищем нужный нам товар (H1) в заголовках строк (A2:A11):

ПОИСКПОЗ(H1;A2:A11;0)

Чтобы получить номер столбца, мы ищем нужную нам неделю (H2) в заголовках столбцов (B1:E1):

ПОИСКПОЗ(H2;B1:E1;0)

В обоих случаях мы ищем точное совпадение, присваивая третьему аргументу значение 0.

В этом примере первое ПОИСКПОЗ возвращает 2, потому что нужный товар (Sprite) находится в ячейке A3, которая является второй по счёту в диапазоне ​​A2:A11. Второй ПОИСКПОЗ возвращает 3, так как «Неделя 3» находится в ячейке D1, которая является третьей ячейкой в ​​B1:E1.

С учетом вышеизложенного формула сводится к:

ИНДЕКС(B2:E11; 2 ; 3 )

Она возвращает число на пересечении второй строки и третьего столбца в матрице B2:E4, то есть в ячейке D3.

Думаю, вы понимаете, что аналогичным образом можно производить поиск в двумерном массиве Excel не только числа, но и текста. Тип данных здесь не имеет значения.

Формула ВПР и ПОИСКПОЗ для поиска в диапазоне

Другой способ выполнить матричный поиск в Excel — использовать комбинацию функций ВПР и ПОИСКПОЗ:

ВПР( значение_вертикальное ; массив_данных ; ПОИСКПОЗ( значение_горизонтальное , диапазон_поиска_строка , 0), ЛОЖЬ)

Для нашего образца таблицы формула принимает следующий вид:

=ВПР(H1; A2:E11; ПОИСКПОЗ(H2;A1:E1;0); ЛОЖЬ)

Где:

  • Массив_данных — B2:E11 (ячейки данных, не включая заголовки строк и столбцов)
  • Значение_вертикальное — H1 (целевой товар)
  • Значение_горизонтальное — H2 (целевой период)
  • Диапазон_поиска_строка — А1:E1 (заголовки столбцов: временные периоды)

Основой формулы является функция ВПР, настроенная на точное совпадение (последний аргумент имеет значение ЛОЖЬ). Она ищет заданное значение (H1) в первом столбце массива (A2:E11) и возвращает данные из другого столбца в той же строке. Чтобы определить, из какого столбца вернуть значение, вы используете функцию ПОИСКПОЗ, которая также настроена на точное совпадение (последний аргумент равен 0):

ПОИСКПОЗ(H2;A1:E1;0)

ПОИСКПОЗ ищет текст из H2 в заголовках столбцов (A1:E1) и указывает относительное положение найденной ячейки. В нашем случае нужная неделя (3-я) находится в D1, которая является четвертой по счету в  массиве поиска. Итак, число 4 идет в аргумент номер_столбца функции ВПР:

=ВПР(H1; A2:E11; 4; ЛОЖЬ)

Далее ВПР находит точное совпадение H1 со значением в A3 и возвращает значение из 4-го столбца в той же строке, то есть из ячейки D3.

Важное замечаниеЧтобы формула работала корректно, диапазон_поиска (A2:E11) функции ВПР и диапазон_поиска (A1:E1) функции ПОИСКПОЗ должны иметь одинаковое количество столбцов. Иначе число, переданное в номер_столбца, будет неправильным (не будет соответствовать положению столбца в массиве данных).

Функция ПРОСМОТРX для поиска в строках и столбцах

Недавно Microsoft представила еще одну функцию в Excel, которая призвана заменить все существующие функции поиска, такие как ВПР, ГПР и ИНДЕКС+ПОИСКПОЗ. Помимо прочего, ПРОСМОТРX может смотреть на пересечение определенной строки и столбца:

ПРОСМОТРX( значение_вертикальное ; диапазон_поиска_столбец ; ПРОСМОТРX( значение_горизонтальное ; диапазон_поиска_строка ; массив_данных ))

Для нашего примера набора данных формула выглядит следующим образом:

=ПРОСМОТРX(H1; A2:A11; ПРОСМОТРX(H2; B1:E1; B2:E11))

Примечание. В настоящее время ПРОСМОТРX — это функция, доступная только подписчикам Office 365 и более поздних версий.

В формуле используется функция ПРОСМОТРX для возврата всей строки или столбца. Внутренняя функция ищет целевой период времени в строке заголовка и возвращает все значения для этой недели (в данном примере для 3-й). Эти значения переходят в аргумент возвращаемый_массив внешнего ПРОСМОТРX:

=ПРОСМОТРX(H1; A2:A11; {544:87:488:102:87:433:126:132:111:565})

Внешняя функция ПРОСМОТРX ищет нужный товар в заголовках столбцов и извлекает значение из той же позиции из возвращаемого_массива.

Формула СУММПРОИЗВ для поиска по строке и столбцу

Функция СУММПРОИЗВ чрезвычайно универсальна — она может делать множество вещей, выходящих за рамки ее предназначения, особенно когда речь идет об оценке нескольких условий.

Чтобы найти значение на пересечении определенных строки и столбца, используйте эту общую формулу:

СУММПРОИЗВ ( диапазон_поиска_столбец = значение_вертикальное ) * ( диапазон_поиска_строка = значение_горизонтальное), массив_данных )

Чтобы выполнить поиск данных в массиве по строке и столбцу в нашем наборе данных, формула выглядит следующим образом:

=СУММПРОИЗВ((A2:A11=H1)*(B1:E1=H2); B2:E11)

Приведенный ниже вариант также будет работать:

=СУММПРОИЗВ((A2:A11=H1)*(B1:E1=H2)*B2:E11)

Теперь поясним подробнее. В начале мы сравниваем два значения поиска с заголовками строк и столбцов (целевой товар в H1 со всеми наименованиями в A2: A11 и целевой период времени в H2 со всеми неделями в B1: E1):

(A2:A11=H1)*(B1:E1=H2)

Это дает нам два массива значений ИСТИНА и ЛОЖЬ, где ИСТИНА означает совпадения:

{ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ}) * ({ЛОЖЬ;ЛОЖЬ;ИСТИНА;ЛОЖЬ}

Операция умножения преобразует значения ИСТИНА и ЛОЖЬ в 1 и 0 и создает матрицу из 4 столбцов и 10 строк (строки разделяются двоеточием, а каждый столбец данных — точкой с запятой):

{0;0;0;0:0;0;1;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0}

Функция СУММПРОИЗВ умножает элементы приведенного выше массива на элементы B2:E4, находящихся в тех же позициях:

{0;0;0;0:0;0;1;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0; 0;0:0;0;0;0:0;0;0;0:0;0;0;0} * {455;345;544;366:65;77;87;56:766; 655;488;865:129;66;102;56:89;141;87;89:566;511;433;522:154; 144;126; 162:158;165;132;155:112;143;111; 125:677;466;565;766})

И поскольку умножение на ноль дает в результате ноль, остается только элемент, соответствующий 1 в первом массиве:

=СУММПРОИЗВ({0;0;0;0:0;0;87;0:0;0;0;0:0;0;0;0:0;0;0;0:0; 0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0})

Наконец, СУММПРОИЗВ складывает все элементы результирующего массива и возвращает значение 87.

Примечание . Если в вашей таблице несколько заголовков строк и/или столбцов с одинаковыми именами, итоговый массив будет содержать более одного числа, отличного от нуля. И все эти числа будут суммированы. В результате вы получите сумму значений, удовлетворяющую обоим критериям. Это то, что отличает формулу СУММПРОИЗВ от ПОИСКПОЗ и ВПР, которые возвращают только первое найденное совпадение.

Поиск в матрице с именованными диапазонами

Еще один достаточно простой способ поиска в массиве в Excel — использование именованных диапазонов. Рассмотрим пошагово:

Шаг 1. Назовите столбцы и строки

Самый быстрый способ назвать каждую строку и каждый столбец в вашей таблице:

  1. Выделите всю таблицу (в нашем случае A1:E11).
  2. На вкладке « Формулы » в группе « Определенные имена » щелкните « Создать из выделенного » или нажмите комбинацию клавиш  Ctrl + Shift + F3.
  3. В диалоговом окне « Создание имени из выделенного » выберите « в строке выше » и « в столбце слева» и нажмите «ОК».

Это автоматически создает имена на основе заголовков строк и столбцов. Однако есть пара предостережений:

  • Если ваши заголовки столбцов и/или строк являются числами или содержат определенные символы, которые не разрешены в именах Excel, то имена для таких столбцов и строк не будут созданы. Чтобы просмотреть список созданных имен, откройте Диспетчер имен (Ctrl + F3). Если некоторые имена отсутствуют, определите их вручную.
  • Если некоторые из ваших заголовков строк или столбцов содержат пробелы, то они будут заменены символами подчеркивания, например, Неделя_1.

Шаг 2. Создание формулы поиска по матрице

Чтобы получить значение из матрицы на пересечении определенной строки и столбца, просто введите одну из следующих общих формул в пустую ячейку:

=имя_строки имя_столбца

Или наоборот:

=имя_столбца имя_строки

Например, чтобы получить продажу Sprite в 3-й неделе, используйте выражение:

=Sprite неделя_3

То есть, имена диапазонов здесь разделены пробелом, который в данном случае является оператором пересечения массивов.

Если кому-то нужны более подробные инструкции, опишем весь процесс пошагово:

  1. В ячейке, в которой вы хотите отобразить результат, введите знак равенства (=).
  2. Начните вводить имя целевой строки, Sprite. После того, как вы введете пару символов, Excel отобразит все существующие имена, соответствующие вашему вводу. Дважды щелкните нужное имя, чтобы ввести его в формулу.
  3. После имени строки введите пробел , который в данном случае работает как оператор пересечения.
  4. Введите имя целевого столбца ( в нашем случае неделя_3 ).
  5. Как только будут введены имена строки и столбца, Excel выделит соответствующую строку и столбец в вашей таблице, и вы нажмете Enter, чтобы завершить ввод:

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

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

Еще несколько материалов по теме:

Поиск ВПР нескольких значений по нескольким условиям В статье показаны способы поиска (ВПР) нескольких значений в Excel на основе одного или нескольких условий и возврата нескольких результатов в столбце, строке или в отдельной ячейке. При использовании Microsoft…
Поиск ИНДЕКС ПОИСКПОЗ по нескольким условиям В статье показано, как выполнять быстрый поиск с несколькими условиями в Excel с помощью ИНДЕКС и ПОИСКПОЗ. Хотя Microsoft Excel предоставляет специальные функции для вертикального и горизонтального поиска, опытные пользователи…
ИНДЕКС ПОИСКПОЗ как лучшая альтернатива ВПР В этом руководстве показано, как использовать ИНДЕКС и ПОИСКПОЗ в Excel и чем они лучше ВПР. В нескольких недавних статьях мы приложили немало усилий, чтобы объяснить основы функции ВПР новичкам и предоставить…
Поиск в массиве при помощи ПОИСКПОЗ В этой статье объясняется с примерами формул, как использовать функцию ПОИСКПОЗ в Excel.  Также вы узнаете, как улучшить формулы поиска, создав динамическую формулу с функциями ВПР и ПОИСКПОЗ. В Microsoft…
Функция ИНДЕКС в Excel — 6 примеров использования В этом руководстве вы найдете ряд примеров формул, демонстрирующих наиболее эффективное использование ИНДЕКС в Excel. Из всех функций Excel, возможности которых часто недооцениваются и используются недостаточно, ИНДЕКС определенно занимает место…
Функция СУММПРОИЗВ с примерами формул В статье объясняются основные и расширенные способы использования функции СУММПРОИЗВ в Excel. Вы найдете ряд примеров формул для сравнения массивов, условного суммирования и подсчета ячеек по нескольким условиям, расчета средневзвешенного значения…
Средневзвешенное значение — формула в Excel В этом руководстве демонстрируются два простых способа вычисления средневзвешенного значения в Excel — с помощью функции СУММ (SUM) или СУММПРОИЗВ (SUMPRODUCT в английском варианте). В одной из предыдущих статей мы…

Понравилась статья? Поделить с друзьями:
  • Как в excel назвать оси графика
  • Как в excel найти все ячейки с формулами
  • Как в excel нажав ячейку выбрать
  • Как в excel найти все числа в диапазоне
  • Как в excel набрать текст в одной ячейке