Найти значение в массиве excel с условием

Совет: Попробуйте использовать новые функции ПРОСМОТРX и XMATCH, а также улучшенные версии функций, описанные в этой статье. Эти новые функции работают в любом направлении и возвращают точные совпадения по умолчанию, что упрощает и упрощает работу с ними по сравнению с предшественниками.

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

Функции ВВ., а также ИНДЕКС и ВЫБОРПОЗ — одни из самых полезных функций в Excel.

Примечание: Мастер подметок больше не доступен в Excel.

Ниже в качестве примера по выбору вы можете найти пример использования в этой области.

=ВПР(B2;C2:E7,3,ИСТИНА)

В этом примере B2 является первым аргументом элементом данных, который требуется для работы функции. В случае СРОТ ВЛ.В.ОВ этот первый аргумент является искомой значением. Этот аргумент может быть ссылкой на ячейку или фиксированным значением, таким как «кузьмина» или 21 000. Вторым аргументом является диапазон ячеек C2–:E7, в котором нужно найти и найти значение. Третий аргумент — это столбец в диапазоне ячеек, содержащий ищите значение.

Четвертый аргумент необязателен. Введите истина или ЛОЖЬ. Если ввести ИСТИНА или оставить аргумент пустым, функция возвращает приблизительное совпадение значения, указанного в качестве первого аргумента. Если ввести ЛОЖЬ, функция будет соответствовать значению, заведомо первому аргументу. Другими словами, если оставить четвертый аргумент пустым или ввести ИСТИНА, это обеспечивает большую гибкость.

В этом примере показано, как работает функция. При вводе значения в ячейку B2 (первый аргумент) в результате поиска в ячейках диапазона C2:E7 (2-й аргумент) выполняется поиск в ней и возвращается ближайшее приблизительное совпадение из третьего столбца в диапазоне — столбца E (третий аргумент).

Типичный пример использования функции ВПР

Четвертый аргумент пуст, поэтому функция возвращает приблизительное совпадение. Иначе потребуется ввести одно из значений в столбец C или D, чтобы получить какой-либо результат.

Если вы хорошо разучились работать с функцией ВГТ.В.В., то в равной степени использовать ее будет легко. Вы вводите те же аргументы, но выполняется поиск в строках, а не в столбцах.

Использование индекса и MATCH вместо ВРОТ

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

В данном примере представлен небольшой список, в котором искомое значение (Воронеж) не находится в крайнем левом столбце. Поэтому мы не можем использовать функцию ВПР. Для поиска значения «Воронеж» в диапазоне B1:B11 будет использоваться функция ПОИСКПОЗ. Оно найдено в строке 4. Затем функция ИНДЕКС использует это значение в качестве аргумента поиска и находит численность населения Воронежа в четвертом столбце (столбец D). Использованная формула показана в ячейке A14.

Использование функций ИНДЕКС и ПОИСКПОЗ для поиска значения

Дополнительные примеры использования индексов и MATCH вместо В ПРОСМОТР см. в статье билла Https://www.mrexcel.com/excel-tips/excel-vlookup-index-match/ Билла Джилена (Bill Jelen), MVP корпорации Майкрософт.

Попробуйте попрактиковаться

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

Пример работы с ВЛОКОНПОМ

Скопируйте следующие данные в пустую таблицу.

Совет: Прежде чем врезать данные в Excel, установите для столбцов A–C ширину в 250 пикселей и нажмите кнопку «Перенос текста» (вкладка «Главная», группа «Выравнивание»).

Плотность

Вязкость

Температура

0,457

3,55

500

0,525

3,25

400

0,606

2,93

300

0,675

2,75

250

0,746

2,57

200

0,835

2,38

150

0,946

2,17

100

1,09

1,95

50

1,29

1,71

0

Формула

Описание

Результат

=ВПР(1,A2:C10,2)

Используя приблизительное соответствие, функция ищет в столбце A значение 1, находит наибольшее значение, которое меньше или равняется 1 и составляет 0,946, а затем возвращает значение из столбца B в той же строке.

2,17

=ВПР(1,A2:C10,3,ИСТИНА)

Используя приблизительное соответствие, функция ищет в столбце A значение 1, находит наибольшее значение, которое меньше или равняется 1 и составляет 0,946, а затем возвращает значение из столбца C в той же строке.

100

=ВПР(0,7,A2:C10,3,ЛОЖЬ)

Используя точное соответствие, функция ищет в столбце A значение 0,7. Поскольку точного соответствия нет, возвращается сообщение об ошибке.

#Н/Д

=ВПР(0,1,A2:C10,2,ИСТИНА)

Используя приблизительное соответствие, функция ищет в столбце A значение 0,1. Поскольку 0,1 меньше наименьшего значения в столбце A, возвращается сообщение об ошибке.

#Н/Д

=ВПР(2,A2:C10,2,ИСТИНА)

Используя приблизительное соответствие, функция ищет в столбце A значение 2, находит наибольшее значение, которое меньше или равняется 2 и составляет 1,29, а затем возвращает значение из столбца B в той же строке.

1,71

Пример ГВ.Г.В.В.

Скопируйте всю таблицу и вставьте ее в ячейку A1 пустого листа Excel.

Совет: Прежде чем врезать данные в Excel, установите для столбцов A–C ширину в 250 пикселей и нажмите кнопку «Перенос текста» (вкладка «Главная», группа «Выравнивание»).

Оси

Подшипники

Болты

4

4

9

5

7

10

6

8

11

Формула

Описание

Результат

=ГПР(«Оси»;A1:C4;2;ИСТИНА)

Поиск слова «Оси» в строке 1 и возврат значения из строки 2, находящейся в том же столбце (столбец A).

4

=ГПР(«Подшипники»;A1:C4;3;ЛОЖЬ)

Поиск слова «Подшипники» в строке 1 и возврат значения из строки 3, находящейся в том же столбце (столбец B).

7

=ГПР(«П»;A1:C4;3;ИСТИНА)

Поиск буквы «П» в строке 1 и возврат значения из строки 3, находящейся в том же столбце. Так как «П» найти не удалось, возвращается ближайшее из меньших значений: «Оси» (в столбце A).

5

=ГПР(«Болты»;A1:C4;4)

Поиск слова «Болты» в строке 1 и возврат значения из строки 4, находящейся в том же столбце (столбец C).

11

=ГПР(3;{1;2;3:»a»;»b»;»c»;»d»;»e»;»f»};2;ИСТИНА)

Поиск числа 3 в трех строках константы массива и возврат значения из строки 2 того же (в данном случае — третьего) столбца. Константа массива содержит три строки значений, разделенных точкой с запятой (;). Так как «c» было найдено в строке 2 того же столбца, что и 3, возвращается «c».

c

Примеры индекса и match

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

Скопируйте всю таблицу и вставьте ее в ячейку A1 пустого листа Excel.

Совет: Перед тем как вировать данные в Excel, установите для столбцов A–D ширину в 250 пикселей и нажмите кнопку «Перенос текста» (вкладка «Главная», группа «Выравнивание»).

Счет

Город

Дата выставления счета

Счет с самой ранней датой по городу, с датой

3115

Казань

07.04.12

=»Казань = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),3),»m/d/yy»)

3137

Казань

09.04.12

=»Орел = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),3),»m/d/yy»)

3154

Казань

11.04.12

=»Челябинск = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),3),»m/d/yy»)

3191

Казань

21.04.12

=»Нижний Новгород = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний Новгород»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний Новгород»,$B$2:$B$33,0),3),»m/d/yy»)

3293

Казань

25.04.12

=»Москва = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),3),»m/d/yy»)

3331

Казань

27.04.12

3350

Казань

28.04.12

3390

Казань

01.05.12

3441

Казань

02.05.12

3517

Казань

08.05.12

3124

Орел

09.04.12

3155

Орел

11.04.12

3177

Орел

19.04.12

3357

Орел

28.04.12

3492

Орел

06.05.12

3316

Челябинск

25.04.12

3346

Челябинск

28.04.12

3372

Челябинск

01.05.12

3414

Челябинск

01.05.12

3451

Челябинск

02.05.12

3467

Челябинск

02.05.12

3474

Челябинск

04.05.12

3490

Челябинск

05.05.12

3503

Челябинск

08.05.12

3151

Нижний Новгород

09.04.12

3438

Нижний Новгород

02.05.12

3471

Нижний Новгород

04.05.12

3160

Москва

18.04.12

3328

Москва

26.04.12

3368

Москва

29.04.12

3420

Москва

01.05.12

3501

Москва

06.05.12

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 в английском варианте). В одной из предыдущих статей мы…

Поиск и подстановка по нескольким условиям

Постановка задачи

Если вы продвинутый пользователь Microsoft Excel, то должны быть знакомы с функцией поиска и подстановки ВПР или VLOOKUP (если еще нет, то сначала почитайте эту статью, чтобы им стать). Для тех, кто понимает, рекламировать ее не нужно :) — без нее не обходится ни один сложный расчет в Excel. Есть, однако, одна проблема: эта функция умеет искать данные только по совпадению одного параметра. А если у нас их несколько?

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

vlookup-2cols1.png

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

Способ 1. Дополнительный столбец с ключом поиска

Это самый очевидный и простой (хотя и не самый удобный) способ. Поскольку штатная функция ВПР (VLOOKUP) умеет искать только по одному столбцу, а не по нескольким, то нам нужно из нескольких сделать один!

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

vlookup-2cols2.png

Теперь можно использовать знакомую функцию ВПР (VLOOKUP) для поиска склеенной пары НектаринЯнварь из ячеек H3 и J3 в созданном ключевом столбце:

vlookup-2cols3.png

Плюсы: Простой способ, знакомая функция, работает с любыми данными.

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

Способ 2. Функция СУММЕСЛИМН

Если нужно найти именно число (в нашем случае цена как раз число), то вместо ВПР можно использовать функцию СУММЕСЛИМН (SUMIFS), появившуюся начиная с Excel 2007. По идее, эта функция выбирает и суммирует числовые значения по нескольким (до 127!) условиям. Но если в нашем списке нет повторяющихся товаров внутри одного месяца, то она просто выведет значение цены для заданного товара и месяца:

vlookup-2cols4.png

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

Минусы: Работает только с числовыми данными на выходе, не применима для поиска текста, не работает в старых версиях Excel (2003 и ранее).

Способ 3. Формула массива

