Как найти несколько значений в Excel (8 быстрых методов)

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

В этой статье я расскажу о том, как найти несколько значений в Excel. Часто при работе с электронными таблицами поиск сразу нескольких значений может быть очень полезен. Например, у нас есть набор данных, содержащий хобби нескольких людей. Однако в этом наборе данных один человек ( Эмили ) имеет более одного хобби. Итак, сейчас мы будем использовать несколько инструментов и функций excel, чтобы получить сразу несколько хобби Эмили. Кроме того, я покажу, как объединить несколько значений в одной ячейке.

Скачать Практическое пособие

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

Найти несколько значений.xlsm

8 методов поиска нескольких значений в Excel

1. Используйте инструмент "Найти и заменить" для получения нескольких значений в Excel

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

Шаги:

  • Сначала выберите набор данных ( B4:C11 ).

  • Далее нажмите Ctrl + F чтобы вызвать Найти и заменить окно или перейдите в Главная > Редактирование группа> Найти и выбрать > Найти .
  • Затем введите ' Эмили ' в Найдите то, что поле и нажмите на кнопку Найти все .

  • В результате мы обнаружили 3 имена ( Эмили ), перечисленные в окне ниже.

Читать далее: Как найти значение в диапазоне в Excel (3 метода)

2. Опция фильтра Excel для поиска нескольких значений

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

Шаги:

  • Сначала щелкните правой кнопкой мыши на ячейке, к которой вы хотите применить фильтр. Я выбрал Клетка B5 , так как мне нужно отфильтровать все имена, Эмили .
  • Затем перейдите к Фильтр > Фильтр по значению выделенной ячейки .

  • Следовательно, все ячейки, содержащие имя Эмили фильтруются следующим образом.

  • Теперь, если вы хотите отменить фильтрацию, просто нажмите на кнопку Автофильтр значок в заголовке набора данных, выберите Очистить фильтр от "Имя" и нажмите OK .

Читать далее: Как найти символ в строке в Excel

3. Применение расширенного фильтра для возврата нескольких значений

В Excel есть опция фильтрации под названием Расширенный фильтр Эта опция очень полезна при поиске нескольких значений. Вы должны задать диапазон критериев для применения опции Расширенный фильтр вариант. Давайте пройдемся по шагам, связанным с этим методом.

Шаги:

  • Сначала установите диапазон критериев ( B13:C14 ).

  • Далее, перейдите к Данные > Сортировка и фильтр > Расширенный .

  • Как следствие Advanced Filte появится окно r. Теперь установите Диапазон списка ( Диапазон набора данных ) и Диапазон критериев и нажмите OK .

  • Наконец, здесь мы получили все увлечения Эмили сразу.

Примечание

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

4. Возврат нескольких значений с помощью таблицы, определенной в Excel

Мы можем создать Определенные таблицы Excel и таким образом применить фильтрацию для получения нескольких значений. Это очень удобный и простой способ поиска нескольких значений.

Шаги:

  • Сначала щелкните на любой из ячеек набора данных ( B4:C11 ).

  • Далее нажмите Ctrl + t с клавиатуры. Вследствие этого Создать таблицу Появится окно. Проверьте диапазон таблицы и нажмите кнопку OK .

  • В результате мы получили таблицу, созданную на основе нашего набора данных.

  • Теперь нажмите на значок стрелки вниз рядом с заголовком таблицы. Затем отметьте название Эмили и нажмите OK

  • В конечном итоге, вот наш ожидаемый результат фильтрации.

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

  • Как найти текст в ячейке в Excel
  • Excel Поиск текста в диапазоне (11 быстрых методов)
  • Как найти, содержит ли ячейка определенный текст в Excel
  • Найти символ в строке Excel (8 простых способов)

5. Вставка функции FILTER для поиска нескольких значений

На этот раз мы будем использовать функция ФИЛЬТР для возврата нескольких значений в excel.

Шаги:

  • Сначала введите приведенную ниже формулу в Ячейка C14 .
=FILTER(C5:C11,B5:B11=B14)

  • Затем нажмите Войти .
  • Следовательно, все увлечения Эмили возвращаются сразу.

Примечание

➤ The ФИЛЬТР функция доступна только для Excel 365 подписчики.

6. поиск нескольких значений с помощью функции ИНДЕКС в Excel

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

Шаги:

  • Первоначально введите следующую формулу в Ячейка C14 .
=INDEX($B$5:$C$11,SMALL(IF($B$5:$B$11=$B$14,ROW($B$5:$B$11)),ROW(1:1))-4,2)

  • В результате мы получили следующий результат.

  • Затем перетащите вниз Наполнительная рукоятка ( + ) знак, чтобы получить другие значения.

  • Как следствие, вот список увлечений Эмили, который мы получили.

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

  • IF($B$5:$B$11=$B$14,ROW($B$5:$B$11))

Вот, функция ПЧ возвращает номер строки, если диапазон ячеек B5:B11 равен B14 , в противном случае возвращается FALSE .

  • SMALL(IF($B$5:$B$11=$B$14,ROW($B$5:$B$11)),ROW(1:1))

Теперь в этой части формулы используется функция SMALL который возвращает n-й наименьшее значение. Эта формула вернет числа: 5 , 8 , 11 .

  • INDEX($B$5:$C$11,SMALL(IF($B$5:$B$11=$B$14,ROW($B$5:$B$11)),ROW(1:1))-4,2)

