ХАСАНИ

Применяется к
Excel для Microsoft 365 Excel для Microsoft 365 для Mac

Функция HASANY позволяет проверить, содержит ли массив или диапазон хотя бы одно из искомых значений. Он возвращает значение ИСТИНА, если найдено какое-либо значение, и значение ЛОЖЬ, если ни одно из них не найдено.

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

Синтаксис

Функция HASANY определяет, содержит ли массив какие-либо значения.

Синтаксис функции HASANY выглядит следующим образом:

ХАСАНИ(массив; значения)

Аргумент Описание
массив.
(обязательно)
Массив или диапазон для поиска. Поиск выполняется на каждом уровне вложенного массива.
Значения
(обязательно)
Значения, которые необходимо проверить. Функция HASANY возвращает значение ИСТИНА, если какое-либо из них найдено.

Примечание

  • Функция ХАСАНИ всегда возвращает одно значение ИСТИНА или ЛОЖЬ независимо от того, сколько значений вы ищете. Чтобы получить один результат для каждого значения, используйте функцию HAS. Чтобы требовалось наличие всех значений, используйте функцию ХАСОЛЛ.
  • Сравнения строги в отношении типа. Цифра 1 не соответствует тексту "1", а цифра 1 не соответствует аргументу ИСТИНА. При сравнении текста регистр не учитывается, поэтому "яблоко" сопоставляется с "APPLE".
  • Если массив пуст, функция HASANY возвращает ошибку #CALC!.
  • Если значения содержат ошибку, она возвращается.

Примеры

Скопируйте пример данных и вставьте их в ячейку A1 нового листа Excel. При необходимости измените ширину столбцов, чтобы видеть все данные.

Пример 1

Проверка наличия в диапазоне хотя бы одного из значений.

Данные.        
10 20 30 40 50
Формулы. Вопросы
=ХАСАНИ(A2:E2;{20,99}) В списке 20 или 99?
=ХАСАНИ(A2:E2;{7,8,9}) Есть ли в списке 7, 8 или 9?
=ХАСАНИ(A2:E2;30) Есть ли в списке 30?

На следующем рисунке показаны результаты.

Использование функции HASANY для проверки наличия в диапазоне хотя бы одного из нескольких значений

Пример 2

Выполняйте поиск внутри вложенного массива. Формула ={{{1,2};{3,4}}} в ячейке A1 сохраняет вложенный массив в одной ячейке.

Формулы. Описание
=ХАСАНИ(A1;{2,5}) Возвращает значение ИСТИНА. HASANY выполняет поиск на каждом уровне, поэтому 2 находится внутри {1,2}
=ХАСАНИ(A1;{5,6}) Возвращает значение ЛОЖЬ. Ни одно из значений не отображается ни на одном из уровней

На следующем рисунке показаны результаты.

Использование функции HASANY для поиска во вложенном массиве, хранящемся в одной ячейке

Пример 3

Проверьте список тегов. Каждая ячейка в столбце B содержит список тегов, отображаемых через запятую.

После вставки данных выделите B2:B4 и нажмите Ctrl+J , чтобы преобразовать каждую ячейку в список. До тех пор каждая ячейка будет содержать один фрагмент текста, а формулы ниже не найдут отдельные теги.

Предмет Теги
Продукт А срочно, обзор, Q1
Изделие Б отправлено, Q2
Изделие C срочно, Q2
Формулы. Описание
=HASANY(B2;{"urgent";"blocked"}) Возвращает значение ИСТИНА. Продукт А помечен как срочный
=ХАСАНИ(B3;{"срочно";"заблокировано"}) Возвращает значение ЛОЖЬ. У товара Б нет тега
=HASANY(B2:B4;"отправлено") Возвращает значение ИСТИНА. Поиск во всех трех ячейках выполняется как одна коллекция

Примечание

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

На следующем рисунке показаны результаты.

Использование функции HASANY для проверки того, содержит ли ячейка вложенный массив тегов какие-либо из выбранных тегов