О том, как спользовать связку функций ИНДЕКС (INDEX) и ПОИСКПОЗ (MATCH) в качестве более мощной альтернативы ВПР я уже подробно описывал (с видео). В нашем же случае, можно применить их для поиска по нескольким столбцам в виде формулы массива. Для этого:

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

    vlookup-2cols6.png

  3. Нажмите в конце не Enter, а сочетание Ctrl+Shift+Enter, чтобы ввести формулу не как обычную, а как формулу массива.

Как это на самом деле работает:

Функция ИНДЕКС выдает из диапазона цен C2:C161 содержимое N-ой ячейки по порядку. При этом порядковый номер нужной ячейки нам находит функция ПОИСКПОЗ. Она ищет связку названия товара и месяца (НектаринЯнварь) по очереди во всех ячейках склеенного из двух столбцов диапазона A2:A161&B2:B161 и выдает порядковый номер ячейки, где нашла точное совпадение. По сути, это первый способ, но ключевой столбец создается виртуально прямо внутри формулы, а не в ячейках листа.

Плюсы: Не нужен отдельный столбец, работает и с числами и с текстом.

Минусы: Ощутимо тормозит на больших таблицах (как и все формулы массива, впрочем), особенно если указывать диапазоны «с запасом» или сразу целые столбцы (т.е. вместо A2:A161 вводить A:A и т.д.) Многим непривычны формулы массива в принципе (тогда вам сюда).

Ссылки по теме

  • Как искать и подставлять данные с помощью функции ВПР (VLOOKUP)
  • Что такое формулы массива и как их использовать
  • Как использовать связку функций ИНДЕКС и ПОИСКПОЗ вместо ВПР
  • Как извлечь сразу все значения, а не только первое с помощью ВПР

Время на прочтение
16 мин

Количество просмотров 236K

Добрый день, уважаемые хаброжители!

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

Поиск выдал мне всего одну статью на Хабре по схожей тематике — «Талмуд по формулам в Google SpreadSheet». В ней дано хорошее описание базовых вещей для работы в excel (хотя он и не 100% про сам excel).

Таким образом, накопив определенный пул запросов/задач, появилась идея их типизировать и предложить возможные решения (пусть не все возможные, но быстро дающие результат).

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

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

Кейс_1: Логические функции и функции поиска совпадений
«У меня есть набор значений в табличке и необходимо что бы при выполнении определенного условия/набора условий выводилось определенное значение» (с) Пользователь

Данные, как правило, представлены в табличной форме:

image

Условие:

  • если значение в столбце «Количество» больше 5,
  • то нужно вывести в колонке «Результат» значение «Заказ не требуется»,

В этом нам поможет формула «ЕСЛИ» (IF), которая относится к логическим формулам и может выдавать в решении любые значения, которые мы заранее записываем в формуле. Обращаю внимание, что любые текстовые значения записываются, используя кавычки.

Синтаксис формулы следующий:
ЕСЛИ(лог_выражение, [значение_если_истина], [значение_если_ложь])

  • Лог_выражение — выражение, дающее в результате значение ИСТИНА или ЛОЖЬ.
  • Значение_если_истина — значение, которое выводится, если логическое выражение истинно
  • Значение_если_ложь — значение, которое выводится, если логическое выражение ложно

Синтаксис формулы для решения:
Вывод результата в ячейку D2:

=ЕСЛИ(C5>5;«Заказ не требуется»;«Необходим заказ»)

На выходе получаем результат:

image

Бывает, что условие носит более сложный характер, например выполнение 2-х и более условий:

  • если значение в столбце «Количество» больше 5, а значение в колонке «Тип» равно «А»
  • то нужно вывести в колонке «Результат» значение «1», в обратном случае «0».

В данном случае мы уже не можем ограничиться использованием одной только формулы «ЕСЛИ», необходимо добавить в ее синтаксис другую формулу. И это будет еще одна логическая формула «И» (AND).
Синтаксис формулы следующий:
И(логическое_значение1, [логическое_значение2], …)

  • Логическое_значение1-2 и т.д. — проверяемое условие, вычисление которого дает значение ИСТИНА или ЛОЖЬ

Синтаксис решения будет следующим:
Вывод результата в ячейку D2:

=ЕСЛИ(И(C2>5;B2=«А»);1;0)

Таким образом, используя сочетание 2-х формул, мы находим решение нашей задачи и получаем результат:

image

Попробуем усложнить задачу – новое условие:

  • если значение в столбце «Количество» равно 10, а значение в колонке «Тип» равно «А»
  • или же значение в столбце «Количество» больше или равно 5, а значение «Тип» равен «Б»
  • то нужно вывести в колонке «Результат» значение «1», в обратном случае «0».

Синтаксис решения будет следующим:
Вывод результата в ячейку D2:

=ЕСЛИ(ИЛИ(И(C2=10;B2=«А»); И(C2>=5;B2=«Б»));1;0)

Как видно из записи, в формулу «ЕСЛИ» включено одно условие «ИЛИ» (OR) и два условия с использованием формулы «И», включенных в него. Если хотя бы одно из условий 2-го уровня имеет значение «ИСТИНА», то в колонку «Результат» будет выведен результат «1», в противном случае будет «0».
Результат:

image

Теперь перейдем к следующей ситуации:
Представим, что в зависимости от значения в столбце «Условие» должно выводиться определенное условие в столбце «Результат», ниже приведено соответствие значений и результата.
Условие:

  • 1 = А
  • 2 = Б
  • 3 = В
  • 4 = Г

При решении задачи с помощью функции «ЕСЛИ», синтаксис будет следующим:
Вывод результата в ячейку B2:

=ЕСЛИ(A2=1;«А»; ЕСЛИ(A2=2;«Б»; ЕСЛИ(A2=3;«В»; ЕСЛИ(A2=4;«Г»;0))))

Результат:

image

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

Альтернативное решение_1:
Использование формулы «ВЫБОР» (CHOOSE),
Синтаксис функции:
ВЫБОР(номер_индекса, значение1, [значение2], …)

  • Номер_индекса — номер выбираемого аргумента-значения. Номер индекса должен быть числом от 1 до 254, формулой или ссылкой на ячейку, содержащую число в диапазоне от 1 до 254.
  • Значение1, значение2,… — значение от 1 до 254 аргументов-значений, из которых функция «ВЫБОР», используя номер индекса, выбирает значение или выполняемое действие. Аргументы могут быть числами, ссылками на ячейки, определенными именами, формулами, функциями или текстом.

При ее использовании, мы сразу заносим результаты условий в зависимости от указанных значений.
Условие:

  • 1 = А
  • 2 = Б
  • 3 = В
  • 4 = Г

Синтаксис формулы:

=ВЫБОР(A2;«А»;«Б»;«В»;«Г»)

Результат аналогичен решению с цепочкой функций «ЕСЛИ» выше.
При применении этой формулы существуют следующие ограничения:
В ячейку «А2» (номер индекса) могут быть указаны только цифры, а значения результата будут выводиться в порядке возрастания от 1 до 254 значений.
Иными словами, функция будет работать только если в ячейке «А2» указаны цифры от 1 до 254 в порядке возрастания и это накладывает определенные ограничения при использовании этой формулы.
Т.е. если мы захотим, что бы значение «Г» выводилось при указании числа 5,

  • 1 = А
  • 2 = Б
  • 3 = В
  • 5 = Г

то формула будет иметь следующий синтаксис:
Вывод результата в ячейку B2:

=ВЫБОР(A31;«А»;«Б»;«В»;;«Г»)

Как видно, значение «4» в формуле нам приходится оставить пустым и перенести результат «Г» на порядковый номер «5».

Альтернативное решение_2:
Вот мы и подошли к одной из самых популярных функций Excel, овладение которой автоматически превращает любого офисного работника в «опытного пользователя excel» /sarcasm/.
Синтаксис формулы:
ВПР(искомое_значение, таблица, номер_столбца, [интервальный_просмотр])

  • Искомое_значение – значение, поиск которого осуществляется функцией.
  • Таблица – диапазон ячеек, содержащий данные. Именно в этих ячейках будет происходить поиск. Значения могут быть текстовыми, числовыми или логическими.
  • Номер_столбца — номер столбца в аргументе «Таблица», из которого будет выводиться значение в случае совпадения. Важно понимать, что отсчет столбцов происходит не по общей сетке листа (A.B,C,D и т.д.), а внутри массива, указанного в аргументе «Таблица».
  • Интервальный_просмотр — определяет, какое совпадение должна найти функция — точное или приблизительное.

Важно: функция «ВПР» ищет совпадение только по первой уникальной записи, если искомое_значение присутствует в аргументе «Таблица» несколько раз и имеет разные значения, то функция «ВПР» найдет только самое ПЕРВОЕ совпадение, результаты по всем остальным совпадениям показаны не будутИспользование формулы «ВПР» (VLOOKUP) связано с еще одним подходом в работе с данными, а именно с формированием «справочников».
Суть подхода в создании «справочника» соответствия аргумента «Искомое_значение» определенному результату, отдельно от основного массива, в котором прописываются условия и соответствующие им значения:

image

Затем в рабочей части таблицы уже прописывается формула со ссылкой на справочник, заполненный ранее. Т.е. в справочнике в столбце «D» происходит поиск значения из столбца «А» и при нахождении соответствия выводится значение из столбца «Е» в столбец «В».
Синтаксис формулы:
Вывод результата в ячейку B2:

=ВПР(A2;$D$2:$E$5;2;0)

Результат:

image

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

image

Видно, что строки в столбцах «Продукт» обеих таблиц не совпадают, однако, это не является препятствием для использования функции «ВПР».
Вывод результата в ячейку B2:

=ВПР($A3;$H$3:$M$6;2;0)

Но при решении сталкиваемся с новой проблемой – при «протягивании» написанной нами формулы вправо от столбца «В» до столбца «Е», нам придется вручную заменять аргумент «номер_столбца». Дело это трудоемкое и неблагодарное, потому, на помощь нам приходит другая функция — «СТОЛБЕЦ» (COLUMN).
Синтаксис функции:
СТОЛБЕЦ([ссылка])

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

Если использовать запись типа:

=СТОЛБЕЦ()

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

=ВПР($A3;$H$3:$M$6; СТОЛБЕЦ();0)

Функция «СТОЛБЕЦ» определит номер текущего столбца, который будет использоваться аргументом «Номер_столбца» для определения номера столбца поиска в справочнике.
Кроме того, можно использовать конструкцию:

=СТОЛБЕЦ()-1

Вместо числа «1» можно использовать любое число (а также не только вычитать его, но и прибавлять к полученному значению), для получения желаемого результата, если нет желания ссылаться на определенную ячейку в столбце с нужным нам номером.
Получившийся результат:

image