Теперь наступает заключительная часть формулы. Мы знаем, что ИНДЕКС функция возвращает значение в заданной позиции. Другое дело, что функция ИНДЕКС Функция считает первую строку нашей таблицы строкой 1. Поскольку мой набор данных таблицы начинается со строки 5 я вычел 4 из ROW значение, чтобы получить нужную строку из набора данных. Итак, для массива B5:C11 , номера строк 5 , 8 , 11 , и колонка нет 2 , the ИНДЕКС функция обеспечит желаемый результат

📌 Скрыть ошибки, возникающие при использовании вышеприведенной формулы

Существует проблема с вышеупомянутым ИНДЕКС формула. Когда вы перетаскиваете вниз Наполнительная рукоятка ( + ) знак, формула возвращает ошибку ( #NUM! ) после определенного значения. Таким образом, для исправления вышеприведенной формулы мы будем использовать ЕСЛИ и ISERROR функции.

Шаги:

  • Сначала введите приведенную ниже формулу в Ячейка C14 .
=IF(ISERROR(INDEX($B$5:$C$11,SMALL(IF($B$5:$B$11=$B$14,ROW($B$5:$B$11)),ROW(1:1))-4,2)),"",INDEX($B$5:$C$11,SMALL(IF($B$5:$B$11=$B$14,ROW($B$5:$B$11)),ROW(1:1))-4,2)))

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

Здесь ISERROR Функция проверяет, является ли значение ошибкой, и возвращает TRUE или FALSE. Приведенная выше формула, обернутая с помощью ЕСЛИ и ISERROR функции проверяют, является ли результат массива ошибкой или нет, и таким образом возвращают пустое место (""), если результат является ошибкой, в противном случае возвращают соответствующее значение.

7. Определенная пользователем функция для поиска нескольких значений в Excel (VBA)

В этом методе мы обсудим, как использовать Функция, определяемая пользователем для получения нескольких значений в excel. Здесь мы будем использовать функцию Функция, определяемая пользователем : vbaVlookup .

Шаги:

  • Во-первых, перейдите к активному рабочему листу.
  • Во-вторых, зайдите на Разработчик > Visual Basic .

  • Затем Visual Basic появится окно. Перейдите к Проект VBA угол (верхний левый угол окна).
  • В-третьих, щелкните правой кнопкой мыши на названии проекта и перейдите к пункту Вставка > Модуль .

  • В результате вы получите Модуль Запишите приведенный ниже код на Модуль .
 'Имя определяемой пользователем функции и аргументы Function vbaVlookup(lookup_value As Range, tbl As Range, col_index_num As Integer, Optional layout As String = "v") 'Объявление переменных и типов данных Dim r As Single, Lrow, Lcol As Single, temp() As Variant 'Изменение размера массива переменных temp ReDim temp(0) 'Итерация ячеек в диапазоне ячеек For r = 1 To tbl.Rows.Count 'Проверка равен ли lookup_valueзначение ячейки If lookup_value = tbl.Cells(r, 1) Then 'Сохраняем значение ячейки в переменной массива temp temp(UBound(temp)) = tbl.Cells(r, col_index_num) 'Добавляем еще один контейнер в переменную массива temp ReDim Preserve temp(UBound(temp) + 1) End If Next r 'Проверяем, равна ли переменная layout h If layout = "h" Then 'Сохраняем количество столбцов, которое ввел пользователь This User DefinedFunction in. Lcol = Range(Application.Caller.Address).Columns.Count 'Итерация по каждому контейнеру в переменной массива temp, который не будет заполнен For r = UBound(temp) To Lcol 'Сохраняем пробел в контейнере массива temp(UBound(temp)) = "" 'Увеличиваем размер переменной массива temp на 1 ReDim Preserve temp(UBound(temp) + 1) Next r 'Уменьшаем размер массиваvariable temp with 1 ReDim Preserve temp(UBound(temp) - 1) 'Возвращаем значения на рабочий лист vbaVlookup = temp 'Эти строки будут уничтожены, если переменная layout не равна h Else 'Сохраняем количество строк, которые ввел пользователь в этой функции, определяемой пользователем in Lrow = Range(Application.Caller.Address).Rows.Count 'Итерируем пустые ячейки и ничего в них не сохраняем, чтобы избежать ошибкидля отображения For r = UBound(temp) To Lrow temp(UBound(temp)) = "" ReDim Preserve temp(UBound(temp) + 1) Next r 'Уменьшаем размер переменной массива temp на 1 ReDim Preserve temp(UBound(temp) - 1) 'Возвращаем переменную temp в рабочий лист со значениями, переставленными по вертикали vbaVlookup = Application.Transpose(temp) End If End Function 

  • После этого, если вы начнете писать функцию в формате Ячейка C14 функция будет отображаться так же, как и другие функции excel.

  • Затем запишите приведенную ниже формулу в Ячейка C14 .
=vbaVlookup(B14,B5:B11,2)

  • Наконец, ниже представлены многочисленные увлечения Эмили.

8. Получение нескольких значений в одной ячейке Excel

До сих пор мы получали несколько значений, перечисленных вертикально в разных ячейках. Однако теперь мы покажем несколько значений, объединенных в одной ячейке. Здесь мы будем использовать функция TEXTJOIN вместе с ФИЛЬТР функцию для получения объединенных множественных значений.

Шаги:

  • Сначала введите приведенную ниже формулу в Ячейка C14 .
=TEXTJOIN(",",TRUE, FILTER(C5:C11, B5:B11=B14))

  • В результате все увлечения Эмили представлены горизонтально в одной ячейке.

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

Заключение

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

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