Продолжаем развивать тему и усложняем условие: представим, что у нас есть два справочника с разными данными по продуктам и необходимо вывести в таблицу с результатом значения в зависимости от того, какой тип справочника указан в колонке «Справочник»
Условие:

  • Если в столбце «Справочник» указано число 1, данные должны тянуться из таблицы «Справочник_1», если число 2, то из таблицы «Справочник_2» в соответствии с указанным месяцем

image

Вариант решения, который сразу приходит на ум, следующий:
Вывод результата в ячейку C3:

=ЕСЛИ($B3=1; ВПР($A3;$G$3:$I$6; СТОЛБЕЦ()-1;0); ВПР($A3;$K$3:$M$6; СТОЛБЕЦ()-1;0))

Плюсы: наименование справочника может быть любым (текст, цифры и их сочетание), минусы – плохо подходит, если вариантов более 3-х.
Если же номера справочников всегда представляют собой числа, имеет смысл использовать следующее решение:
Вывод результата в ячейку C3:

=ВПР($A3; ВЫБОР($B3;$G$3:$I$6;$K$3:$M$6); СТОЛБЕЦ()-1;0)

Плюсы: формула может включать до 254 наименований справочников, минусы – их наименование должно быть строго числовым.
Результат для формулы с использованием функции «ВЫБОР»:

image

Бонус: ВПР по двум и более признакам в аргументе «искомое_значение».
Условие:

  • Представим, что у нас как всегда есть массив данных в табличной форме (если нет, то мы к нему приводим данные), из массива по определенным признакам необходимо получить значения и поместить их в другую табличную форму.

Обе таблицы приведены ниже:

image

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

=H3&»_»&I3&»_»&J3

Используя символ «&», объединяем три признака в один (разделитель между словами может быть любым, как и не быть вовсе, главное использовать аналогичное правило и для поиска)
Аналогом формулы может быть функция «СЦЕПИТЬ» (CONCATENATE), в этом случае она будет выглядеть следующим образом:

=СЦЕПИТЬ(H3;»_»;I3;»_»;J3)

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

=ЕСЛИОШИБКА(ВПР(A2&»_»&B2&»_»&C2;$G$2:$K$6;5;0);0)

В функции «ВПР» в качестве аргумента «искомое_значение» используем все ту же связку трех признаков (наименование_класс_фасовка), но берем ее уже в таблице для заполнения и заносим непосредственно в аргумент (как вариант, можно было бы выделить значение для аргумента в дополнительный столбец в таблице для заполнения, но это действие будет излишним).
Напоминаю, что использование функции «ЕСЛИОШИБКА» (IFERROR) необходимо, если искомое значение так и не будет найдено, и функция «ВПР» выведет нам значение «#Н/Д» (об этом ниже).
Результат на картинке ниже:

image

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

Кейс_3 Поиск значения в массиве, или когда ВПР не в силах нам помочь

Рассмотрим ситуацию, когда необходимо понять, есть ли в массиве ячеек нужные нам значения.
Задача:

  • в столбце «Условие поиска» указано значение и необходимо определить, присутствует ли оно в столбце «Массив для поиска»

Визуально все выглядит в следующем виде:

image

Как мы видим, функция «ВПР» тут бессильна, т.к. мы ищем не точное совпадение, а именно наличие в ячейке нужного нам значения.
Для решения задачи необходимо использовать комбинацию нескольких функций, а именно:
«ЕСЛИ»
«ЕСЛИОШИБКА»
«СТРОЧН»
«НАЙТИ»

По порядку обо всех, «ЕСЛИ» мы уже разобрали ранее, потому перейдем к функции «ЕСЛИОШИБКА» (IFERROR)

ЕСЛИОШИБКА(значение, значение_при_ошибке)

  • Значение — аргумент, проверяемый на возникновение ошибок.
  • Значение_при_ошибке — значение, возвращаемое при ошибке при вычислении по формуле. Возможны следующие типы ошибок: #Н/Д, #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!, #ЧИСЛО!, #ИМЯ? и #ПУСТО!.

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

«СТРОЧН» (LOWER)

СТРОЧН(текст)

  • Текст — текст, преобразуемый в нижний регистр.

Важно: функция «СТРОЧН» не заменяет знаки, не являющиеся буквами.
Роль в формуле: поскольку функция «НАЙТИ» (FIND) осуществляет поиск и учетом регистра текста, то необходимо привести весь текст к одному регистру, в противном случае «чАй» будет не равно «чай» и т.д. Это актуально, если значение регистра не является условием поиска и отбора значений, в противном случае формулу «СТРОЧН» можно не использовать, так поиск будет более точным.

Теперь подробнее о синтаксисе функции «НАЙТИ» (FIND).

НАЙТИ(искомый_текст, просматриваемый_текст, [нач_позиция])

  • Искомый_текст — текст, который необходимо найти.
  • Просматриваемый_текст — текст, в котором нужно найти искомый текст.
  • Нач_позиция — знак, с которого нужно начать поиск. Первый знак в тексте «просматриваемый_текст» имеет номер 1. Если номер не указан, он по умолчанию считается равным 1.

Синтаксис формулы-решения будет иметь вид:
Вывод результата в ячейку B2:

=ЕСЛИ(ЕСЛИОШИБКА(НАЙТИ(СТРОЧН(A2); СТРОЧН(E2);1);0)=0;«fail»;«bingo!»)

Разберем логику формулы по действиям:

  1. СТРОЧН(A2) – преобразует аргумент «Искомый_текст» в ячейке в А2 в текст с нижним регистром
  2. Функция «НАЙТИ» начинает поиск преобразованного аргумента «Искомый_текст» в массиве «Просматриваемый_текст», который преобразовывается функцией «СТРОЧН(E2)», также в текст с нижним регистром.
  3. В случае если, функция находит совпадение, т.е. возвращает порядковый номер первого символа совпадающего слова/значения, срабатывает условие ИСТИНА в формуле «ЕСЛИ», т.к. полученное значение не равно нулю. Как результат, в столбце «Результат» будет выведено значение «Bingo!»
  4. Если же, функция не находит совпадение т.е. порядковый номер первого символа совпадающего слова/значения не указывается и вместо значения возвращается ошибка, срабатывает условие, заложенное в формулу «ЕСЛИОШИБКА» и возвращается значение равное «0», что соответствует условию ЛОЖЬ в формуле «ЕСЛИ», т.к. полученное значение равно «0». Как результат, в столбце «Результат» будет выведено значение «fail».

image

Как видно из рисунка выше, благодаря функциям «СТРОЧН» и «НАЙТИ» мы находим искомые значения вне зависимости от регистра символов, и места нахождения в ячейке, но необходимо обратить внимание на строку 5.
Условие поиска задано как «111», но в массиве поиска указано значение «1111111 печенюшки», однако формула выдает результат «Bingo!». Это происходит потому, что значение «111» входит в ряд значений «1111111», как следствие находится совпадение. В обратном случае данное условие не сработает.

Кейс_4 Поиск значения в массиве по нескольким условиям, или когда ВПР тем более не в силах нам помочь

Представим ситуацию, когда необходимо найти значение из «Таблица с результатом» в двумерном массиве «Справочник» по нескольким условиям, а именно по значению «Наименование» и «Месяц».
Табличная форма задания будет иметь следующий вид:

image

Условие:

  • В таблицу с результатом необходимо подтянуть данные в соответствии с совпадением условий «Наименование» и «Месяц».

Для решения подобной задачи подойдет комбинация функций «ИНДЕКС» и «ПОИСКПОЗ»

Синтаксис функции «ИНДЕКС» (INDEX)

ИНДЕКС(массив, номер_строки, [номер_столбца])

  • Массив — диапазон ячеек, из которого будут показываться значения в случае совпадения условий их поиска.
  • Если массив содержит только одну строку или один столбец, аргумент «номер_строки» или «номер_столбца» соответственно не является обязательным.
  • Если массив занимает больше одной строки и одного столбца, а из аргументов «номер_строки» и «номер_столбца» задан только один, то функция «ИНДЕКС» возвращает массив, состоящий из целой строки или целого столбца аргумента «массив».
  • Номер_строки — номер строки в массиве, из которой требуется возвратить значение.
  • Номер_столбца — номер столбца в массиве, из которого требуется возвратить значение.

Иными словами функция возвращает из указанного массива в аргументе «Массив» значение, которое находится на пересечении координат, указанных в аргументах «Номер_строки» и «Номер_столбца».

Синтаксис функции «ПОИСКПОЗ» (MATCH)

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

  • Искомое_значение — значение, которое сопоставляется со значениями в аргументе просматриваемый_массив. Аргумент искомое_значение может быть значением (числом, текстом или логическим значением) или ссылкой на ячейку, содержащую такое значение.
  • Просматриваемый_массив — диапазон ячеек, в которых производится поиск.
  • Тип_сопоставления — необязательный аргумент. Число -1, 0 или 1.

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

часть формулы:

ПОИСКПОЗ($A4;$I$4:$I$7;0)

возвращает число по оси Y, в данном случае оно будет равно 1, т.к. значение «А» присутствует в искомом диапазоне и имеет относительную позицию «1» в этом диапазоне.
часть формулы:

ПОИСКПОЗ(B$3;$J$3:$L$3;0)

возвращает значение #Н/Д, т.к. значение «1» отсутствует в просматриваемом диапазоне.

Таким образом, мы получили координаты точки (1; #Н/Д) которые функция «ИНДЕКС» использует для поиска в аргументе «Массив».
Полностью написанная функция для ячейки B4 будет иметь следующий вид:

=ИНДЕКС($J$4:$L$7; ПОИСКПОЗ($A4;$I$4:$I$7;0); ПОИСКПОЗ(B$3;$J$3:$L$3;0))

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

=ИНДЕКС($J$4:$L$7;1;#Н/Д))

Поскольку, аргумент «Номер_столбца» имеет значение «#Н/Д», то результат для ячейки «B4» будет соответствующий.
Как видно из получившегося результата не все значения в таблице с результатом находят совпадение со справочником и в итоге мы видим, что часть значений в таблице выводится в виде «#Н/Д», что затрудняет использование данных для дальнейших расчетов.
Результат:

image

Что бы нейтрализовать этот негативный эффект используем функцию «ЕСЛИОШИБКА», о которой мы читали ранее, и заменяем значение, возвращающееся при ошибке на «0», тогда формула будет иметь вид:
Вывод результата в ячейку B4:

=ЕСЛИОШИБКА(ИНДЕКС($J$4:$L$7; ПОИСКПОЗ($A4;$I$4:$I$7;0); ПОИСКПОЗ(B$3;$J$3:$L$3;0));0)

Демонстрация результата:

image

Как видно на картинке, значения «#Н/Д» более не мешают нам в последующих вычислениях с использованием значений в таблице с результатом.

Кейс_5 Поиск значения в диапазоне чисел

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

  • От 0 до 1000 = А
  • От 1001 до 1500 = Б
  • От 1501 до 2000 = В
  • От 2001 до 2500 = Г
  • Более 2501 = Д

image

Функция ПРОСМОТР (LOOKUP) возвращает значение из строки, столбца или массива. Функция имеет две синтаксических формы: векторную и форму массива.

ПРОСМОТР(искомое_значение; просматриваемый_вектор; [вектор_результатов])

  • Искомое_значение — значение, которое функция ПРОСМОТР ищет в первом векторе. Искомое_значение может быть числом, текстом, логическим значением, именем или ссылкой на значение.
  • Просматриваемый_вектор — диапазон, состоящий из одной строки или одного столбца. Значения в аргументе просматриваемый_вектор могут быть текстом, числами или логическими значениями.
  • Значения в аргументе просматриваемый_вектор должны быть расположены в порядке возрастания: …, -2, -1, 0, 1, 2, …, A-Z, ЛОЖЬ, ИСТИНА; в противном случае функция ПРОСМОТР может возвратить неправильный результат. Текст в нижнем и верхнем регистрах считается эквивалентным.
  • Вектор_результатов — диапазон, состоящий из одной строки или столбца. Вектор_результатов должен иметь тот же размер, что и просматриваемый_вектор.

Вывод результата в ячейку B3:

=ПРОСМОТР(E3;$A$3:$A$7;$B$3:$B$7)

image

Аргументы «Просматриваемый_вектор» и «Вектор_результата» можно записать в форме массива – в этом случае не придется выводить их в отдельную таблицу на листе Excel.
В этом случае функция будет выглядеть следующим образом:
Вывод результата в ячейку B3:
=ПРОСМОТР(E3;{0;1001;1501;2001;2501};{«А»;«Б»;«В»;«Г»;«Д»})

Кейс_6 Суммирование чисел по признакам

Для суммирования чисел по определенным признакам можно использовать три разных функции:
СУММЕСЛИ (SUMIF) – суммирует только по одному признаку
СУММЕСЛИМН (SUMIFS) – суммирует по множеству признаков
СУММПРОИЗВ (SUMPRODUCT) – суммирует по множеству признаков
Существует также вариант с использованием «СУММ» (SUM) и функции формулы массивов, когда формула «СУММ» возводится в массив:
({=СУММ(()*())}
но такой подход довольно неудобен и полностью перекрывается по функционалу формулой «СУММПРОИЗВ»
Теперь подробнее по синтаксису «СУММПРОИЗВ»:

СУММПРОИЗВ(массив1, [массив2], [массив3],…)

  • Массив1 — первый массив, компоненты которого нужно перемножить, а затем сложить результаты.
  • Массив2, массив3… — от 2 до 255 массивов, компоненты которых нужно перемножить, а затем сложить результаты.

Условие:

  • Найти общую сумму по стоимости отгрузок по каждому из продуктов за определенный период:

image

Как видно из таблицы с данными, что бы посчитать стоимость необходимо цену умножить на количество, а полученное значение, применив условия отбора переносить в таблица с результатом.
Однако, формула «СУММПРОИЗ» позволяет проводить такие расчеты внутри формулы.
Вывод результата в ячейку B4:

=СУММПРОИЗВ(($A4=$H$3:$H$11)*($K$3:$K$11>=B$3)*($K$3:$K$11<C$3);($M$3:$M$11)*($L$3:$L$11))

Разберем формулу по частям:

($A4=$H$3:$H$11)

– задаем условие по отбору в столбце «Наименование» таблицы с данными по столбцу «Наименование» в таблице с результатом

($K$3:$K$11>=B$3)*($K$3:$K$11<C$3)

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

($M$3:$M$11)*($L$3:$L$11)

– перемножаем столбцы «Количество» и «Цена» в таблице с данными.
Несомненным плюсом данной функции является свободный порядок записи условий, их можно записывать в любом порядке, на результат это не повлияет.
Результат:

image

Теперь усложним условие и добавим требование, что бы отбор по наименованию «печеньки» происходил только по классам «малые» и «большие», а по наименованию «булки» все, кроме по классу «с джемом»:

Вывод результата в ячейку B4:

=СУММПРОИЗВ(($A4=$H$3:$H$11)*($J$3:$J$11>=B$3)*($J$3:$J$11<C$3)*(($I$3:$I$11=«малые»)+($I$3:$I$11=«большие»));($L$3:$L$11*$K$3:$K$11))

В формуле для отбора по печенькам добавилось новое условие:

(($I$3:$I$11=«малые»)+($I$3:$I$11=«большие»))

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

=СУММПРОИЗВ(($A5=$H$3:$H$11)*($J$3:$J$11>=B$3)*($J$3:$J$11<C$3)*($I$3:$I$11<>«с джемом»);($L$3:$L$11)*($K$3:$K$11))

это:

($I$3:$I$11<>«с джемом»)

– на самом деле, в данной формуле можно было написать условие отбора также как и при отборе по печенькам, но тогда, пришлось бы перечислять три условия в формуле, в данном случае, проще написать исключение – не равно «с джемом» для этого используем значение «<>».
Вообще, если группы признаков/классов заранее известны, то лучше объединять их в эти группы, создавая справочники, чем записывать все условия в функцию, раздувая ее.
Результат:

image

Что ж, вот мы и подошли к концу нашего краткого мануала, который на самом деле мог бы быть намного больше, но целью было все-таки дать решение наиболее встречающихся ситуаций, а не описывать решение частных (но гораздо более интересных случаев).
Надеюсь, что мануал поможет кому-нибудь в решении задач при помощи Excel, ведь это будет значить, что мой труд не пропал зря!

Спасибо за уделенное время!

Функция ПОИСКПОЗ() в MS EXCEL

​Смотрите также​Acya96​1 – Поиск наибольшего​ массив. Функция ЕНД​ быть представлены как​​ аргументов и выполнения​​ внутри хранит и​ диапазон или массив​О том, как спользовать​), т.е. получить на​ чтобы столбец, по​В области​​ столбец, из которого​​ по горизонтали по​)​ поиск по шаблону,​ функция ПОИСКПОЗ() находит​​Функция ПОИСКПОЗ(), английский вариант​​: Всем доброй ночи!​​ ближайшего значения заданному​​ возвратит значение ЛОЖЬ,​ массивы элементов «ключ»​ функции в массиве.​ обрабатывает даты как​

​ (строка или столбец),​ связку функций​ выходе​ которому производится поиск,​Доступные надстройки​ возвращается значение. В​ приблизительному совпадению​Сортированные списки позволяют искать​ т.е. искомое_значение может​ первое значение, которое​ MATCH(), возвращает позицию​Задали задачку, никак​ первым аргументом в​ если она не​ — «значение», функция​ Для этого:​ числа, то подобный​ где производится поиск​

Синтаксис функции

​ИНДЕКС (INDEX)​​152​

​ был левее столбца,​​установите флажок рядом​ этом примере значение​Создание формулы подстановки с​​ не только точные​​ содержать знаки шаблона:​ в​ значения в диапазоне​ не могу сообразить,​ упорядоченном по возрастанию​ принимает значение ошибки​ ПОИСКПОЗ возвращает значение​

​В ячейку B16 введите​​ подход на 100%​Режим_поиска​и​​, но автоматически, т.е.​​ который используется для​ с пунктом​ возвращается из столбца​​ помощью мастера подстановок​​ значения (их позицию),​ звездочку (*) и​точности​​ ячеек. Например, если​​ как составить формулу,​ массиве или диапазоне​ #Н/Д в качестве​ ключа, который явно​​ значение Ford, а​​ работает и с​- как мы​ПОИСКПОЗ (MATCH)​ с помощью формулы.​

​ вывода. Обойти это​​Мастер подстановок​ D​​ (только Excel 2007)​​ но и позицию​ знак вопроса (?).​​равно аргументу​​ в ячейке​ используя ИНДЕКС и​​ ячеек.​

  • ​ аргумента. В этом​​ не указан.​​ в ячейку C16​ датами. Например, мы​ ищем: точно (0),​в качестве более​​ ВПР в чистом​​ ограничение позволяет, например,​​и нажмите кнопку​​Продажи​Для решения этой задачи​
  • ​ ближайшего значения. Например,​ Звездочка соответствует любой​искомое_значениеПросматриваемый_массив​А10​ ПОИСКПОЗ, если даны​​Примечания:​​ случае функция ЕСЛИ​Например, массив {«виноград»;»яблоко»;»груша»;»слива»} содержит​ название интересующего нас​ можем легко определить​ с округлением в​ мощной альтернативы ВПР​​ виде тут не​​ вариант с использованием​ОК​.​
  • ​ можно использовать функцию​​ в списке на​​ последовательности знаков, знак​может быть не​содержится значение «яблоки»,​ 4 условия. При​Если в качестве аргумента​​ вернет текстовую строку​​ элементы, которые можно​ отдела – Маркетинговый.​ на каком этапе​ большую строну (-1)​ я уже подробно​ поможет, но есть​

​ функций ИНДЕКС() и​.​К началу страницы​

​ ВПР или сочетание​ картинке ниже нет​ вопроса соответствует любому​ упорядочен.​

Поиск позиции в массивах с текстовыми значениями

​ то формула =ПОИСКПОЗ​ этом в ответе​ искомое_значение была передана​​ «есть», иначе –​​ представить как: 1​

​В ячейку C17 введите​ сейчас находится наш​ или в меньшую​

​ описывал (с видео).​ несколько других способов​

​ ПОИСКПОЗ(). Эквивалентная формула​Следуйте инструкциям мастера.​Для выполнения этой задачи​ функций ИНДЕКС и​ значения 45, но​ одиночному знаку.​

​Если тип_сопоставления равен 1,​ («яблоки»;A9:A20;0) вернет 2,​ должна быть фраза​ текстовая строка, функция​ «нет».​

​ – «виноград», 2​ функцию со следующими​ проект:​ сторону (1)​ В нашем же​ решить эту задачу.​ приведена в статье​К началу страницы​​ используется функция ГПР.​​ ПОИСКПОЗ.​

​ можно найти позицию​Предположим, что имеется перечень​ то функция ПОИСКПОЗ()​ т.е. искомое значение​

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

​ «есть/нет». Если просто​ ПОИСКПОЗ вернет позицию​Чтобы вычислить остальные значения​ – «яблоко», 3​ аргументами:​Принципиальное ограничение функции​Давайте рассмотрим несколько полезных​

Поиск позиции с использованием подстановочных знаков

​ случае, можно применить​Это самый очевидный и​ о функции ВПР().​Для нахождения позиции значения​ См. пример ниже.​Дополнительные сведения см. в​ наибольшего значения, которое​ товаров и мы​ находит наибольшее значение,​ «яблоки» содержится во​ вписывать в формулу​ элемента в массиве​ «протянем» формулу из​

​ – «груша», 4​После ввода для подтверждения​ПОИСКПОЗ​ вариантов ее применения​ их для поиска​ простой (хотя и​Задача подразумевает, что диапазон​

​ в столбце, с​Функция ГПР выполняет поиск​ разделе, посвященном функции​ меньше либо равно,​ не знаем точно​ которое меньше либо​ второй ячейке диапазона​

​ всю таблицу, а​ (если такой существует)​ ячейки C2 вниз​ – «слива», где​​ функции нажмите комбинацию​​состоит в том,​ на практике.​

Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию

​ по нескольким столбцам​ не самый удобный)​ поиска содержит неповторяющиеся​ последующим выводом соответствующего​ по столбцу​ ВПР.​

​ чем искомое значение,​ как записана товарная​​ равно, чем​​A9:A20А9​ потом в поискпоз​

​ без учета регистра​ для использования функции​ 1, 2, 3,​ горячих клавиш CTRL+SHIFT+Enter,​

​ что она умеет​

​Классический сценарий — поиск​ в виде формулы​ способ. Поскольку штатная​ значения. В самом​ значения из соседнего​Продажи​Что означает:​​ т.е. позицию значения​​ позиция относящаяся к​искомое_значениеПросматриваемый_массив​- первая ячейка​ забивать условия -​ символов. Например, строки​ автозаполнения. В результате​

​ 4 – ключи,​ так как она​

​ искать только в​

​ точного текстового совпадения​ массива. Для этого:​ функция​ деле, если критерию​ столбца в EXCEL,​

Поиск позиции в массивах с Числами

​и возвращает значение​=ИНДЕКС(нужно вернуть значение из​ 40.​ яблокам: яблоки или​​должен быть упорядочен​​ (предполагается, что в​

​ получается полная фигня.​ «МоСкВа» и «москва»​ получим:​

​ а названия фруктов​ должна выполнятся в​ одномерных массивах (т.е.​

​ для нахождения позиции​​Выделите пустую зеленую ячейку,​​ВПР (VLOOKUP)​ удовлетворяет сразу несколько​ существует специальная функция​ из строки 5 в​

​ C2:C10, которое будет​Это можно сделать с​ яблоко.​ по возрастанию: …,​​ ней не содержится​​ И не проще​

​ являются равнозначными. Для​Как видно, третьи элементы​ – значения. Тогда​ массиве. Если все​ строчке или столбце),​ нужного нам текста​ где должен быть​умеет искать только​ значений, то из​ ВПР(), но для​ указанном диапазоне.​ соответствовать ПОИСКПОЗ(первое значение​ помощью формулы =ПОИСКПОЗ(45;B31:B37;1)​В качестве критерия можно​

​ -2, -1, 0,​ значение «яблоки»),​

​ ли в ВПР​ различения регистров можно​ списков не совпадают.​

​ функция =ПОИСКПОЗ(«яблоко»;{«виноград»;»яблоко»;»груша»;»слива»};0) вернет​ сделано правильно в​ но никто не​ или числа в​ результат.​ по одному столбцу,​ какой строки выводить​ ее решения можно​Дополнительные сведения см. в​ «Капуста» в массиве​

Функции ПОИСКПОЗ() и ИНДЕКС()

​Обратите внимание, что тип​ задать»яблок*» и формула​ 1, 2, …,​А10​ просто сделать? В​ дополнительно использовать функцию​Пример 3. Найти ближайшее​ значение 2, являющееся​

​ строке формул появятся​ запрещает использовать сразу​ списке:​Введите в строке формул​

​ а не по​

​ соответствующее ему значение​ использовать также и​ разделе, посвященном функции​ B2:B10))​

​ сопоставления =1 (третий​ =ПОИСКПОЗ(«яблок*»;B53:B62;0) вернет позицию​ A-Z, ЛОЖЬ, ИСТИНА.​- вторая,​

​ самом файле есть​ СОВПАД.​ меньшее числу 22​ ключом второго элемента.​ фигурные скобки.​ два​

excel2.ru

Поиск значений в списке данных

​Если в качестве искомого​ в нее следующую​ нескольким, то нам​ из соседнего столбца?​ другие функции. Рассмотрим​ ГПР.​Формула ищет в C2:C10​ аргумент функции).​ текстового значения, начинающегося​ Если​А11​ и основная таблица​Если поиск с использованием​ в диапазоне чисел,​ Отсчет выполняется не​Как видно функция самостоятельно​ПОИСКПОЗ​ значения задать звездочку,​ формулу:​ нужно из нескольких​

В этой статье

​ Если все же​ задачу в случае​К началу страницы​

​ первое значение, соответствующее​3. Поиск позиции в​ со слова яблок​

​тип_сопоставления​- третья и​ и, собственно, условия,​ рассматриваемой функции не​

​ хранящихся в столбце​ с 0 (нуля),​ справилась с решением​

​а вложенных в​ то функция будет​Нажмите в конце не​

​ сделать один!​ диапазон поиска содержит​ текстовых значений.​

Поиск значений в списке по вертикали по точному совпадению

​Для выполнения этой задачи​ значению​ списке отсортированном по​ (если она есть​опущен, то предполагается,​

Примеры функции ВПР

Пример 1 функции ВПР

Пример 2 функции ВПР

​ т.д. (подсчет позиции​ которым нужно следовать.​ дал результатов, будет​

Примеры функций ИНДЕКС и ПОИСКПОЗ

Функции ИНДЕКС и ПОИСКПОЗ можно использовать вместо функции ВПР

​ таблицы Excel.​

​ как это реализовано​ поставленной задачи.​ИНДЕКС​ искать первую ячейку​ Enter, а сочетание​

​Добавим рядом с нашей​ повторяющиеся значения, то​Пусть в диапазоне​​ используется функция ГПР.​​Капуста​ убыванию выполняется аналогично,​ в списке).​​ что он равен​​ производится от верхней​

​Спасибо за любую​ возвращен код ошибки​Вид исходной таблицы данных:​

​ во многих языках​

Поиск значений в списке по вертикали по приблизительному совпадению

​​, чтобы реализовать двумерный​

​ с текстом и​​Ctrl+Shift+Enter​ таблицей еще один​ второй столбец из​

Пример формулы ВПР для поиска неточного совпадения

​А4:В15​Важно:​(B7), и возвращает​ но с типом​Подстановочные знаки следует использовать​ 1.​​ ячейки).​​ помощь и комментарии!​ #Н/Д.​Для поиска ближайшего большего​ программирования при работе​Чтобы функция ПОИСКПОЗ работала​ поиск по строке​ выдавать её позицию.​, чтобы ввести формулу​ столбец, где склеим​​ таблицы выше поясняет​​имеется таблица с​

​  Значения в первой​ значение в ячейке​ сопоставления = -1.​

​ только для поиска​

Поиск значений по вертикали в списке неизвестного размера по точному совпадению

​Если​Функция ПОИСКПОЗ() возвращает позицию​vikttur​

​Если аргумент [тип_сопоставления] явно​​ значения заданному во​ с массивами, а​ с таблицей с​ и столбцу одновременно:​ Для поиска последней​ не как обычную,​ название товара и​ какое значение будет​ перечнем сотрудников и​ строке должны быть​ C7 (​

Пример функций СМЕЩ и ПОИСКПОЗ

​ В этом случае​​ позиции текстовых значений​тип_сопоставления​ искомого значения, а​

​: Странное желание… Но​​ не указан или​​ всем столбце A:A​ с 1.​ двумя столбцами как​Во многих поисковых формулах​ текстовой ячейки можно​

​ а как формулу​​ месяц в единое​ выведено (обычно возвращается​ их зарплат (фамилии​ отсортированы по возрастанию.​100​ функция ПОИСКПОЗ() находит​ и​равен -1, то​ не само значение.​​ если нужно (простая,​​ принимает число 0,​

​ (числовой ряд может​

Поиск значений в списке по горизонтали по точному совпадению

​Функция ПОИСКПОЗ редко используется​ с одним мы​ очень часто приходится​

Пример формулы ГПР для поиска точного совпадения

​ изменить третий аргумент​ массива.​​ целое с помощью​​ первое значение, удовлетворяющее​ сотрудников не повторяются).​В приведенном выше примере​

​).​ наименьшее значение, которое​Типом сопоставления​

​ функция ПОИСКПОЗ() находит​

Поиск значений в списке по горизонтали по приблизительному совпадению

​ Например: ПОИСКПОЗ(«б»;{«а»;»б»;»в»;»б»};0) возвращает​ не формула массива):​

​ для поиска частичного​​ пополняться новыми значениями)​ самостоятельно. Ее целесообразно​ использовали в ее​

Пример формулы ГПР для поиска неточного совпадения

​ использовать функцию ПОИСКПОЗ​Режим_поиска​Как это на самом​ оператора сцепки (&),​ критерию).​Требуется, введя в ячейку​ функция ГПР ищет​Дополнительные сведения см. в​ больше либо равно​

​= 0 (третий​ наименьшее значение, которое​ число 2 -​

​=—ЕЧИСЛО(ПОИСКПОЗ(G5&H5&I5&J5;ИНДЕКС($A$3:$A$40&$B$3:$B$40&$C$3:$C$40&$E$3:$E$40;);))​

Создание формулы подстановки с помощью мастера подстановок (только Excel 2007)

​ совпадения текстовых значений​​ используем формулу массива​ применять в связке​ аргументах оператор &.​ как вспомогательную в​с нуля на​ деле работает:​ чтобы получить уникальный​

​Если диапазон поиска содержит​D4​ значение 11 000 в строке 3​ разделах, посвященных функциям​ чем искомое значение.​ аргумент функции).​ больше либо равно​ относительную позицию буквы​buchlotnik​ могут быть использованы​ (CTRL+SHIFT+ENTER):​ с другими функциями,​ Учитывая этот оператор​ комбинациях с другими​ минус 1:​

  1. ​Функция ИНДЕКС выдает из​

  2. ​ столбец-ключ для поиска:​​ повторяющиеся значения и​​фамилию сотрудника, вывести​​ в указанном диапазоне.​​ ИНДЕКС и ПОИСКПОЗ.​​Функции ПОИСКПОЗ() и ИНДЕКС()​​Функция ПОИСКПОЗ() возвращает только​

  3. ​ чем​​ «б» в массиве​​: видимо как-то так​ подстановочные знаки («?»​

    ​=B2;A:A;»»));A:A;0);1)’ class=’formula’>​

  4. ​ например, ИНДЕКС.​​ первый аргументом для​ Изображение кнопки Office​ функциями такими как:​Числа и пустые ячейки​​ диапазона цен C2:C161​​Теперь можно использовать знакомую​​ требуется вернуть не​​ в другой ячейке​

  5. ​ Значение 11 000 отсутствует, поэтому​​К началу страницы​​ часто используются вместе,​​ одно значение. Если​​искомое_значениеПросматриваемый_массив​​ {«а»;»б»;»в»;»б»}. Позиция второй​​=ЕСЛИ(ЕНД(ПОИСКПОЗ(G5&H5&I5&J5;$A$3:$A$40&$B$3:$B$40&$C$3:$C$40&$E$3:$E$40;0));»нет»;»есть»)​

  6. ​ — замена одного​​Функция ПОИСКПОЗ возвращает позицию​​​ функции теперь является​​ ИНДЕКС, ВПР, ГПР​​ в этом случае​​ содержимое N-ой ячейки​​ функцию​

  7. ​ одно, а все​

​ его зарплату. Решение​

support.office.com

Поиск позиции ТЕКСТа в MS EXCEL с выводом значения из соседнего столбца

​ она ищет следующее​Для выполнения этой задачи​ т.к. позволяют по​ в списке присутствует​должен быть упорядочен​ буквы «б» будет​сделайте, раз проще​ любого символа, «*»​ элемента в столбце​Пример 1. Найти позицию​ значение FordМаркетинговый. По​ и др. Но​

​ игнорируются.​​ по порядку. При​​ВПР (VLOOKUP)​ значения, удовлетворяющие критерию,​ приведено в файле​ максимальное значение, не​

Задача

​ используется функция ВПР.​​ найденной позиции в​​ несколько значений, удовлетворяющих​ по убыванию: ИСТИНА,​ проигнорирована, функция вернет​Acya96​ — замена любого​

Решение

​ A:A, имеющего максимальное​

  • ​ первого частичного совпадения​ этой причине первый​ какую пользу может​
  • ​Если последний аргумент задать​ этом порядковый номер​
  • ​для поиска склеенной​ то читайте статью​ примера.​

​ превышающее 11 000, и возвращает​Важно:​ одном диапазоне вывести​ критерию, то эта​ ЛОЖЬ, Z-A, …,​ позицию только первой​:​ количества символов).​ значение среди чисел,​ строки в диапазоне​ Ford из отдела​ приносить данная функция​ равным 1 или​ нужной ячейки нам​

​ пары​

​ Запрос на основе​Алгоритм решения задачи следующий:​

​ 10 543.​

​  Значения в первой​​ соответствующее значение из​​ функция не поможет.​

​ 2, 1, 0,​

​ буквы. О том​​vikttur​​Если в объекте данных,​

​ которые больше числа,​

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

​ -1, то можно​

​ находит функция ПОИСКПОЗ.​​НектаринЯнварь​​ Элементов управления формы.​

​находим в списке кодов​

​Дополнительные сведения см. в​ строке должны быть​​ другого диапазона. Рассмотрим​​Рассмотрим список с повторяющимися​ -1, -2, …,​​ как вернуть ВСЕ​

​, хмм, сама бы​

​ переданном в качестве​

​ указанного в ячейке​

​ значения.​

​ ведь теперь для​

​ самого названия функции​

​ реализовать поиск ближайшего​ Она ищет связку​из ячеек H3​Совет​ значение, совпадающее с​ разделе, посвященном функции​ отсортированы по возрастанию.​ пример.​ значениями в диапазоне​ и так далее.​ позиции искомого значения​ ни за что​

​ аргумента просматриваемый_массив, содержится​ B2. Функция ИНДЕКС​Вид исходной таблицы данных:​ функции два форда​ ПОИСКПОЗ понятно, что​ наименьшего или наибольшего​ названия товара и​ и J3 в​: Если в диапазон​ критерием;​ ГПР.​В приведенном выше примере​Найдем количество заданного товара​B66:B72​Функция ПОИСКПОЗ() не различает​ читайте ниже в​ не догадалась. Даже​ два и больше​

​ возвращает значение, хранящееся​Для нахождения позиции текстовой​ – это разные​ ее главная задача​ числа. Таблица при​ месяца (​ созданном ключевом столбце:​ поиска постоянно вводятся​

​определяем номер позиции (строку)​​К началу страницы​ функция ВПР ищет​ на определенном складе.​. Найдем все позиции​ РеГИстры при сопоставлении​ разделе Поиск позиций​ не подумала про​ элементов, соответствующих искомому​ в найденной ячейке.​ строки в таблице​ значения (FordПродажи и​ заключается в определении​

​ этом обязательно должна​НектаринЯнварь​Плюсы​ новые значения, то​ найденного значения;​

excel2.ru

Поиск и подстановка по нескольким условиям

Постановка задачи

​Примечание:​ имя первого учащегося​ Для этого используем​ значения Груши.​ текстов.​​ ВСЕХ текстовых значений,​​ ЕЧИСЛО. Спасибо вам​​ значению, будет возвращена​​Результат расчетов:​ используем следующую формулу:​ FordМаркетинговый). Просматриваемый диапазон​ позиции исходного значения,​ быть отсортирована по​) по очереди во​: Простой способ, знакомая​ для исключения ввода​выводим значение из соседнего​ Поддержка надстройки «Мастер подстановок»​ с 6 пропусками в​ формулу​Значение Груши находятся в​Если функция ПОИСКПОЗ() не​ удовлетворяющих критерию.​ огромное!​ позиция первого вхождения​

​Для поиска ближайшего меньшего​=ПОИСКПОЗ(D2&»*»;B:B;0)-1​ теперь распространяется на​ которое содержит диапазон​

Поиск позиции вȎxcel по нескольким условиям

​ возрастанию или убыванию​ всех ячейках склеенного​ функция, работает с​​ дубликатов следует наложить​​ столбца той же​ в Excel 2010​​ диапазоне A2:B7. Учащихся​​=ИНДЕКС(B67:E71;ПОИСКПОЗ(A74;A67:A71;0);ПОИСКПОЗ(C74;B66:E66;0))​ позициях 2 и​​ находит соответствующего значения,​​ПОИСКПОЗискомое_значение просматриваемый_массив​А желание и,​ такого элемента.​ значения достаточно лишь​Описание аргументов:​ 2 столбца, так​ ячеек или таблица.​

Способ 1. Дополнительный столбец с ключом поиска

​ соответственно. В общем​ из двух столбцов​ любыми данными.​ определенные ограничения (см.​ строки.​​ прекращена. Эта надстройка​​ с​В файле примера, соответствующий​ 5 списка. С​ то возвращается значение​; тип_сопоставления)​ правда, крайне странное​

​R007​ немного изменить данную​D2&»*» – искомое значение,​ же благодаря оператору​ Применять эту функцию​ и целом, это​ диапазона A2:A161&B2:B161 и​Минусы​ статью Ввод неповторяющихся​

Поиск позиции вȎxcel по нескольким условиям

​Решение практически аналогично поиску​ была заменена мастером​​6​​ столбец и строка​ помощью формулы массива​​ ошибки #Н/Д.​​Искомое_значение​Acya96​: Всем добрый день.​

Поиск позиции вȎxcel по нескольким условиям

​ формулу и ее​​ состоящее и фамилии,​ &, который мы​ очень просто для​

​ чем-то похоже на​​ выдает порядковый номер​: Надо делать дополнительный​ значений). Для визуальной​ числового значения из​ функций и функциями​ пропусками в таблице нет,​ выделены с помощью​=(«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65))​Произведем поиск позиции в​- значение, используемое​:​

Способ 2. Функция СУММЕСЛИМН

​Столкнулся со следующей​ следует также ввести​ указанной в ячейке​ применяем во втором​ диапазонов или таблиц​ интервальный просмотр у​​ ячейки, где нашла​​ столбец и потом,​ проверки наличия дубликатов​ статьи Поиск позиции​ для работы со​ поэтому функция ВПР​ Условного форматирования.​можно найти все эти​ НЕ сортированном списке​ при поиске значения​buchlotnik​ проблемой. Как осуществлять​ как массив (CTRL+SHIFT+ENTER):​ B2, и любого​ аргументе для склейки​

Поиск позиции вȎxcel по нескольким условиям

​ с одним столбцом​​ функции​ точное совпадение. По​ возможно, еще и​ можно использовать Условное​ ЧИСЛА с выводом​

​ ссылками и массивами.​​ ищет первую запись​СОВЕТ: Подробнее о поиске​ позиции. Для этого​ текстовых значений (диапазон​ в​, спасибо большое!​ ПОИСПОЗ по двум​

Способ 3. Формула массива

​Результат поиска:​ количества других символов​​ значений из двух​​ или с одной​​ВПР (VLOOKUP)​​ сути, это первый​ прятать его от​ форматирование (см. статью​ соответствующего значения из​В Excel 2007 мастер​ со следующим максимальным​ позиций можно прочитать​ необходимо выделить несколько​B7:B13​просматриваемом_массивеИскомое_значение​

  1. ​Тут просто сама​ условиям?​Функция имеет следующую синтаксическую​
  2. ​ (“*”);​ смежных диапазонов. Таким​ строкой. Поэтому сразу​
    Поиск позиции вȎxcel по нескольким условиям
  3. ​, но там возможен​ способ, но ключевой​​ пользователя. При изменении​​ Выделение повторяющихся значений).​ соседнего столбца. Для​ подстановок создает формулу​ значением, не превышающим​

​ в соответствующем разделе​ ячеек (расположенных вертикально),​

​)​может быть значением​ суть задания сделать​Есть следующая задача:​ запись:​B:B – ссылка на​ образом, значения берутся​ усложним задачу и​ только поиск ближайшего​ столбец создается виртуально​​ числа строк в​​Для организации динамической сортировки​ этого типа задач​ подстановки, основанную на​ 6. Она находит​ сайта: Поиск позиции.​ в Строке формул​Столбец Позиция приведен для​ (числом, текстом или​ через ИНДЕКС и​Стройматериалы у них​=ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])​ столбец B:B, в​ одновременно из двух​

​ на конкретном примере​​ наименьшего, а здесь​ прямо внутри формулы,​ таблице — допротягивать​ пополняемого диапазона поиска​

​ в EXCEL существует​​ данных листа, содержащих​ значение 5 и возвращает​С помощью функций ПОИСКПОЗ()​ ввести вышеуказанную формулу​ наглядности и не​ логическим значением (ЛОЖЬ​ ПОИСКПОЗ. Для меня​ есть по паре​Описание аргументов:​ котором выполняется поиск;​ столбцов Автомобиль и​ проиллюстрируем как применять​ — есть выбор.​

planetaexcel.ru

Поиск позиции элемента в списке с ПОИСКПОЗ (MATCH)

​ а не в​ формулу сцепки на​ можно использовать идеи​ специальная функция ВПР(),​ названия строк и​ связанное с ним​ и ИНДЕКС() можно​ и нажать​ влияет на вычисления.​ или ИСТИНА)) или​

​ это немного странно​

​ характеристик, как сделать​

​искомое_значение – обязательный аргумент,​

  • ​0 – поиск точного​​ Отдел.​ функцию ПОИСКПОЗ для​
  • ​Например, нам нужно выбрать​​ ячейках листа.​ новые строки (хотя​ из статьи Сортированный​ но для ее​
  • ​ столбцов. С помощью​​ имя​ заменить функцию ВПР(),​CTRL+SHIFT+ENTER​Формула для поиска позиции​ ссылкой на ячейку,​ и непонятно:/​

​ так что бы​ принимающий текстовые, числовые​ совпадения.​

Точный поиск

​Читайте также: Функции ИНДЕКС​ таблицы с двумя​ генератор из прайс-листа​Плюсы​ это можно упростить​ список.​

ПОИСКПОЗ в Excel

Поиск первой или последней текстовой ячейки

​ решения можно использовать​ мастера подстановок можно​Алексей​ об этом читайте​. В позициях, в​ значения Груши: =ПОИСКПОЗ(«груши»;B7:B13;0)​ содержащую число, текст​vikttur​ при выборе из​​ значения, а также​​Из полученного значения вычитается​ и ПОИСКПОЗ в​

Поиск первого или последнего текста

​ столбцами и более.​ для расчетной мощности​: Не нужен отдельный​

Поиск ближайшего числа или даты

​ применением умной таблицы).​Если вы продвинутый пользователь​ и другие функции​ найти остальные значения​.​ в статье о​ которых есть значение​Формула находит первое значение​ или логическое значение.​: Видимо, проверяют Вас​ пары характеристик выбиралась​ данные логического и​ единица для совпадения​ Excel и примеры​​Для примера возьмем список​​ в 47 кВт.​ столбец, работает и​Если нужно найти именно​ Microsoft Excel, то​

​ (про функцию ВПР()​ в строке, если​Дополнительные сведения см. в​ функции ВПР().​ Груши будет выведено​ сверху и выводит​Просматриваемый_массив​ на знание материала​ нужная исходя из​ ссылочного типов, который​ результата с id​​ их использования​​ автомобилей из автопарка​

ПОИСКПОЗ поиск ближайшего наименьшего числа

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

ПОИСКПОЗ поиск ближайшего наибольшего

Связка функций ПОИСКПОЗ и ИНДЕКС

​ соответствующее значение позиции,​ его позицию в​— непрерывный диапазон​ )​​ заранее выставленных условий.​ ​ используется в качестве​​ записи в таблице.​Функция ПОИСКПОЗ в Excel​ средней фирмы, как​ задать равным 1​ с текстом.​

​ случае цена как​ с функцией поиска​Решение​ одном столбце, и​ ВПР.​

ПОИСКПОЗ и ИНДЕКС

​ внутренний телефонный номер​ в остальных ячейках​ диапазоне, второе значение​ ячеек, возможно, содержащих​Нет, не проще.​Буду очень благодарен за​ критерия поиска (для​Пример поиска:​ используется для поиска​ показано ниже на​ и отсортировать таблицу​

ПОИСКПОЗ и даты

​Минусы​​ раз число), то​​ и подстановки​Если несколько значений удовл.​ наоборот. В формулах,​К началу страницы​ сотрудника по его​ быдет выведен 0.​ Груши учтено не​ искомые значения.​​ Проще -​​ ответы.​​ сопоставления величин или​​Пример 2. В Excel​ точного совпадения или​ рисунке:​

Двумерный поиск с ПОИСКПОЗ и ИНДЕКС

planetaexcel.ru

Пример функции ПОИСКПОЗ в Excel без функции ИНДЕКС

​ по возрастанию, то​: Ощутимо тормозит на​ вместо ВПР можно​ВПР​ критерию​ которые создает мастер​Для выполнения этой задачи​ идентификационному номеру или​C помощью другой формулы​ будет.​Просматриваемый_массив​СЧЁТЕСЛИМН(), СУММПРОИЗВ()​Serge_007​ нахождения точного совпадения);​ хранятся две таблицы,​ ближайшего (меньшего или​В обеих столбцах названия​ мы найдем ближайшую​ больших таблицах (как​ использовать функцию​или​=ВПР($D$4;A4:B15;2;ЛОЖЬ)​ подстановок, используются функции​ используются функции СМЕЩ​ узнать ставку комиссионного​ массива​Чтобы найти номер строки,​может быть только​buchlotnik​: Здравствуйте.​

Пример работы ПОИСКПОЗ по двум столбцам Excel

​просматриваемый_массив – обязательный аргумент,​ которые на первый​ большего заданному в​ автомобилей и отделов​ наименьшую по мощности​

Список автомобилей.

​ и все формулы​СУММЕСЛИМН (SUMIFS)​VLOOKUP​берется​ ИНДЕКС и ПОИСКПОЗ.​ и ПОИСКПОЗ.​ вознаграждения, предусмотренную за​=НАИБОЛЬШИЙ((«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65));СТРОКА()-СТРОКА($D$65))​ а не позиции​ одностолбцовым диапазоном ячеек,​: ну куда тут​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИНДЕКС(A1:C3;ПОИСКПОЗ(A8;A1:A3;0);ПОИСКПОЗ(A6;A1:C1;0))​ принимающий данные ссылочного​ взгляд кажутся одинаковыми.​ зависимости от типа​ повторяются, но нет​ модель (​ массива, впрочем), особенно​

Ford продажи.

​, появившуюся начиная с​(если еще нет,​первое​Щелкните ячейку в диапазоне.​Примечание:​ определенный объем продаж.​можно отсортировать найденные позиции,​ в искомом диапазоне,​ например​ его? давайте так​R007​ типа (ссылки на​ Было решено сравнить​ сопоставления, указанного в​ парных дубликатов. Например,​

  1. ​Зверь​ если указывать диапазоны​ Excel 2007. По​ то сначала почитайте​сверху​
  2. ​На вкладке​ Данный метод целесообразно использовать​ Необходимые данные можно​
  3. ​ чтобы номера найденных​ можно записать следующую​А9:А20​=ИНДЕКС({«есть»;»нет»};1+ЕНД(ПОИСКПОЗ(G5&H5&I5&J5;$A$3:$A$40&$B$3:$B$40&$C$3:$C$40&$E$3:$E$40;0)))​:​ диапазон ячеек) или​ по одному однотипному​ качестве аргумента) значения​ в списке 2​

Ford маркетинг.

​):​ «с запасом» или​ идее, эта функция​

​ эту статью, чтобы​

Описание примера как работает функция ПОИСКПОЗ:

​=ИНДЕКС(B4:B15; ПОИСКПОЗ($D$4;A4:A15;0);1)​Формулы​ при поиске данных​ быстро и эффективно​ позиций отображались в​ формулу: =ПОИСКПОЗ(«груши»;B7:B13;0)+СТРОКА($B$6)​или диапазоном, расположенным​_Boroda_​Serge_007​ константу массива, в​ столбцу этих таблиц​ заданному в массиве​ автомобиля марки Ford,​Если же третий аргумент​ сразу целые столбцы​ выбирает и суммирует​ им стать). Для​берется​в группе​ в ежедневно обновляемом​ находить в списке​ первых ячейках (см.​Если искомое значение не​ в одной строке,​: Еще вариант формулой​,​ которых выполняется поиск​ на наличие несовпадений.​ или диапазоне ячеек​ но оба они​

​ равен -1 и​ (т.е. вместо A2:A161​ числовые значения по​ тех, кто понимает,​

exceltable.com

Пример функции ПОИСКПОЗ для поиска совпадения значений в Excel

​первое​Решения​ внешнем диапазоне данных.​ и автоматически проверять​ файл примера).​ обнаружено в списке,​ например,​ массива (вводится одновременным​Большое спасибо, очень​ позиции элемента согласно​ Реализовать способ сравнения​ и возвращает номер​

Примеры использования функции ПОИСКПОЗ в Excel

​ из разных отделов.​ таблица отсортирована по​ вводить A:A и​ нескольким (до 127!)​ рекламировать ее не​сверху​выберите команду​ Известна цена в​ их правильность. Значения,​1. Произведем поиск позиции​ то будет возвращено​

​А2:Е2​ нажатием Контрл Шифт​ помогло!​ критерию, заданному первым​ двух диапазонов ячеек.​ позиции найденного элемента.​ Если мы захотим​ убыванию, то мы​ т.д.) Многим непривычны​ условиям. Но если​ нужно :) -​=СМЕЩ($B$3; ПОИСКПОЗ($D$4;$A$4:$A$15;0);0;1;1)​Подстановка​ столбце B, но​ возвращенные поиском, можно​ в НЕ сортированном​

​ значение ошибки #Н/Д.​. Таким образом формула​ Ентер)​Гость​ аргументом функции;​Вид таблицы данных:​Например, имеем последовательный ряд​ узнать номер позиции​ найдем ближайшую более​ формулы массива в​ в нашем списке​ без нее не​берется​.​ неизвестно, сколько строк​ затем использовать в​ списке числовых значений​ Например, формула =ПОИСКПОЗ(«грейпфрут»;B7:B13;0)​ =ПОИСКПОЗ(«слива»;A30:B33;0) работать не​=ИНДЕКС({«Нет»:»Есть»};1+ЕЧИСЛО(ПОИСКПОЗ(G5&H5&I5&J5;A$3:A$40&B$3:B$40&C$3:C$40&E$3:E$40;)))​: Помогите!!!!!!!!!!!!!! плиз!!!!!!!!!!!!!! уже​

​[тип_сопоставления] – необязательный для​Для сравнения значений, находящихся​ чисел от 1​ этого автомобиля, то​ мощную модель (​

​ принципе (тогда вам​

Формула для поиска неточного совпадения текста в Excel

​ нет повторяющихся товаров​ обходится ни один​первое​Если команда​ данных возвратит сервер,​

​ вычислениях или отображать​

Пример 1.

​ (диапазон​ вернет ошибку, т.к.​ будет (выдаст ошибку​

​И проверка там​

​ все перепробовала не​

  • ​ заполнения аргумент в​ в столбце B:B​ до 10, записанных​ в результате функция​Бомба​ сюда).​
  • ​ внутри одного месяца,​ сложный расчет в​сверху​
  • ​Подстановка​ а первый столбец​

​ как результаты. Существует​B8:B14​ значения «грейпфрут» в​ #Н/Д), так как​

​ еще Условным форматированием​

ПОИСКПОЗ.

Сравнение двух таблиц в Excel на наличие несовпадений значений

​ получается. Нужно чтобы​ виде числового значения,​ со значениями из​ в ячейках B1:B10.​ ПОИСПОЗ вернет нам​):​Основное назначение этой функции​ то она просто​ Excel. Есть, однако,​=ДВССЫЛ(АДРЕС(НАИБОЛЬШИЙ( ЕСЛИ(($A$4:$A$15=$D$4); СТРОКА($A$4:$A$15));1);2))​

​недоступна, необходимо загрузить​

Пример 2.

​ не отсортирован в​ несколько способов поиска​)​ диапазоне ячеек​Просматриваемый_массив​iMrTidy​

​ во втором ПОИСКПОЗ​ определяющего способ поиска​ столбца A:A используем​ Функция =ПОИСКПОЗ(3;B1:B10;0) вернет​ позицию в диапазоне​Очень часто функция ПОИСКПОЗ​ в том, чтобы​ выведет значение цены​ одна проблема: эта​берется​ надстройка мастера подстановок.​ алфавитном порядке.​ значений в списке​Столбец Позиция приведен для​B7:B13​представляет собой диапазон​: Acya96, возможно, так?​ был «приближенный поиск».​ в диапазоне ячеек​ следующую формулу массива​ число 3, поскольку​ где встречается первое​ используется в связке​ искать позицию заданного​

​ для заданного товара​ функция умеет искать​последнее​Загрузка надстройки мастера подстановок​C1​ данных и отображения​

сравнения значений.

​ наглядности и не​нет.​

Поиск ближайшего большего знания в диапазоне чисел Excel

​ ячеек размещенный одновременно​=INDEX($A$3:$A$40;MATCH(J5;$E$3:$E$40;0))&INDEX($B$3:$B$40;MATCH(J5;$E$3:$E$40;0))&INDEX($C$3:$C$40;MATCH(J5;$E$3:$E$40;0))=G5&H5&I5​ А как файл​ или массиве. Может​ (CTRL+SHIFT+ENTER):​

​ искомое значение находится​

Пример 3.

​ значение – 3.​ с другой крайне​ элемента в наборе​ и месяца:​ данные только по​сверху​Нажмите кнопку​

​ — это левая верхняя​

​ результатов.​ влияет на вычисления.​В файле примера можно​ в нескольких столбцах​Acya96​ прикрепить? что-то не​ принимать следующие значения:​Функция ПОИСКПОЗ выполняет поиск​ в ячейке B3,​

​ То есть Ford​

поиск ближайшего большего значения.

​ полезнойфункцией -​ значений. Чаще всего​Плюсы​ совпадению одного параметра.​=ПРОСМОТР($D$4;$A$4:$A$15;$B$4:$B$15)​Microsoft Office​

​ ячейка диапазона (также​

поиск ближайшего меньшего.

Особенности использования функции ПОИСКПОЗ в Excel

​Поиск значений в списке​Найдем позицию значения 30​

​ найти применение функции​

​ и нескольких ячейках.​

  • ​: Еще раз спасибо.​ пойму​-1 – поиск наименьшего​ логического значения ИСТИНА​ которая является третьей​ из отдела продаж:​ИНДЕКС​ она применяется для​: Не нужен дополнительный​
  • ​ А если у​если столбец отсортирован по​, а затем —​ называемая начальной ячейкой).​ по вертикали по​ с помощью формулы​ при поиске в​Тип_сопоставления​ Пойду разбираться, что​
  • ​RAN​ ближайшего значения заданному​ в массиве логических​ от точки отсчета​Что же делать если​(INDEX)​ поиска порядкового номера​
  1. ​ столбец, решение легко​ нас их несколько?​ возрастанию, то берется​ кнопку​Формула​ точному совпадению​
  2. ​ =ПОИСКПОЗ(30;B8:B14;0)​ горизонтальном массиве.​— число -1,​ да как.​: Чукча не читатель.​ аргументом искомое_значение в​ значений, возвращаемых функцией​ (ячейки B1).​
  3. ​ нас интересует Ford​, которая умеет извлекать​ ячейки в диапазоне,​ масштабируется на большее​Предположим, что у нас​последнее​

​Параметры Excel​

  1. ​ПОИСКПОЗ(«Апельсины»;C2:C7;0)​Поиск значений в списке​Формула ищет​Поиск позиции можно производить​ 0 или 1.​jakim​ Чукча писатель!​ упорядоченном по убыванию​ СОВПАД (сравнивает каждый​Данная функция удобна для​ из маркетингового отдела?​ данные из диапазона​ где лежит нужное​
  2. ​ количество условий (до​ есть база данных​сверху, если нет,​и выберите категорию​ищет значение «Апельсины»​
  3. ​ по вертикали по​точное​ не только в​Тип_сопоставления​: Вариант с формулой​Как файл приложить​ массиве или диапазоне​ элемент диапазона A2:A12​ использования в случаях,​ Кроме того, мы​ по номеру строки-столбца,​
  4. ​ нам значение.​ 127), быстро считает.​ по ценам товаров​ то результат​Надстройки​ в диапазоне C2:C7.​ приблизительному совпадению​значение 30. Если​

exceltable.com

ПОИСКПОЗ по двум условиям (помощь)

​ диапазонах ячеек, но​​указывает, как MS​
​=IF(MAX(INDEX((A$3:A$400=G6)*(B$3:B$400=H6)*(C$3:C$400=I6)*(E$3:E$400=J6);0))=1;»есть»;»нет»)​ — красненькая строчка​ ячеек.​ со значением, хранящимся​
​ когда требуется вернуть​
​ хотим использовать только​ реализуя, фактически, «левый​Синтаксис этой функции следующий:​Минусы​ за разные месяцы:​непредсказуем​.​ Начальную ячейку не​

​Поиск значений по вертикали​ в списке его​

​ и в массивах​​ EXCEL сопоставляет​

​buchlotnik​

​ сверху.​​0 – (по умолчанию)​​ в ячейке B2,​​ не само значение,​
​ функцию ПОИСПОЗ, не​ ВПР».​

​=ПОИСКПОЗ(Что_ищем; Где_ищем; Режим_поиска)​​: Работает только с​Нужно найти и вытащить​=СУММПРОИЗВ((A4:A15=D4)*(B4:B15))​В поле​ следует включать в​ в списке неизвестного​ нет, то будет​ констант. Например, формула​

​искомое_значение​​:​Как сделать «приближенный​
​ поиск первого значения​ и возвращает массив​ содержащееся в искомой​
​ прибегая к формулам​Так, в предыдущем примере​

​где​​ числовыми данными на​ цену заданного товара​соответствующие значения суммируются​
​Управление​

excelworld.ru

Индекс и Поискпоз с несколькими условиями (Формулы/Formulas)

​ этот диапазон.​​ размера по точному​
​ возвращена ошибка #Н/Д.​ =ПОИСКПОЗ(«груши»;{«яблоки»;»ГРУШИ»;»мандарины»};0) вернет значение​со значениями в​jakim​ поиск» — F1​ в массиве или​ результатов сравнения). Если​ ячейке, а ее​ с комбинациями других​ получить не номер,​Что_ищем​ выходе, не применима​ (​=СУММЕСЛИ(A4:A15;D4;B4:B15)​выберите значение​1​ совпадению​2. Произведем поиск позиции​ 2.​ аргументе​, а ПОИСКПОЗ()-то где?​
​Il_sun​ диапазоне ячеек (не​

​ функция ПОИСКПОЗ нашла​​ координату относительно рассматриваемого​ функций ИНДЕКС и​ а название модели​
​- это значение,​

​ для поиска текста,​​Нектарин​​соответствующие значения суммируются​​Надстройки Excel​

​ — это количество столбцов,​​Поиск значений в списке​​ в отсортированном по​​Если искомое значение точно​просматриваемый_массив.​jakim​: в отношении прикрепленного​ обязательно упорядоченном), которое​ значение ИСТИНА, будет​
​ диапазона. В случае​ т.п. Выход из​

​ генератора можно очень​​ которое надо найти​​ не работает в​​) в определенном месяце​
​=БИЗВЛЕЧЬ(A3:B15;2;F15:F16)​и нажмите кнопку​ которое нужно отсчитать​ по горизонтали по​ возрастанию списке числовых​ не известно, то​

​Если​​: Пожалуйста ПОИСКПОЗ только​ файла формула должна​ полностью совпадает со​
​ возвращена позиция его​ использования для констант​​ этой ситуации находится​

​ легко:​​Где_ищем​ старых версиях Excel​​ (​

​возвращается ошибка #ЧИСЛО!​​Перейти​ справа от начальной​ точному совпадению​ значений (диапазон​
​ с помощью подстановочных​
​тип_сопоставления​ наоборот.​

​ иметь вид​​ значением, переданным в​
​ первого вхождения в​

​ массивов, которые могут​​ в определении настроек​Ну, и поскольку Excel​- это одномерный​

​ (2003 и ранее).​​Январь​
​Для функции ВПР() требуется,​

​.​​ ячейки, чтобы получить​​Поиск значений в списке​​B31:B37​:D

​ знаков можно задать​​равен 0, то​=IFERROR(MATCH(1;INDEX((B$3:B$400=H5)*(C$3:C$400=I5)*(D$3:D$400=J5)*(F$3:F$400=K5);0);0);»нет»)​
​200?'200px':''+(this.scrollHeight+5)+'px');">=ИНДЕКС(B2:C3;ПОИСКПОЗ(A8;A2:A3;0);ПОИСКПОЗ(A6;B1:C1;0))​

excelworld.ru

​ качестве первого аргумента.​

Like this post? Please share to your friends:
  • Найти значение в диапазоне ячеек vba excel
  • Найти значение в диапазоне ячеек excel по условию
  • Найти знак в тексте excel
  • Найти знак в строке excel
  • Найти заполненные ячейки в столбце excel