Excel найти строку по двумя

Skip to content

Поиск ИНДЕКС ПОИСКПОЗ по нескольким условиям

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

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

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

  • Общая формула поиска по нескольким критериям
  • Пример формулы массива
  • Поиск по нескольким условиям без формулы массива
  • ИНДЕКС ПОИСКПОЗ с несколькими условиями в нескольких строках и столбцах

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

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

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

{=ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ) * (…); 0))}

Где:

  • Диапазон_возврата — это диапазон, из которого возвращается значение.
  • Критерии1 , критерии2 , … – это условия, которые необходимо выполнить.
  • Диапазон1 , диапазон2 , … — это диапазоны, на которых должны проверяться соответствующие критерии.

Важное замечание! Это формула массива , и она должна быть введена через Ctrl + Shift + Enter. Появятся {фигурные скобки}, что является визуальным признаком формулы массива в Excel. Не пытайтесь вводить фигурные скобки вручную, это не сработает!

Эта формула представляет собой расширенную версию комбинации ИНДЕКС+ПОИСКПОЗ, которая возвращает совпадение на основе одного критерия. Чтобы оценить несколько условий, мы используем операцию умножения, которая работает как оператор «И» в формулах массива . Ниже вы найдете реальный пример и подробное пошаговое объяснение логики расчетов.

ИНДЕКС ПОИСКПОЗ по нескольким столбцам – пример формулы

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

Вот наши исходные данные и критерии:

  • Диапазон_возврата (продажи) — D2:D13
  • Критерий1 (целевой регион) – G1
  • Критерий2 (целевой месяц) – G2
  • Критерий 3 (целевой товар) — G3
  • Диапазон1 (регионы) – A2:A13
  • Диапазон2 (месяцы) – B2:B13
  • Диапазон3 (товары) – C2:C13

Формула принимает следующий вид:

=ИНДЕКС(D2:D13; ПОИСКПОЗ(1; (G1=A2:A13)*(G2=B2:B13)*(G3=C2:C13); 0))

Запишем формулу в G4, завершим ее, нажав Ctrl+Shift+Enter. Получаем следующий результат:

Как это работает? Разберем пошагово.

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

ПОИСКПОЗ(1; (G1=A2:A13)*(G2=B2:B13)*(G3=C2:C13)

Как вы помните, ПОИСКПОЗ ищет заданное значение в массиве и возвращает относительное его положение в этом массиве.

В нашей формуле аргументы следующие:

  • Искомое_значение : 1
  • Массив поиска : (G1=A2:A13) * (G2=B2:B13) * (G3=C2:C13)
  • Тип_соответствия : 0

Шаг 1.

Первый аргумент предельно ясен — функция ищет число 1. Третий аргумент, установленный в 0, означает «точное совпадение», т.е. формула возвращает первое найденное значение, которое точно равно искомому значению.

Вопрос в том, почему мы ищем «1»? Чтобы получить ответ, давайте внимательнее посмотрим на массив поиска, где мы сравниваем каждый наш критерий с соответствующим диапазоном: целевой регион в ячейке G1 со всеми регионами (A2: A13), целевой месяц в G2 со всеми месяцами (B2: B13), и товар в G3 в колонке товаров (C2:C13). В результате этих сравнений мы имеем 3 массива значений ИСТИНА и ЛОЖЬ, где ИСТИНА представляет значения, соответствующие условию. Чтобы визуализировать это, вы можете выбрать отдельное выражение в формуле и нажать клавишу F9 , чтобы увидеть, что оно возвращает:

=ИНДЕКС(D2:D13; ПОИСКПОЗ(1; {ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ИСТИНА:ИСТИНА:ИСТИНА:ИСТИНА:ИСТИНА:ИСТИНА}*{ЛОЖЬ:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ИСТИНА:ИСТИНА:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ}*{ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА}; 0))

Шаг 2.

Операция умножения преобразует значения ИСТИНА и ЛОЖЬ в 1 и 0 соответственно:

{0:0:0:0:0:0:1:1:1:1:1:1}*{0:0:1:0:0:1:1:1:0:0:0:0}*{0:1:0:1:0:1:0:1:0:1:0:1}

Шаг 3.

А поскольку умножение на 0 всегда дает 0, результирующий массив содержит 1 только в тех строках, которые соответствуют всем трём условиям:

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

Приведенный выше массив переходит в аргумент массив_поиска функции ПОИСКПОЗ. Функция возвращает порядковый номер позиции с цифрой 1, для которой все критерии имеют значение ИСТИНА (строка 8 в нашем случае). Если в массиве будет несколько единиц, будет определена позиция только первой из них.

Шаг 4.

Число, возвращаемое функцией ПОИСКПОЗ, поступает непосредственно в аргумент номер_строки функции ИНДЕКС(массив, номер_строки, [номер_столбца]):

=ИНДЕКС(D2:D13, 8)

И это дает результат 680, что является восьмым по счету значением в массиве D2:D13.

Формула ИНДЕКС ПОИСКПОЗ без массива с несколькими критериями

Формула массива, рассмотренная в предыдущем примере, хорошо работает для опытных пользователей. Но если вы строите формулу для кого-то другого, и этот кто-то не знает о работе с формулами массива в Excel, то он может непреднамеренно ее сломать. Например, пользователь может щелкнуть вашу формулу, чтобы изучить ее, а затем нажать Enter вместо Ctrl + Shift + Enter. 

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

ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ИНДЕКС(( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ) * (..); 0; 1); 0))

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

=ИНДЕКС(D2:D13; ПОИСКПОЗ(1; ИНДЕКС((G1=A2:A13) * (G2=B2:B13) * (G3=C2:C13); 0; 1); 0))

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

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

ИНДЕКС({0:0:0:0:0:0:0:1:0:0:0:0};0, 1)  возвращает {0:0:0:0:0:0:0:1:0:0:0:0}

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

ПОИСКПОЗ(1; {0:0:0:0:0:0:0:1:0:0:0:0}; 0)

ПОИСКПОЗ находит номер позиции, для которого все условия – ИСТИНА (точнее, ищет относительное положение цифры «1» в указанном массиве), и передает номер этой позиции в аргумент номер_строки первого ИНДЕКС:

=ИНДЕКС(D2:D13, 8)

Ну и далее получаем нужный результат.

ИНДЕКС ПОИСКПОЗ с несколькими условиями в нескольких строках и столбцах

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

Вот общая формула ИНДЕКС ПОИСКПОЗ с несколькими критериями в строках и столбцах:

{=ИНДЕКС( массив_таблицы ; ПОИСКПОЗ( значение_поиска ; столбец_поиска ; 0); ПОИСКПОЗ( значение_поиска1 & значение_поиска2 ; строка_поиска1 & строка_поиска2 ; 0))}

где:

Массив таблицы — область для поиска, т. е. все значения таблицы, кроме заголовков столбцов и строк.

Значение_поиска — то, что вы ищете по вертикали в столбце.

Столбец_поиска — диапазон столбцов для поиска, обычно это заголовки строк.

Значение_поиска1, значение_поиска2, … — то, что вы ищете по горизонтали в строках.

Строка_поиска1, строка_поиска2, … — диапазоны строк для поиска, обычно это заголовки столбцов.

Важное замечание! Чтобы формула работала корректно, ее нужно вводить как формулу массива  при помощи комбинации Ctrl + Shift + Enter.

Это разновидность классической формулы двустороннего поиска в массиве, которая ищет значение на пересечении определенной строки и столбца. Разница в том, что вы объединяете несколько значений и диапазонов поиска для оценки нескольких заголовков столбцов. Чтобы лучше понять логику ее работы, рассмотрим небольшой пример.

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

  • Массив_таблицы — B3:E4
  • Значение_поиска  — H1
  • Столбец_поиска  (заголовки строк: товары) — A3:A5
  • Значение_поиска1  (целевой регион) — H2
  • Значение_поиска 2 (целевой продавец) — H3
  • Строка_поиска1 (заголовки столбцов 1: регионы) — B1:E1
  • Строка_поиска2 (заголовки столбцов 2: продавцы) — B2:E2

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

=ИНДЕКС(B3:E5; ПОИСКПОЗ(H1;A3:A5;0); ПОИСКПОЗ(H2&H3; B1:E1&B2:E2; 0))

Не забудьте завершить формулу, нажав комбинацию клавиш Ctrl + Shift + Enter, после чего поиск по матрице с несколькими условиями будет выполнен успешно:

Пошагово рассмотрим, как работает эта формула.

Поскольку мы ищем и по вертикали, и по горизонтали, то нужно указать номера строк и столбцов для функции ИНДЕКС (массив, номер_строки, номер_столбца).

Шаг 1.

Номер_строки предоставляется функцией ПОИСКПОЗ(H1;A3:A5;0), которая сравнивает целевой элемент (бананы) в H1 с заголовками строк в A3:A5. 

ПОИСКПОЗ(«Бананы»;{«Апельсины»:»Бананы»:»Лимоны»};0)

Это дает результат 2, потому что «Бананы» — это второй элемент в указанном списке.

Шаг 2.

Номер_столбца вычисляется путем объединения двух значений поиска и двух массивов поиска: ПОИСКПОЗ(H2&H3; B1:E1&B2:E2; 0)

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

ПОИСКПОЗ(«СеверПродавец 2»; {«СеверПродавец 1″;»СеверПродавец 2″;»ЮгПродавец 1″;»ЮгПродавец 2»}; 0)

Поскольку « СеверПродавец 2» является вторым элементом в массиве, функция возвращает 2.

Шаг 3.

После этого наша длинная двумерная формула ИНДЕКС ПОИСКПОЗ превращается в такую простую:

=ИНДЕКС(B3:E5; 2; 2)

Шаг 4.

Она возвращает значение на пересечении 2-й строки и 2-го столбца в диапазоне B3:E5, что является значением в ячейке C4.

Вот как формула ИНДЕКС ПОИСКПОЗ помогает выполнить поиск по нескольким условиям в Excel. Я благодарю вас за чтение и надеюсь вновь увидеть вас в нашем блоге.

Еще несколько статей по теме:

Содержание

  1. ПОИСК, ПОИСКБ (функции ПОИСК, ПОИСКБ)
  2. Описание
  3. Синтаксис
  4. Замечание
  5. Примеры
  6. Excel поиск значения по двум критериям
  7. Продвинутые примеры с функцией ВПР: поиск по нескольким критериям
  8. Поиск в Excel по нескольким критериям
  9. Пример 1: Поиск по 2-м разным критериям
  10. Пример 2: ВПР по двум критериям с просматриваемой таблицей на другом листе
  11. Извлекаем 2-е, 3-е и т.д. значения, используя ВПР
  12. Извлекаем все повторения искомого значения
  13. Часть 1:
  14. Часть 2:
  15. Часть 3:
  16. Часть 4:
  17. Часть 5:
  18. Двумерный поиск по известным строке и столбцу
  19. Функции ВПР и ПОИСКПОЗ
  20. Функция СУММПРОИЗВ
  21. Функции ИНДЕКС и ПОИСКПОЗ
  22. Именованные диапазоны и оператор пересечения
  23. Используем несколько ВПР в одной формуле
  24. Динамическая подстановка данных из разных таблиц при помощи ВПР и ДВССЫЛ
  25. Как работают ДВССЫЛ и ВПР
  26. Поиск значений в списке данных
  27. В этой статье
  28. Поиск значений в списке по вертикали по точному совпадению
  29. Примеры функции ВПР
  30. Примеры функций ИНДЕКС и ПОИСКПОЗ
  31. Поиск значений в списке по вертикали по приблизительному совпадению
  32. Поиск значений по вертикали в списке неизвестного размера по точному совпадению
  33. Поиск значений в списке по горизонтали по точному совпадению
  34. Поиск значений в списке по горизонтали по приблизительному совпадению
  35. Создание формулы подстановки с помощью мастера подстановок (только Excel 2007)
  36. Функция ПОИСКПОЗ() в MS EXCEL
  37. Синтаксис функции
  38. Поиск позиции в массивах с текстовыми значениями
  39. Поиск позиции в массиве констант
  40. Поиск позиции с использованием подстановочных знаков
  41. Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию
  42. Поиск позиции в массивах с Числами
  43. Функции ПОИСКПОЗ() и ИНДЕКС()
  44. Функция ВПР с несколькими условиями критериев поиска в Excel
  45. Работа функции ВПР по нескольким критериям
  46. Поиск значения по двум критериям. Это реально?
  47. Поиск нужных данных в диапазоне
  48. Поиск разных значений по двум критериям (Формулы/Formulas)
  49. Найти и вернуть значение по двум критериям (Формулы/Formulas)
  50. Выборочные вычисления по одному или нескольким критериям
  51. Постановка задачи
  52. Способ 1. Функция СУММЕСЛИ, когда одно условие
  53. Способ 2. Функция СУММЕСЛИМН, когда условий много
  54. Способ 3. Столбец-индикатор
  55. Способ 4. Волшебная формула массива
  56. Способ 4. Функция баз данных БДСУММ
  57. ВПР по двум критериям

ПОИСК, ПОИСКБ (функции ПОИСК, ПОИСКБ)

В этой статье описаны синтаксис формулы и использование функций ПОИСК и ПОИСКБ в Microsoft Excel.

Описание

Функции ПОИСК И ПОИСКБ находят одну текстовую строку в другой и возвращают начальную позицию первой текстовой строки (считая от первого символа второй текстовой строки). Например, чтобы найти позицию буквы «n» в слове «printer», можно использовать следующую функцию:

Эта функция возвращает 4, так как «н» является четвертым символом в слове «принтер».

Можно также находить слова в других словах. Например, функция

возвращает 5, так как слово «base» начинается с пятого символа слова «database». Можно использовать функции ПОИСК и ПОИСКБ для определения положения символа или текстовой строки в другой текстовой строке, а затем вернуть текст с помощью функций ПСТР и ПСТРБ или заменить его с помощью функций ЗАМЕНИТЬ и ЗАМЕНИТЬБ. Эти функции показаны в примере 1 данной статьи.

Эти функции могут быть доступны не на всех языках.

Функция ПОИСКБ отсчитывает по два байта на каждый символ, только если языком по умолчанию является язык с поддержкой БДЦС. В противном случае функция ПОИСКБ работает так же, как функция ПОИСК, и отсчитывает по одному байту на каждый символ.

К языкам, поддерживающим БДЦС, относятся японский, китайский (упрощенное письмо), китайский (традиционное письмо) и корейский.

Синтаксис

Аргументы функций ПОИСК и ПОИСКБ описаны ниже.

Искомый_текст Обязательный. Текст, который требуется найти.

Просматриваемый_текст Обязательный. Текст, в котором нужно найти значение аргумента искомый_текст.

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

Замечание

Функции ПОИСК и ПОИСКБ не учитывают регистр. Если требуется учитывать регистр, используйте функции НАЙТИ и НАЙТИБ.

В аргументе искомый_текст можно использовать подстановочные знаки: вопросительный знак ( ?) и звездочку ( *). Вопросительный знак соответствует любому знаку, звездочка — любой последовательности знаков. Если требуется найти вопросительный знак или звездочку, введите перед ним тильду (

Если значение find_text не найдено, #VALUE! возвращается значение ошибки.

Если аргумент начальная_позиция опущен, то он полагается равным 1.

Если start_num больше нуля или больше, чем длина аргумента within_text, #VALUE! возвращается значение ошибки.

Аргумент начальная_позиция можно использовать, чтобы пропустить определенное количество знаков. Допустим, что функцию ПОИСК нужно использовать для работы с текстовой строкой «МДС0093.МужскаяОдежда». Чтобы найти первое вхождение «М» в описательной части текстовой строки, задайте для аргумента начальная_позиция значение 8, чтобы поиск не выполнялся в той части текста, которая является серийным номером (в данном случае — «МДС0093»). Функция ПОИСК начинает поиск с восьмого символа, находит знак, указанный в аргументе искомый_текст, в следующей позиции, и возвращает число 9. Функция ПОИСК всегда возвращает номер знака, считая от начала просматриваемого текста, включая символы, которые пропускаются, если значение аргумента начальная_позиция больше 1.

Примеры

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Источник

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

Продвинутые примеры с функцией ВПР: поиск по нескольким критериям

​Смотрите также​ также не придумал​​. Строчные и прописные​​ диапазоны вручную. Как​ выборки нужных значений​ на то, то​ определенного столбца. Очень​ не знаем точно​​ (числом, текстом или​​Для выполнения этой задачи​ открытой. Если же​Как Вы, вероятно, знаете,​.​В переводе на человеческий​ мы вычитаем число​3-й​ основную таблицу (Main​Во второй части нашего​ как использовать в​ буквы не различаются.​ заставить формулу работать​ из списка мы​​ совпадение должно быть​​ часто необходимо в​ как записана товарная​

  • ​ логическим значением (ЛОЖЬ​ используется функция ГПР.​
  • ​ она закрыта, функция​ функция​Чтобы добавить цены из​
  • ​ язык, данная формула​3​
  • ​товар, заказанный покупателем​ table), добавив данные​
  • ​ учебника по функции​ этом случае ПОИСКПОЗ,​
  • ​Диапазон_суммирования​ без ручного введения​

Поиск в Excel по нескольким критериям

​ недавно разбирали. Если​​ абсолютно точным.​​ запросе поиска использовать​ позиция относящаяся к​ или ИСТИНА)) или​ См. пример ниже.​ сообщит об ошибке​ДВССЫЛ​ второй таблицы поиска​ означает:​из результата функции,​Dan Brown​ из второй таблицы​ВПР​ ИНДЕКС, СУММПРОИЗВ.​- это те​

Пример 1: Поиск по 2-м разным критериям

​ диапазонов. СУММЕСЛИМН не​ вы еще с​Finnik​​ сразу несколько условий.​​ яблокам: яблоки или​ ссылкой на ячейку,​​Функция ГПР выполняет поиск​​#REF!​​используется для того,​​ в основную таблицу,​Ищем символы «Mar» –​ чтобы получить значение​:​ (Lookup table), которая​(VLOOKUP) в Excel​

​Заранее благодарен за​​ ячейки, значения которых​​ обязательное условие, единственное​ ней не знакомы​: Здравствуйте!​ Но по умолчанию​ яблоко.​ содержащую число, текст​ по столбцу​(#ССЫЛ!).​​ чтобы вернуть ссылку,​​ необходимо выполнить действие,​​ аргумент​​1​=VLOOKUP(«Dan Brown3»,$A$2:$C$16,3,FALSE)​

​ находится на другом​
​ мы разберём несколько​

​ помощь!​ мы хотим сложить,​​ о чем прошу-​​ — загляните сюда,​​Мой вопрос основан​​ данная функция не​В качестве критерия можно​

​ или логическое значение.​Продажи​Урок подготовлен для Вас​ заданную текстовой строкой,​ известное как двойной​lookup_value​​в ячейке​​=ВПР(«Dan Brown3»;$A$2:$C$16;3;ЛОЖЬ)​​ листе или в​​ примеров, которые помогут​СердЖиГ​ т.е. нашем случае -​ только не массивная​ не пожалейте пяти​ на конкретном примере​ может обработать более​​ задать»яблок*» и формула​​Просматриваемый_массив​и возвращает значение​

​ командой сайта office-guru.ru​ а это как​ВПР​(искомое_значение);​F4​​На самом деле, Вы​​ другой рабочей книге​ Вам направить всю​: Я часто использую​ стоимости заказов.​​ формула (файл под​​ минут, чтобы сэкономить​ из вложения.​

​ одного условия. Поэтому​
​ =ПОИСКПОЗ(«яблок*»;B53:B62;0) вернет позицию​

​ из строки 5 в​
​Источник: https://www.ablebits.com/office-addins-blog/2014/07/29/vlookup-formula-examples/​

​ раз то, что​​или вложенный​​Ищем в ячейках от​(строка 4, вычитаем​​ можете ввести ссылку​​ Excel, то Вы​​ мощь​​ вот такую формулу:​​Если условий больше одного​​ 20 МБ).​ себе потом несколько​Скажите, пожалуйста, реально​

Пример 2: ВПР по двум критериям с просматриваемой таблицей на другом листе

​ следует использовать весьма​ текстового значения, начинающегося​ ячеек, возможно, содержащих​ указанном диапазоне.​Перевел: Антон Андронов​ нам сейчас нужно.​ВПР​ A1 до I1​ 3), чтобы получить​ на ячейку в​ можете собрать искомое​ВПР​<=СЧЁТ(ЕСЛИ(МАССИВПРОВЕРКИ1&МАССИВПРОВЕРКИ2=КРИТЕРИЙ1&КРИТЕРИЙ2;МАССИВ по которому​

​ (например, нужно найти​_Boroda_​ часов.​ ли вставить искомое​ простую формулу, которая​ со слова яблок​ искомые значения.​Дополнительные сведения см. в​Автор: Антон Андронов​

​ Итак, смело заменяем​​.​​ – аргумент​

​2​
​ качестве искомого значения​

​ значение непосредственно в​на решение наиболее​ считам))>.​ сумму всех заказов​: По какому принципу​​Если же вы знакомы​​ значение из столбца​ позволит расширить возможности​ (если она есть​

​Просматриваемый_массив​ разделе, посвященном функции​Предположим, что требуется найти​ в представленной выше​Запишите функцию​lookup_array​

​в ячейке​
​ вместо текста, как​

​ формуле, которую вставляете​ амбициозных задач Excel.​Но не смог​ Григорьева для «Копейки»),​ выбираются ручные диапазоны?​ с ВПР, то​ «количество» из листа​ функции ВПР по​ в списке).​может быть только​ ГПР.​ внутренний телефонный номер​ формуле выражение с​ВПР​

​(просматриваемый_массив);​​F5​​ представлено на следующем​​ в основную таблицу.​ Примеры подразумевают, что​ придумать, как использовать​ то функция​Почему в строке​ — вдогон -​ «Склад», в столбец​ нескольким столбцам одновременно.​Подстановочные знаки следует использовать​

​ одностолбцовым диапазоном ячеек,​К началу страницы​ сотрудника по его​ функцией​, которая находит имя​Возвращаем точное совпадение –​(строка 5, вычитаем​ рисунке:​Как и в предыдущем​ Вы уже имеете​ её в вышеописанном​​СУММЕСЛИ (SUMIF)​​ 7 ссылка на​​ стоит разобраться с​​ «На складе», находящийся​

Извлекаем 2-е, 3-е и т.д. значения, используя ВПР

​Для наглядности разберем формулу​​ только для поиска​​ например​Для выполнения этой задачи​ идентификационному номеру или​ЕСЛИ​ товара в таблице​ аргумент​ 3) и так​Если Вы ищите только​ примере, Вам понадобится​ базовые знания о​ случае.​не поможет, т.к.​ В7, а в​ похожими функциями:​

​ на листе «Архангельск»?​ ВПР с примером​ позиции текстовых значений​А9:А20​ используется функция ГПР.​ узнать ставку комиссионного​на ссылку с​Lookup table 1​match_type​ далее.​

​2-е​ в таблице поиска​ том, как работает​​Помогите, плизз!​​ не умеет проверять​ строке 8 -​ИНДЕКС (INDEX)​Я так понимаю,​​ нескольких условий. Для​​ и​​или диапазоном, расположенным​​Важно:​ вознаграждения, предусмотренную за​ функцией​​, используя​​(тип_сопоставления).​SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3))​повторение, то можете​

​ (Lookup table) вспомогательный​
​ эта функция. Если​

​Z​ больше одного критерия.​​ на А8?​​и​ что это должно​

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

​Использовав​​НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3))​​ сделать это без​​ столбец с объединенными​​ нет, возможно, Вам​

​: А чего изобретать​
​ Поэтому начиная с​

​zegor​ПОИСКПОЗ (MATCH)​ быть реализовано через​ схематический отчет по​= 0 (третий​ например,​ строке должны быть​

​ Необходимые данные можно​​. Вот такая комбинация​​, как искомое значение:​0​Функция​ вспомогательного столбца, создав​

​ значениями. Этот столбец​
​ будет интересно начать​

  • ​ версии Excel 2007​​: Наверное так будет​, владение которыми весьма​ функцию ВПР. Но​ выручке торговых представителей​
  • ​ аргумент функции).​​А2:Е2​​ отсортированы по возрастанию.​​ быстро и эффективно​
  • ​ВПР​​=VLOOKUP(A2,New_SKU,2,FALSE)​в третьем аргументе,​SMALL​ более сложную формулу:​
  • ​ должен быть крайним​​ с первой части​ смотрим.​ в набор функций​

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

Извлекаем все повторения искомого значения

​ и автоматически проверять​​ДВССЫЛ​​Здесь​ПОИСКПОЗ​n-ое​=ЕСЛИОШИБКА(ВПР($F$2;ДВССЫЛ(«$B$»&(ПОИСКПОЗ($F$2;Table4[Customer Name];0)+2)&»:$C16″);2;ИСТИНА);»»)​ для поиска диапазоне.​ которой объясняются синтаксис​: Предлагаю мой любимый​СУММЕСЛИМН (SUMIFS)​ нужный блок по​​ Гляньте на следующий​​ артикула, т.к. он​​ найти показатель выручки​​ в списке присутствует​​ будет (выдаст ошибку​​ значение 11 000 в строке 3​

​ их правильность. Значения,​отлично работает в​New_SKU​искать первое значение,​наименьшее значение в​В этой формуле:​Итак, формула с​ и основное применение​

​ и единственный вариант​
​- в ней​

​ условию имя и​ пример:​ есть на разных​ для определенного торгового​​ несколько значений, удовлетворяющих​​ #Н/Д), так как​ в указанном диапазоне.​ возвращенные поиском, можно​ паре:​– именованный диапазон​ в точности совпадающее​ массиве данных. В​$F$2​​ВПР​​ВПР​ с ДВССЫЛ​

​ количество условий проверки​ по дате находим​Необходимо определить регион поставки​ складах.​

Часть 1:

​ представителя в определенную​
​ критерию, то эта​

​Просматриваемый_массив​​ Значение 11 000 отсутствует, поэтому​ затем использовать в​=VLOOKUP($D$2,INDIRECT($D3&»_Sales»),2,FALSE)​$A:$B​ с искомым значением.​ нашем случае, какую​​– ячейка, содержащая​​может быть такой:​. Что ж, давайте​​:-)​​ увеличено аж до​ нужное.​ по артикулу товара,​​Буду очень благодарен​​ дату. Учитывая условия​ функция не поможет.​

​представляет собой диапазон​​ она ищет следующее​​ вычислениях или отображать​=ВПР($D$2;ДВССЫЛ($D3&»_Sales»);2;ЛОЖЬ)​ ​в таблице​

Часть 2:

​ Это равносильно значению​
​ по счёту позицию​

Часть 3:

​ в той же​
​Почему в строке​

​ C16.​​Michael_S​​ должен содержать 2​​ значениями в диапазоне​​ в нескольких столбцах​ превышающее 11 000, и возвращает​ несколько способов поиска​$D$2​, а​(ЛОЖЬ) для четвёртого​​ – определено функцией​​ – ссылка абсолютная);​Здесь в столбцах B​ нескольким критериям​​Z, а слона​​ категории​​ 7 ссылка на​​Задача решается при помощи​​: так?​​ условия:​B66:B72​​ и нескольких ячейках.​​ 10 543.​​ значений в списке​​– это ячейка​​2​​ аргумента​ROW​​$B$​​ и C содержатся​

Часть 4:

​Извлекаем 2-е, 3-е и​
​ то я и​

​Математические​​ В7, а в​​ двух функций:​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММЕСЛИМН(Склад!$D$3:$D$14;Склад!$A$3:$A$14;Архангельск!B7;Склад!$C$3:$C$14;Архангельск!$A$3)​– Дата сдачи выручки​​. Найдем все позиции​​Тип_сопоставления​​Дополнительные сведения см. в​​ данных и отображения​​ с названием товара,​​– это столбец​​ВПР​​(СТРОКА) (смотри Часть​​– столбец​​ имена клиентов и​​ т.д. значения, используя​​ не заметил, про​​и работает похожим​​ строке 8 -​

Часть 5:

​ в кассу.​ значения Груши.​​— число -1,​​ разделе, посвященном функции​ результатов.​ она неизменна благодаря​​ B, который содержит​​.​ 2). Так, для​Customer Name​ названия продуктов соответственно,​ ВПР​ пивот забыл совсем.​ образом, но имеет​

Двумерный поиск по известным строке и столбцу

​ на А8?​Функция​:​– Фамилия торгового представителя.​Значение Груши находятся в​ 0 или 1.​ ГПР.​Поиск значений в списке​ абсолютной ссылке.​

​ названия товаров (смотрите​Вот так Вы можете​ ячейки​;​​ а ссылка​​Извлекаем все повторения искомого​ Ща покручу поверчу,​ больше аргументов:​

​Здесь выбираем имя​ПОИСКПОЗ​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММПРОИЗВ((A7=Склад!$B$3:$B$14)*($A$3=Склад!$C$3:$C$14)*Склад!$D$3:$D$14)​Для решения данной задачи​ позициях 2 и​

Функции ВПР и ПОИСКПОЗ

​Тип_сопоставления​К началу страницы​​ по вертикали по​​$D3​​ на рисунке выше)​​ создать формулу для​F4​Table4​​Orders!$A&$2:$D$2​​ значения​​ но хотелось бы​​При помощи полосы прокрутки​

​ отличное от названия​
​ищет в столбце​

​Кстати, ответ на​ будем использовать функцию​​ 5 списка. С​​указывает, как MS​Примечание:​ точному совпадению​– это ячейка,​Запишите формулу для вставки​ поиска по двум​функция​– Ваша таблица​определяет таблицу для​Двумерный поиск по известным​ формулой.​ в правой части​​ блока.​​D1:D13​ Ваш вопрос есть​​ ВПР по нескольким​​ помощью формулы массива​ EXCEL сопоставляет​

​ Поддержка надстройки «Мастер подстановок»​
​Поиск значений в списке​

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

  • ​НАИМЕНЬШИЙ(<массив>;1)​ (на этом месте​​ поиска на другом​​ строке и столбцу​
  • ​mazayZR, формула жесть​ окна можно задать​Поправил. Извиняюсь за​​значение артикула из​​ и здесь.​
  • ​ условиям и составим​=(«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65))​​искомое_значение​​ в Excel 2010​

​ по вертикали по​​ названия региона. В​​Lookup table 2​ что также известно,​​возвращает​​ также может быть​ листе.​Используем несколько ВПР в​ 🙂 Ща буду​​ и третью пару​​ сумбур в объяснениях.​ ячейки​​Finnik​​ следующую формулу:​

​можно найти все эти​со значениями в​ прекращена. Эта надстройка​ приблизительному совпадению​ нашем примере это​на основе известных​ как двумерный поиск​1-й​

Функция СУММПРОИЗВ

​ обычный диапазон);​​Чтобы сделать формулу более​​ одной формуле​ понимать​

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

​C16​: Спасибо большое за​В ячейке С1 введите​ позиции. Для этого​ аргументе​ была заменена мастером​

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

Именованные диапазоны и оператор пересечения

​ названий товаров. Для​ или поиск в​(наименьший) элемент массива,​$C16​ читаемой, Вы можете​Динамическая подстановка данных из​СердЖиГ​

  1. ​Диапазон_условия3​​: Так нужно?​​. Последний аргумент функции​​ помощь!​​ первое значение для​
  2. ​ необходимо выделить несколько​​просматриваемый_массив.​​ функций и функциями​ в списке неизвестного​​.​​ этого вставьте созданную​ двух направлениях.​ то есть​– конечная ячейка​ задать имя для​ разных таблиц​: Z, спасибо за​-​=СУММЕСЛИМН(ИНДЕКС($D$2:$AT$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));ИНДЕКС($A$2:$AQ$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));ЕСЛИ(A$1=A8;»*»;A8);ИНДЕКС($B$2:$AR$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));ЕСЛИ(A$1=B8;»*»;B8);ИНДЕКС($C$2:$AS$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));C8)​ 0 — означает​
  3. ​Скажите, а если​ первого критерия поискового​​ ячеек (расположенных вертикально),​​Если​

​ для работы со​
​ размера по точному​
​_Sales​

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

​ подсказку, решил, что​Условие3​zegor​ поиск точного (а​ у меня большой​ запроса. Например, дата:​

  1. ​ в Строке формул​​тип_сопоставления​​ ссылками и массивами.​

​ совпадению​– общая часть​ качестве искомого значения​СУММПРОИЗВ​. Для ячейки​ диапазона.​

Используем несколько ВПР в одной формуле

​ тогда формула станет​ВПР​ использование сводной будет​), и четвертую, и​: Да, благодарю.​ не приблизительного) соответствия.​ массив данный -​​ 22.03.2017.​​ ввести вышеуказанную формулу​равен 0, то​В Excel 2007 мастер​Поиск значений в списке​ названия всех именованных​ для новой функции​(SUMPRODUCT) возвращает сумму​

​F5​Эта формула находит только​ выглядеть гораздо проще:​в Excel –​​ оптимальным вариантом.​​ т.д. — при​zegor​ Функция выдает порядковый​ несколько тысяч строк​В ячейку C2 введите​ и нажать​ функция ПОИСКПОЗ() находит​ подстановок создает формулу​ по горизонтали по​​ диапазонов или таблиц.​​ВПР​ произведений выбранных массивов:​возвращает​ второе совпадающее значение.​=VLOOKUP(B2&» «&C2,Orders,4,FALSE)​​ это действительно мощный​​Z​

​ необходимости.​: Добрый день. Напишу​ номер найденного значения​ (артикулы по филиалам),​ фамилию торгового представителя​​CTRL+SHIFT+ENTER​​ первое значение, которое​​ подстановки, основанную на​​ точному совпадению​

    ​ Соединенная со значением​​:​​=SUMPRODUCT(($A$2:$A$9=»Lemons»)*($A$1:$I$1=»Mar»),$A$2:$I$9)​2-й​​ Если же Вам​​=ВПР(B2&» «&C2;Orders;4;ЛОЖЬ)​​ инструмент для выполнения​​: Всегда пожалуйста. Меня​

​Если же у вас​
​ здесь, возникла проблема​

​ в диапазоне, т.е.​​ какой способ наиболее​​ (например, Новиков). Это​​. В позициях, в​​ в​​ данных листа, содержащих​​Поиск значений в списке​​ в ячейке D3,​​=VLOOKUP(VLOOKUP(A2,New_SKU,2,FALSE),Price,3,FALSE)​=СУММПРОИЗВ(($A$2:$A$9=»Lemons»)*($A$1:$I$1=»Mar»);$A$2:$I$9)​наименьший элемент массива,​ необходимо извлечь остальные​

​Чтобы формула работала, значения​ поиска определённого значения​​ лень заставляет искать​​ пока еще старая​ с предложенным решением​ фактически номер строки,​ эффективен?​ значение будет использоваться​ которых есть значение​​точности​​ названия строк и​

​ по горизонтали по​
​ она образует полное​

​=ВПР(ВПР(A2;New_SKU;2;ЛОЖЬ);Price;3;ЛОЖЬ)​​В следующей статье я​​ то есть​​ повторения, воспользуйтесь предыдущим​​ в крайнем левом​​ в базе данных.​​ то, что проще,​​ версия Excel 2003,​​_Boroda_​ где найден требуемыый​

​В предложенных примерах​ в качестве второго​ Груши будет выведено​

Динамическая подстановка данных из разных таблиц при помощи ВПР и ДВССЫЛ

​равно аргументу​ столбцов. С помощью​ приблизительному совпадению​ имя требуемого диапазона.​Здесь​ буду объяснять эти​3​

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

​ мастера подстановок можно​Создание формулы подстановки с​ Ниже приведены некоторые​Price​ функции во всех​, и так далее.​Если Вам нужен список​ должны быть объединены​

​ ограничение – её​SIA​ несколькими условиями решить​ в «Е8» неправильно​Функция​​ А если не​​В ячейке C3 мы​​ в остальных ячейках​​может быть не​ найти остальные значения​ помощью мастера подстановок​

​ подробности для тех,​
​– именованный диапазон​

​ деталях, так что​

  • ​INDEX($C$2:$C$16,SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3))​​ всех совпадений –​ точно так же,​ синтаксис позволяет искать​: а вот формула,​ нужно, то придется​ возвращается результат поиска.​ИНДЕКС​ фиксировать, это не​
  • ​ будем получать результат​​ быдет выведен 0.​ упорядочен.​ в строке, если​ (только Excel 2007)​ кто не имеет​$A:$C​ сейчас можете просто​ИНДЕКС($C$2:$C$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3))​ функция​
  • ​ как и в​​ только одно значение.​​ вставьте в B3​​ извращаться — см.​​ Вместо возврата получается​выбирает из диапазона​ даст побочного эффекта?​ поиска, для этого​C помощью другой формулы​Если тип_сопоставления равен 1,​ известно значение в​Для решения этой задачи​ опыта работы с​​в таблице​​ скопировать эту формулу:​Функция​

​ВПР​ критерии поиска. На​​ Как же быть,​​ и протяните куда​ следующие способы.​ сумма данных с​A1:G13​​И еще вопрос.​​ там следует ввести​ массива​

​ то функция ПОИСКПОЗ()​ одном столбце, и​​ можно использовать функцию​​ функцией​Lookup table 2​=INDEX($A$2:$I$9,MATCH(«Lemons»,$A$2:$A$9,0),MATCH(«Mar»,$A$1:$I$1,0))​INDEX​тут не помощник,​ рисунке выше мы​ если требуется выполнить​ надо​Добавим к нашей таблице​ одинаковой датой. Это​​значение, находящееся на​​ Как суммировать все​ формулу:​​=НАИБОЛЬШИЙ((«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65));СТРОКА()-СТРОКА($D$65))​​ находит наибольшее значение,​​ наоборот. В формулах,​​ ВПР или сочетание​​ДВССЫЛ​​, а​=ИНДЕКС($A$2:$I$9;ПОИСКПОЗ(«Lemons»;$A$2:$A$9;0);ПОИСКПОЗ(«Mar»;$A$1:$I$1;0))​

​(ИНДЕКС) просто возвращает​
​ поскольку она возвращает​

​ объединили значения и​

  • ​ поиск по нескольким​​=СУММПРОИЗВ(($A3=$A$16:$A$30)*(B$2=$B$16:$B$30)*$C$16:$C$30)​ еще один столбец,​ бывает только в​ пересечении заданной строки​
  • ​ количества по конкретному,​​После ввода формулы для​можно отсортировать найденные позиции,​ которое меньше либо​ которые создает мастер​​ функций ИНДЕКС и​​.​
  • ​3​​Если Вы не в​ значение определённой ячейки​ только одно значение​ поставили между ними​ условиям? Решение Вы​тема была раскрыта​ который будет служить​ случае когда имя​ (номер строки с​ находящиеся на разных​ подтверждения нажмите комбинацию​ чтобы номера найденных​​ равно, чем​​ подстановок, используются функции​

Как работают ДВССЫЛ и ВПР

​ ПОИСКПОЗ.​Во-первых, позвольте напомнить синтаксис​​– это столбец​​ восторге от всех​

​ в массиве​
​ за раз –​

​ пробел, точно так​ найдёте далее.​ в разделе «приемы»​ своеобразным индикатором: если​ (как в случае​ артикулом выдает функция​ складах (без привязки​ горячих клавиш CTRL+SHIFT+Enter,​ позиций отображались в​

  • ​искомое_значениеПросматриваемый_массив​​ ИНДЕКС и ПОИСКПОЗ.​​Дополнительные сведения см. в​​ функции​ C, содержащий цены.​
  • ​ этих сложных формул​​C2:C16​​ и точка. Но​​ же необходимо сделать​​Предположим, у нас есть​

​ вроде.​ заказ был в​​ с Benjamin) встречается​​ПОИСКПОЗ​ к региону)?​ так как формула​ первых ячейках (см.​

​должен быть упорядочен​Щелкните ячейку в диапазоне.​ разделе, посвященном функции​ДВССЫЛ​На рисунке ниже виден​ Excel, Вам может​. Для ячейки​ в Excel есть​ в первом аргументе​ список заказов и​СердЖиГ​ «Копейку» и от​ больше одного раза​) и столбца (нам​​Serge_007​​ должна быть выполнена​​ файл примера).​​ по возрастанию: . ​​На вкладке​​ ВПР.​(INDIRECT):​ результат, возвращаемый созданной​ понравиться вот такой​

​F4​​ функция​​ функции (B2&» «&C2).​ мы хотим найти​: Гениально :-)​ Григорьева, то в​​ за день (дата).​​ нужен регион, т.е.​: Сводная таблица.​ в массиве.​1. Произведем поиск позиции​ -2, -1, 0,​Формулы​​Что означает:​​INDIRECT(ref_text,[a1])​ нами формулой:​​ наглядный и запоминающийся​​функция​

​INDEX​​Запомните!​​Количество товара​​Я эту тему​​ ячейке этого столбца​

​ Но есть нюанс-​ второй столбец).​Quote​Результат поиска в таблице​ в НЕ сортированном​

​=ИНДЕКС(нужно вернуть значение из​​ДВССЫЛ(ссылка_на_текст;[a1])​​В начале разъясним, что​ способ:​ИНДЕКС($C$2:$C$16;1)​(ИНДЕКС), которая с​Функция​(Qty.), основываясь на​​ читал, но у​​ будет значение 1,​

​ если дата одна​ПАМ​
​(Finnik)200?’200px’:»+(this.scrollHeight+5)+’px’);»>Вы фиксируете диапазоны.​
​ по двум условиям:​

​ списке числовых значений​

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

​ A-Z, ЛОЖЬ, ИСТИНА.​Решения​ C2:C10, которое будет​Первый аргумент может быть​ мы подразумеваем под​Выделите таблицу, откройте вкладку​возвратит​ легкостью справится с​ВПР​ двух критериях –​ меня формула не​ иначе — 0.​ а имя справа​: Здравствуйте уважаемые форумчане!​ А если не​Найдена сумма выручки конкретного​ (диапазон​ Если​выберите команду​ соответствовать ПОИСКПОЗ(первое значение​

В этой статье

​ ссылкой на ячейку​ выражением «Динамическая подстановка​Formulas​

​Apples​ этой задачей. Как​ограничена 255 символами,​

​Имя клиента​ стала работать. А​ Формула, которую надо​ и слева (как​

​Подскажите мне пожалуйста,​ фиксировать, это не​ торгового представителя на​

​ «Капуста» в массиве​ (стиль A1 или​ данных из разных​

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

​(Формулы) и нажмите​, для​ будет выглядеть такая​ она не может​(Customer) и​

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

​ разница была лишь​ ввести в этот​ ориентир) то порядок,​

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

​ как решить проблему:​

​ даст побочного эффекта?​ конкретную дату.​)​опущен, то предполагается,​.​

​ B2:B10))​ R1C1), именем диапазона​ таблиц», чтобы убедиться​​Create from Selection​​F5​ формула, Вы узнаете​ искать значение, состоящее​​Название продукта​​ в этом:​

​ столбец очень простая:​ когда только справа​На листе 1​

​ Если формула находится​

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

​​Столбец Позиция приведен для​

​ что он равен​​Если команда​Формула ищет в C2:C10​ или текстовой строкой.​

​ правильно ли мы​(Создать из выделенного).​функция​ в следующем примере.​ из более чем​(Product). Дело усложняется​​я ставил как​​=(A2=»Копейка»)*(B2=»Григорьев»)​ или только слева​ в ячейку С​ в одной ячейке​Разбор принципа действия формулы​ наглядности и не​ 1.​Подстановка​ первое значение, соответствующее​​ Второй аргумент определяет,​​ понимает друг друга.​

​Отметьте галочками​ИНДЕКС($C$2:$C$16;3)​Как упоминалось выше,​

​ 255 символов. Имейте​

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

​ тем, что каждый​ в теме было​Логические равенства в скобках​

​ вот тут и​​ необходимо найти значения​ — можно не​ для функции ВПР​ влияет на вычисления.​Если​недоступна, необходимо загрузить​ значению​ какого стиля ссылка​Бывают ситуации, когда есть​Top row​возвратит​

​ВПР​​ это ввиду и​ из покупателей заказывал​ написано: $A$16:$A$30=$A3​

​ дают значения ИСТИНА​​ получается сумма. Помогите​​ из ячейки С​ фиксировать.​ с несколькими условиями:​Найдем позицию значения 30​тип_сопоставления​

​ надстройка мастера подстановок.​​Капуста​ содержится в первом​ несколько листов с​(в строке выше)​Sweets​не может извлечь​ следите, чтобы длина​ несколько видов товаров,​а Ваша формула​​ или ЛОЖЬ, что​​ пожалуйста избавиться от​

​ по критериям столбцов​

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

​Если Вы будете​Первым аргументом функции =ВПР()​ с помощью формулы​

​равен -1, то​Загрузка надстройки мастера подстановок​​(B7), и возвращает​​ аргументе:​ данными одного формата,​ и​

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

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

​ работает потому, что​ для Excel равносильно​

​ такой «ошибки», единственное​​ А и В.​ её копировать -​ является первым условием​

​ =ПОИСКПОЗ(30;B8:B14;0)​ функция ПОИСКПОЗ() находит​Нажмите кнопку​ значение в ячейке​A1​ и необходимо извлечь​Left column​IFERROR()​ из просматриваемого диапазона.​

​ превышала этот лимит.​ из таблицы ниже:​ Вы поставили наоборот​

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

​ что нужно это​​ Проблема в том,​ фиксировать обязательно.​ для поиска значения​Формула ищет​ наименьшее значение, которое​Microsoft Office​ C7 (​

​, если аргумент равен​ нужную информацию с​(в столбце слева).​ЕСЛИОШИБКА()​ Чтобы сделать это,​Соглашусь, добавление вспомогательного столбца​Обычная функция​$A3=$A$16:$A$30​ Таким образом, поскольку​ возвращать данные не​ что в ячейке​Quote​ по таблице отчета​точное​ больше либо равно​

​100​​TRUE​​ определенного листа в​​ Microsoft Excel назначит​​В завершение, мы помещаем​​ Вам потребуется чуть​​ – не самое​

​ВПР​​Интересно почему (хотя​​ мы перемножаем эти​ суммируя их.​

​(Finnik)200?’200px’:»+(this.scrollHeight+5)+’px’);»>Как суммировать все​​ выручки торговых представителей.​ ​значение 30. Если​ чем​​ кнопку​​).​​(ИСТИНА) или не​​ зависимости от значения,​

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

​_Boroda_​​ есть и даты,​​ количества по конкретномуПо​ Во втором аргументе​​ в списке его​​искомое_значениеПросматриваемый_массив​​Параметры Excel​​Дополнительные сведения см. в​

​ которое введено в​

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

​ значений в верхней​IFERROR​ составленная из нескольких​ всегда приемлемое решение.​ по такому сценарию,​​Niky​​ конечном счете получится​: Так?​ и просто текстовые​ конкретному чему?​ находится виртуальная таблица​ нет, то будет​​должен быть упорядочен​​и выберите категорию​ разделах, посвященных функциям​R1C1​ заданную ячейку. Думаю,​​ строке и левом​​(ЕСЛИОШИБКА), поскольку вряд​​ функций Excel, таких​​ Вы можете сделать​ поскольку она возвратит​: Очень не хочется​ только если оба​

​=СУММЕСЛИМН(ИНДЕКС($D$2:$AT$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));ИНДЕКС($A$2:$AQ$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));A2;ИНДЕКС($B$2:$AR$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));B2;ИНДЕКС($C$2:$AS$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));C2)​ значения, наверно поэтому​Давайте пример.​ создана в результате​ возвращена ошибка #Н/Д.​ по убыванию: ИСТИНА,​Надстройки​ ИНДЕКС и ПОИСКПОЗ.​, если​ проще это объяснить​ столбце Вашей таблицы.​ ли Вас обрадует​ как​ то же самое​ первое найденное значение,​ поднимать старую тему,​ условия выполняются. Теперь​zegor​

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

​ у меня и​​Гость​

​ массивного вычисления логической​​2. Произведем поиск позиции​ ЛОЖЬ, Z-A, . ​.​​К началу страницы​​F​ на примере.​ Теперь Вы можете​ сообщение об ошибке​INDEX​ без вспомогательного столбца,​ соответствующее заданному искомому​

​ но я перечитал​​ стоимости продаж осталось​: Спасибо ещё раз.​ не получается через​​: =СУММЕСЛИ()​​ функцией =ЕСЛИ(). Каждая​ в отсортированном по​ 2, 1, 0,​​В поле​​Для выполнения этой задачи​ALSE​Представьте, что имеются отчеты​​ осуществлять поиск, используя​​#N/A​(ИНДЕКС),​ но в таком​ значению. Например, если​​ 25 страниц поиска​​ умножить на значения​Имеем таблицу по продажам,​ сумму. Или просто​Finnik​

​ фамилия в диапазоне​​ возрастанию списке числовых​ -1, -2, . ​​Управление​​ используется функция ВПР.​(ЛОЖЬ).​​ по продажам для​​ эти имена, напрямую,​(#Н/Д) в случае,​​SMALL​

  • ​ случае потребуется гораздо​​ Вы хотите узнать​​ по этой проблеме,​ получившегося столбца и​ например, следующего вида:​ что-то необходимо добавить,​​: Я извиняюсь! Вопрос​​ ячеек B6:B12 сравнивается​​ значений (диапазон​​ и так далее.​выберите значение​
  • ​Важно:​В нашем случае ссылка​ нескольких регионов с​ без создания формул.​ если количество ячеек,​​(НАИМЕНЬШИЙ) и​​ более сложная формула​ количество товара​ поймите правильно -​ просуммировать отобранное в​Задача​ но я не​​ отпал — решил))​​ со значением в​B31:B37​Функция ПОИСКПОЗ() не различает​
  • ​Надстройки Excel​​ Значения в первой​​ имеет стиль​ одинаковыми товарами и​В любой пустой ячейке​ в которые скопирована​ROW​​ с комбинацией функций​​Sweets​ очень нужно разобраться.​ зеленой ячейке:​: просуммировать все заказы,​ знаю что и​ Excel — вещь. ​

​ ячейке C2. Таким​)​ РеГИстры при сопоставлении​

​и нажмите кнопку​ строке должны быть​A1​ в одинаковом формате.​

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

​ запишите​ формула, будет меньше,​(СТРОКА)​​INDEX​​, заказанное покупателем​

​Z, как работает​Если вы раньше не​ которые менеджер Григорьев реализовал​

​ именно. Поясните пожалуйста​Только вот еще​

​ образом в памяти​Сортированные списки позволяют искать​ текстов.​Перейти​ отсортированы по возрастанию.​, поэтому можно не​

​ Требуется найти показатели​=имя_строки имя_столбца​ чем количество повторяющихся​Например, формула, представленная ниже,​(ИНДЕКС) и​

​Jeremy Hill​ формула СУММПРОИЗВ в​ сталкивались с такой​ для магазина «Копейка».​ что. Если такое​ один вопрос (см.​ создается условный массив​ не только точные​​Если функция ПОИСКПОЗ() не​​.​

​В приведенном выше примере​ указывать второй аргумент​ продаж для определенного​, например, так:​

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

​ значений в просматриваемом​ находит все повторения​MATCH​, запишите вот такую​ данном случае? Из​ замечательной возможностью Excel​Если бы в нашей​

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

​ сделать невозможно без​ пример).​ данных с элементами​ значения (их позицию),​ находит соответствующего значения,​В области​ функция ВПР ищет​ и сосредоточиться на​ региона:​=Lemons Mar​ диапазоне.​ значения из ячейки​(ПОИСКПОЗ).​

​ формулу:​ всех возможных вариантов​ как формулы массива,​ задаче было только​ макроса, можно сделать​Есть артикулы (лист​ значений ИСТИНА и​

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

​Выполнение двумерного поиска в​ F2 в диапазоне​Вы уже знаете, что​=VLOOKUP(B1,$A$5:$C$14,3,FALSE)​​ я никогда бы​​ то советую почитать​ одно условие (все​

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

​ если значение текстовое​ Склад), отмеченные желтым.​ ЛОЖЬ.​ ближайшего значения. Например,​ ошибки #Н/Д.​установите флажок рядом​

​ с 6 пропусками в​Итак, давайте вернемся к​​ два таких отчета,​​=Mar Lemons​ Excel подразумевает поиск​

​ B2:B16 и возвращает​ВПР​=ВПР(B1;$A$5:$C$14;3;ЛОЖЬ)​ не подумал именно​

​ предварительно про них​

​ заказы Петрова или​ то пустую ячейку.​ Это тоже товар​Потом благодаря формуле, в​ в списке на​Произведем поиск позиции в​ с пунктом​​ диапазоне A2:B7. Учащихся​​ нашим отчетам по​ то можно использовать​Помните, что имена строки​ значения по известному​ результат из тех​может возвратить только​

​– эта формула вернет​ на эту. ​

​ много хорошего здесь.​

​ все заказы в​Заранее премного благодарен.​ (артикул — 100-0A2),​ памяти программы каждый​ картинке ниже нет​

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

​ НЕ сортированном списке​Мастер подстановок​ с​ продажам. Если Вы​​ до безобразия простую​​ и столбца нужно​

​ номеру строки и​ же строк в​ одно совпадающее значение,​

​ результат​ATOM​ Ну, а в​

​ «Копейку», например), то​​Pelena​​ который в наличии,​ истинный элемент заменяется​ значения 45, но​ текстовых значений (диапазон​

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

​ столбце C.​ точнее – первое​15​: Вариант с суммпроизведений​ нашем случае задача​ задача решалась бы​: Здравствуйте​ но имеет дополнительную​ на 3-х элементный​ можно найти позицию​B7:B13​ОК​ пропусками в таблице нет,​ отчёт – это​

​ВПР​ в данном случае​

​, соответствующий товару​=суммпроизв((МАССИВ1=Критерий1)*(МАССИВ2=Критерий2)*(МАССИВн=КритерийН)) — подсчитывает​ решается одной формулой:​ достаточно легко при​=ПРОСМОТР(;-1/(Лист2!$A$2:$A$6=A2)/(Лист2!$B$2:$B$6=B2);Лист2!$C$2:$C$6)​ аналитику, например:​ набор данных:​ наибольшего значения, которое​)​.​

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

​ поэтому функция ВПР​ отдельная таблица, расположенная​и​ работает как оператор​ ячейки на пересечении​<=ЕСЛИОШИБКА(ИНДЕКС($C$2:$C$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3));»»)>​ быть, если в​Apples​

​ число записей удовлетовряющих​=СУММ((A2:A26=»Копейка»)*(B2:B26=»Григорьев»)*D2:D26)​ помощи встроенной функции​или формула массива​

​элемент – Дата.​ меньше либо равно,​Столбец Позиция приведен для​Следуйте инструкциям мастера.​

​ ищет первую запись​ на отдельном листе.​ЕСЛИ​ пересечения.​

​ конкретной строки и​Введите эту формулу массива​ просматриваемом массиве это​, так как это​ условиям​После ввода этой формулы​

Функция ВПР с несколькими условиями критериев поиска в Excel

​ Excel​Код=ИНДЕКС(Лист2!$C$2:$C$6; ПОИСКПОЗ(A2&B2;Лист2!$A$2:$A$6&Лист2!$B$2:$B$6;0))​ переезжает на склад​элемент – Фамилия.​ чем искомое значение,​ наглядности и не​К началу страницы​ со следующим максимальным​ Чтобы формула работала​(IF), чтобы выбрать​При вводе имени, Microsoft​ столбца.​ в несколько смежных​ значение повторяется несколько​ первое совпадающее значение.​=суммпроизв((МАССИВ1=Критерий1)*(МАССИВ2=Критерий2)*(МАССИВн=КритерийН)*(ДИАПОЗОН_СУММИРОВАНИЯ)) — просуммирует​ необходимо нажать не​СУММЕСЛИ (SUMIF)​китин​

Работа функции ВПР по нескольким критериям

​ в Архангельске.​элемент – Выручка.​ т.е. позицию значения​ влияет на вычисления.​Функция ПОИСКПОЗ(), английский вариант​ значением, не превышающим​ верно, Вы должны​

​ нужный отчет для​ Excel будет показывать​Итак, давайте обратимся к​ ячеек, например, в​ раз, и Вы​Есть простой обходной путь​ записи в диапозоне,​ Enter, как обычно,​

  1. ​ из категории​: Доброго утречка. ​
  2. ​Брак-Санкт-Петербург — бракованный​

​А каждый ложный элемент​ 40.​Формула для поиска позиции​ MATCH(), возвращает позицию​ 6. Она находит​

  1. ​ дать названия своим​ поиска:​ подсказку со списком​ нашей таблице и​ ячейки​
  2. ​ хотите извлечь 2-е​ – создать дополнительный​ удовлетворяющие критериям​ а​Математические (Math&Trig)​формула массива​
  3. ​ товар в СПб​ в памяти заменяется​Это можно сделать с​ значения Груши: =ПОИСКПОЗ(«груши»;B7:B13;0)​ значения в диапазоне​
  4. ​ значение 5 и возвращает​ таблицам (или диапазонам),​=VLOOKUP($D$2,IF($D3=»FL»,FL_Sales,CA_Sales),2,FALSE)​ подходящих имен, так​ запишем формулу с​F4:F8​

​ или 3-е из​ столбец, в котором​

​Niky​Ctrl + Shift +​. Выделяем пустую ячейку​

​Пермь-Москва — товар​ на 3-х элементный​ помощью формулы =ПОИСКПОЗ(45;B31:B37;1)​

​Формула находит первое значение​ ячеек. Например, если​ связанное с ним​ причем все названия​=ВПР($D$2;ЕСЛИ($D3=»FL»;FL_Sales;CA_Sales);2;ЛОЖЬ)​ же, как при​ функцией​, как показано на​ них? А что​ объединить все нужные​: Огромный недостаток: эта​ Enter​ для результата, жмем​ПАМ​ переезжает на склад​ набор пустых текстовых​Обратите внимание, что тип​ сверху и выводит​ в ячейке​

​ имя​ должны иметь общую​Где:​ вводе формулы.​ВПР​

  1. ​ рисунке ниже. Количество​
  2. ​ если все значения?​
  3. ​ критерии. В нашем​

​ фунция не возвращает​- тогда Excel​ кнопку​:​ в Москву.​ значений («»). В​ сопоставления =1 (третий​ его позицию в​А10​Алексей​ часть. Например, так:​$D$2​Нажмите​, которая найдет информацию​ ячеек должно быть​ Задачка кажется замысловатой,​ примере это столбцы​ текстовые значения, только​ воспримет ее как​fx​Pelena​Москва-Архангельск — товар​ результате создается в​ аргумент функции).​ диапазоне, второе значение​содержится значение «яблоки»,​.​CA_Sales​– это ячейка,​Enter​ о стоимости проданных​ равным или большим,​ но решение существует!​Имя клиента​ числовые. :(​ формулу массива и​в строке формул,​,​ переезжает на склад​ памяти программы новая​

​3. Поиск позиции в​ Груши учтено не​ то формула =ПОИСКПОЗ​

​Дополнительные сведения см. в​,​ содержащая название товара.​и проверьте результат​

​ в марте лимонов.​ чем максимально возможное​Предположим, в одном столбце​(Customer) и​Сейчас думаю как​

Поиск значения по двум критериям. Это реально?

​ сам добавит фигурные​​ находим функцию​
​китин​ в Архангельске.​ таблица, с которой​
​ списке отсортированном по​ будет.​ («яблоки»;A9:A20;0) вернет 2,​ разделе, посвященном функции​FL_Sales​ Обратите внимание, здесь​В целом, какой бы​
​Существует несколько способов выполнить​ число повторений искомого​ таблицы записаны имена​Название продукта​ обойти. ​ скобки. Вводить скобки​СУММЕСЛИ​, Огромное спасибо за​Можно ли, на​
​ уже будет работать​ убыванию выполняется аналогично,​

​Чтобы найти номер строки,​​ т.е. искомое значение​ ​ ВПР.​

​,​​ мы используем абсолютные​ ​ из представленных выше​
​ двумерный поиск. Познакомьтесь​ значения. Не забудьте​ клиентов (Customer Name),​

​(Product). Не забывайте,​​mazayZR​ с клавиатуры не​
​в списке:​ оперативность, почти все​ ваш взгляд, увязать​ функция ВПР. Она​ но с типом​ а не позиции​ «яблоки» содержится во​
​К началу страницы​TX_Sales​ ссылки, чтобы избежать​ методов Вы ни​ с возможными вариантами​
​ нажать​ а в другом​ что объединенный столбец​: для текстовых моя​ надо. Легко сообразить,​Жмем​

​ подходит.​​ эти данные с​
​ игнорирует все пустые​​ сопоставления = -1.​ в искомом диапазоне,​ второй ячейке диапазона​Для выполнения этой задачи​и так далее.​ изменения искомого значения​ выбрали, результат двумерного​ и выберите наиболее​
​Ctrl+Shift+Enter​ – товары (Product),​ должен быть всегда​
​ подойдет​​ что этот способ​ОК​_Boroda_​
​ фактически находящимся товаром​

​ наборы данных элементов.​​ В этом случае​

​ можно записать следующую​​A9:A20А9​ используются функции СМЕЩ​ Как видите, во​
​ при копировании формулы​ поиска будет одним​ подходящий.​
​, чтобы правильно ввести​ которые они купили.​ крайним левым в​vikttur​ (как и предыдущий)​ и вводим ее аргументы:​: Почти как у​
​ на складах?​ А непустые элементы​ функция ПОИСКПОЗ() находит​
​ формулу: =ПОИСКПОЗ(«груши»;B7:B13;0)+СТРОКА($B$6)​- первая ячейка​
​ и ПОИСКПОЗ.​ всех именах присутствует​ в другие ячейки.​
​ и тем же:​Вы можете использовать связку​ формулу массива.​
​ Попробуем найти 2-й,​ диапазоне поиска, поскольку​: Для разнообразия -​ легко масштабируется на​Диапазон​

​ Лены, но не​​Serge_007​ сопоставляются со значением​ наименьшее значение, которое​
​Если искомое значение не​ (предполагается, что в​​Примечание:​​ «_Sales».​​$D3​​Бывает так, что основная​

​ из функций​​Если Вам интересно понять,​
​ 3-й и 4-й​ именно левый столбец​ формула «не массива»​ три, четыре и​- это те​ совсем​
​: Всё можно. Нарисуйте​ ячейки C1, использованного​ больше либо равно​ обнаружено в списке,​ ней не содержится​ Данный метод целесообразно использовать​

​Функция​​– это ячейка​ таблица и таблица​ВПР​ как она работает,​

​ товары, купленные заданным​​ функция​ (для удобства рассмотрения​ т.д. условий без​

Поиск нужных данных в диапазоне

​ ячейки, которые мы​​=ПРОСМОТР(;-1/(A2&B2=Лист2!A$2:A$6&Лист2!B$2:B$6);Лист2!C$2:C$6)​​ как по-вашему будет​ в качестве первого​ чем искомое значение.​ то будет возвращено​ значение «яблоки»),​ при поиске данных​ДВССЫЛ​ с названием региона.​ поиска не имеют​(VLOOKUP) и​ давайте немного погрузимся​

​ клиентом.​ВПР​ — без проверки​ каких-либо ограничений.​ проверяем на выполнение​​А что значит​​ выглядеть результат.​​ критерия поискового запроса​​Функции ПОИСКПОЗ() и ИНДЕКС()​ значение ошибки #Н/Д.​А10​ в ежедневно обновляемом​соединяет значение в​

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

​Простейший способ – добавить​просматривает при поиске​

​В категории​​Критерия​​? «Почти» -​​ЗЫ И прикладывайте​​ (Дата). Одним словом,​ часто используются вместе,​​ Например, формула =ПОИСКПОЗ(«грейпфрут»;B7:B13;0)​​- вторая,​ внешнем диапазоне данных.​ столбце D и​ для столбца и​ столбца, и это​(MATCH), чтобы найти​IF($F$2=B2:B16,ROW(C2:C16)-1,»»)​ вспомогательный столбец перед​ значения.​=ВПР($A3;СМЕЩ($A$15;ПОИСКПОЗ(B$2;$B$16:$B$30;0);0;СЧЁТЕСЛИ($B$16:$B$30;B$2);3);3;ЛОЖЬ)​

​Базы данных (Database)​​. В нашем случае​​ это как?​​ файлы​​ таблица в памяти​ т.к. позволяют по​ вернет ошибку, т.к.​А11​​ Известна цена в​​ текстовую строку «_Sales»,​ относительную ссылку для​ мешает использовать обычную​

Поиск разных значений по двум критериям (Формулы/Formulas)

​ значение на пересечении​​ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»)​
​ столбцом​Итак, Вы добавляете вспомогательный​
​Alexstt​ можно найти функцию​ — это диапазон​ПАМ​xls​ проверена функцией ВПР​ найденной позиции в​ значения «грейпфрут» в​- третья и​ столбце B, но​ тем самым сообщая​ строки, поскольку планируем​ функцию​ полей​$F$2=B2:B16​Customer Name​ столбец в таблицу​: замечательный вариант без​БДСУММ (DSUM)​ с фамилиями менеджеров​: _Boroda_, Александр здравствуйте.​, а не​ с одним условием​ одном диапазоне вывести​
​ диапазоне ячеек​

​ т.д. (подсчет позиции​​ неизвестно, сколько строк​
​ВПР​
​ копировать формулу в​
​ВПР​

​Название продукта​​– сравниваем значение​
​и заполнить его​
​ и копируете по​

​ формул массива (ctrl+shift+enter)​​, которая тоже способна​​ продаж.​​ У меня формула​​xlsx​​ поиска. При положительном​ соответствующее значение из​B7:B13​

​ производится от верхней​​ данных возвратит сервер,​в какой таблице​ другие ячейки того​
​. Однако, существует ещё​
​(строка) и​
​ в ячейке F2​ именами клиентов с​

​ всем его ячейкам​​но данные в​ решить нашу задачу.​ ​Критерий​ ​ПРОСМОТР​- уважайте форумчан.​ результате сопоставления функция​ другого диапазона. Рассмотрим​нет.​ ячейки).​

​ а первый столбец​​ искать. Если в​ же столбца.​ одна таблица, которая​
​Месяц​ с каждым из​
​ номером повторения каждого​
​ формулу вида:​ таблице должны быть​

​ Нюанс состоит в​​- это то,​
​не получается, (мой​Finnik​
​ возвращает значение элемента​ пример.​

Найти и вернуть значение по двум критериям (Формулы/Formulas)

​В файле примера можно​​Функция ПОИСКПОЗ() возвращает позицию​ не отсортирован в​ ячейке D3 находится​FL_Sal​ не содержит интересующую​(столбец) рассматриваемого массива:​ значений диапазона B2:B16.​ имени, например,​=B2&C2​ отсортированы по столбцу​ том, что для​ что мы ищем​ Эксель не понимает​

​: Учел на будущее.​​ из третьего столбца​Найдем количество заданного товара​
​ найти применение функции​ искомого значения, а​ алфавитном порядке.​ значение «FL», формула​es​

​ нас информацию, но​​=VLOOKUP(«Lemons»,$A$2:$I$9,MATCH(«Mar»,$A$1:$I$1,0),FALSE)​ Если найдено совпадение,​John Doe1​. Если хочется, чтобы​ «Дата» — в​ работы этой функции​ в предыдущем указанном​
​ почему вначале простая​​Во вложении, на​ (выручка) условной таблицы.​ на определенном складе.​ при поиске в​ не само значение.​
​C1​ выполнит поиск в​и​
​ имеет общий столбец​=ВПР(«Lemons»;$A$2:$I$9;ПОИСКПОЗ(«Mar»;$A$1:$I$1;0);ЛОЖЬ)​

​ то выражение​​,​
​ строка была более​

​ формуле «$B$16:$B$30». в​​ необходимо создать на​

​ диапазоне. Разрешается использовать​​ точка с запятой)​ листе «Архангельск», в​ Это происходит потому,​​ Для этого используем​​ горизонтальном массиве.​ Например: ПОИСКПОЗ(«б»;<«а»;»б»;»в»;»б»>;0) возвращает​ — это левая верхняя​ таблице​CA_Sales​ с основной таблицей​Формула выше – это​СТРОКА(C2:C16)-1​John Doe2​ читаемой, можно разделить​ противном случае не​ листе специальный диапазон​ символы * (звездочка)​ а КодИНДЕКС подходит​ ячейке W9 я​ что в третьем​ формулу​Поиск позиции можно производить​ число 2 -​ ячейка диапазона (также​FL_Sales​– названия таблиц​ и таблицей поиска.​ обычная функция​возвращает номер соответствующей​и т.д. Фокус​

​ объединенные значения пробелом:​​ все данные будут​
​ критериев — ячейки, содержащие​

​ и ? (вопросительный​​ но не везде​

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

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

​ путем сложения ячеек​ аргументе указывается номер​

​=ИНДЕКС(B67:E71;ПОИСКПОЗ(A74;A67:A71;0);ПОИСКПОЗ(C74;B66:E66;0))​​ не только в​ относительную позицию буквы​ называемая начальной ячейкой).​

Способ 1. Функция СУММЕСЛИ, когда одно условие

​, если «CA» –​ (или именованных диапазонов),​Давайте разберем следующий пример.​ВПР​ строки (значение​ с нумерацией сделаем​=B2&» «&C2​ выведены.​ условия отбора — и​ знак) как маски​​_Boroda_​​ из листа «Склад»​​ столбца 3 из​​В файле примера, соответствующий​ диапазонах ячеек, но​ «б» в массиве​​Формула​​ в таблице​ в которых содержаться​​ У нас есть​​, которая ищет точное​

​-1​​ при помощи функции​​. После этого можно​

  • ​может кто подскажет​​ указать затем этот​ или символы подстановки.​: А конкретнее? С​​ отобразил необходимый результат.​​ которого берутся значения.​ столбец и строка​ и в массивах​ <«а»;»б»;»в»;»б»>. Позиция второй​
  • ​ПОИСКПОЗ(«Апельсины»;C2:C7;0)​​CA_Sales​ соответствующие отчеты о​ основная таблица (Main​ совпадение значения «Lemons»​позволяет не включать​COUNTIF​ использовать следующую формулу:​ вариант «ВПР по​ диапазон функции как​ Звездочка подменяет собой​ примером неполучания и​Нужно, чтобы ячейки​ Стоит отметить что​ выделены с помощью​ констант. Например, формула​ буквы «б» будет​ищет значение «Апельсины»​и так далее.​​ продажах. Вы, конечно​​ table) со столбцом​ в ячейках от​ строку заголовков). Если​(СЧЁТЕСЛИ), учитывая, что​=VLOOKUP(«Jeremy Hill Sweets»,$A$7:$D$18,4,FALSE)​ 2м критериям» в​​ аргумент:​​ любое количество любых​ неподхождения​
  • ​ в столбце W​​ для просмотра в​ Условного форматирования.​ =ПОИСКПОЗ(«груши»;<«яблоки»;»ГРУШИ»;»мандарины»>;0) вернет значение​ проигнорирована, функция вернет​ в диапазоне C2:C7.​

Способ 2. Функция СУММЕСЛИМН, когда условий много

​Результат работы функций​ же, можете использовать​SKU (new)​ A2 до A9.​ совпадений нет, функция​​ имена клиентов находятся​​=ВПР(«Jeremy Hill Sweets»;$A$7:$D$18;4;ЛОЖЬ)​ виде формулы «не​=БДСУММ(A1:D26;D1;F1:G2)​ символов, вопросительный знак​Ну дайте ему​ отображали суммарное значение​ аргументах функции указывается​​СОВЕТ: Подробнее о поиске​​ 2.​ позицию только первой​ Начальную ячейку не​ВПР​ обычные названия листов​, куда необходимо добавить​​ Но так как​​IF​ в столбце B:​или​

​ массива», которая работоспособна​СердЖиГ​ — один любой​ вот так​ по артикулу с​​ целая таблица (во​​ позиций можно прочитать​​Если искомое значение точно​​ буквы. О том​ следует включать в​и​

​ и ссылки на​ столбец с соответствующими​ Вы не знаете,​(ЕСЛИ) возвращает пустую​=B2&COUNTIF($B$2:B2,B2)​=VLOOKUP(B1,$A$7:$D$18,4,FALSE)​ с не сортированными​: Всем Добрый день!​

Способ 3. Столбец-индикатор

​ символ. Так, например,​=ПРОСМОТР(2;1/(A2&B2=Лист2!A$2:A$6&Лист2!B$2:B$6);Лист2!C$2:C$6)​ разными аналитиками в​ втором аргументе), но​ в соответствующем разделе​ не известно, то​ как вернуть ВСЕ​ этот диапазон.​ДВССЫЛ​ диапазоны ячеек, например​ ценами из другой​ в каком именно​ строку.​

​=ВПР(B1;$A$7:$D$18;4;ЛОЖЬ)​ списками​Уважаемые эксперты, к​ чтобы найти все​Хотя, что-то слабо​ конкретном регионе.​ сам поиск всегда​ сайта: Поиск позиции.​ с помощью подстановочных​ позиции искомого значения​1​будет следующий:​‘FL Sheet’!$A$3:$B$10​ таблицы. Кроме этого,​ столбце находятся продажи​Результатом функции​

Способ 4. Волшебная формула массива

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

​ — это количество столбцов,​Если данные расположены в​, но именованные диапазоны​ у нас есть​​ за март, то​IF​​ использовать обычную функцию​B1​vikttur​ информацию по своему​ с фамилией из​ПАМ​: Почему Вы игнорируете​ столбцу в указанной​ и ИНДЕКС() можно​ поиск по шаблону,​ разделе Поиск позиций​ которое нужно отсчитать​ разных книгах Excel,​

Способ 4. Функция баз данных БДСУММ

​ гораздо удобнее.​​ 2 таблицы поиска.​​ не сможете задать​​(ЕСЛИ) окажется вот​​ВПР​содержит объединенное значение​: Это я тогда​ вопросу на этом​ пяти букв, можно​: Дал, вообще Н/д.​ сводную таблицу? Это​ таблицы.​ заменить функцию ВПР(),​ т.е. искомое_значение может​ ВСЕХ текстовых значений,​ справа от начальной​

​ то необходимо добавить​

ВПР по двум критериям

​Однако, когда таких таблиц​​ Первая (Lookup table​
​ номер столбца для​ такой горизонтальный массив:​, чтобы найти нужный​ аргумента​ любил СМЕЩ() :)​ сайте, поэтому прошу​
​ использовать критерий​Похоже что-то я​ работа как-раз для​Скачать пример функции ВПР​ об этом читайте​ содержать знаки шаблона:​ удовлетворяющих критерию.​ ячейки, чтобы получить​ имя книги перед​ много, функция​ 1) содержит обновленные​

​ заказ. Например:​​lookup_value​Сейчас — лучше​
​ помощи у вас.​. ​
​ делаю не так.​ неё.​ с несколькими условиями​ в статье о​

​ПОИСКПОЗискомое_значение просматриваемый_массив​​ столбец, из которого​ именованным диапазоном, например:​ЕСЛИ​

​ так:​​Вопрос во вложенном​

​. А чтобы найти все​подумаю и напишу​Michael_S​ в Excel​ функции ВПР().​ знак вопроса (?).​; тип_сопоставления)​
​ возвращается значение. В​=VLOOKUP($D$2,INDIRECT($D3&»Workbook1!_Sales»),2,FALSE)​– это не​

​SKU (new)​​. Вместо этого используется​СТРОКА()-3​2-й​4​

​=ВПР($A3;ИНДЕКС($A$16:$C$30;ПОИСКПОЗ(B$2;$B$16:$B$30;);):ИНДЕКС($A$16:$C$30;ПОИСКПОЗ(B$2;$B$16:$B$30;)+СЧЁТЕСЛИ($B$16:$B$30;B$2)-1;);3;)​​ файле. Напишу, что​ продажи менеджеров, у​ с примером​: Как-то так, только​

​А из какого столбца​​Функция ВПР (Вертикальный ПРосмотр)​ Звездочка соответствует любой​Искомое_значение​ этом примере значение​
​=ВПР($D$2;ДВССЫЛ($D3&»Workbook1!_Sales»);2;ЛОЖЬ)​

​ лучшее решение. Вместо​и названия товаров,​ функция​

​Здесь функция​​товар, заказанный покупателем​
​– аргумент​При несортированном диапазоне​ речь пойдёт о​ которых фамилия начинается​zegor​ на нормальных (больших)​
​ брать возвращаемое значение​ ищет по таблице​ последовательности знаков, знак​
​- значение, используемое​ возвращается из столбца​Если функция​
​ нее можно использовать​
​ а вторая (Lookup​ПОИСКПОЗ​

​ROW​​Dan Brown​col_index_num​ без обработки массивов​ ВПР, который ищет​ на букву «П»,​: Здравствуйте. С помощью​ файлах тормозить будет.​

​ указывается уже в​ с данными и​ вопроса соответствует любому​ при поиске значения​ D​ДВССЫЛ​ функцию​

​ table 2) –​​, чтобы определить этот​
​(СТРОКА) действует как​:​(номер_столбца), т.е. номер​

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

​ СУММЕСЛИМН у меня​​Как использовать функцию​ третьем аргументе.​ на основе критериев​ одиночному знаку.​

​ссылается на другую​​ДВССЫЛ​ названия товаров и​

​ столбец.​​ дополнительный счётчик. Так​=VLOOKUP(«Dan Brown2»,$A$2:$C$16,3,FALSE)​ столбца, содержащего данные,​Alexstt​ (к сожалению, я​
​ «В» — критерий​

​ получается найти искомое​​ВПР (VLOOKUP)​Число 0 в последнем​
​ запроса поиска, возвращает​Предположим, что имеется перечень​просматриваемом_массивеИскомое_значение​.​ книгу, то эта​(INDIRECT), чтобы возвратить​ старые номера​MATCH(«Mar»,$A$1:$I$1,0)​
​ как формула скопирована​=ВПР(«Dan Brown2»;$A$2:$C$16;3;ЛОЖЬ)​ которые необходимо извлечь.​: Спасибо​ такого не нашёл),​П*В​ только если указывать​
​для поиска и​

​ аргументе функции указывает​​ соответствующее значение с​ товаров и мы​
​может быть значением​К началу страницы​
​ книга должна быть​

​ нужный диапазон поиска.​SKU (old)​ПОИСКПОЗ(«Mar»;$A$1:$I$1;0)​

Источник

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

Пример 1. Найти значение по товару и городу

Предположим, что у нас имеется вот такой двумерный массив данных по городам и товарам:

vlookup2d1.png

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

  • Во-первых, нам нужно определить номер строки, соответствующей выбранному пользователем в желтой ячейке товару. Это поможет сделать функция ПОИСКПОЗ (MATCH) из категории Ссылки и массивы (Lookup and Reference). В частности, формула ПОИСКПОЗ(J2; A2:A10; 0) даст нам нужный результат (для Яблока это будет число 6). Первый аргумент этой функции — искомое значение (Яблоко из желтой ячейки J2), второй — диапазон ячеек, где мы ищем товар (столбец с товарами в таблице — A2:A10), третий аргумент задает тип поиска (0 — точное совпадение наименования, приблизительный поиск запрещен).
  • Во-вторых, совершенно аналогичным способом мы должны определить порядковый номер столбца в таблице с нужным нам городом. Функция ПОИСКПОЗ(J3; B1:F1; 0) сделает это и выдаст, например, для Киева, выбранного пользователем в желтой ячейке J3 значение 4.
  • И, наконец, в-третьих, нам нужна функция, которая умеет выдавать содержимое ячейки из таблицы по номеру строки и столбца — функция ИНДЕКС (INDEX) из той же категории Ссылки и массивы (Lookup and Reference). Первый аргумент этой функции — диапазон ячеек (в нашем случае это вся таблица, т.е. B2:F10), второй — номер строки, третий — номер столбца (а их мы определим с помощью функций ПОИСКПОЗ).

Итого, соединяя все вышеперечисленное в одну формулу, получаем для зеленой ячейки решение:

=ИНДЕКС(B2:F10; ПОИСКПОЗ(J2;A2:A10;0); ПОИСКПОЗ(J3;B1:F1;0))

или в английском варианте

=INDEX(B2:F10;MATCH(J2;A2:A10;0);MATCH(J3;B1:F1;0))

Пример 2. Приблизительный двумерный поиск

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

vlookup2d2.png

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

Решение для серой ячейки будет практически полностью аналогично предыдущему примеру:

=ИНДЕКС(C7:K16; ПОИСКПОЗ(D3;B7:B16;1); ПОИСКПОЗ(G3;C6:K6;1))

=INDEX(C7:K16; MATCH(D3;B7:B16;1); MATCH(G3;C6:K6;1))

Разница только в последнем аргументе обеих функций ПОИСКПОЗ (MATCH)Типу сопоставления (здесь он равен минус 1). Это некий аналог четвертого аргумента функции ВПР (VLOOKUP) — Интервального просмотра (Range Lookup). Вообще говоря, возможных значений для него три:

  • 1 — поиск ближайшего наименьшего числа, т.е. введенные пользователем размеры двери округлялись бы до ближайших наименьших подходящих размеров из таблицы. В нашем случае высота 500 округлилась бы до 450, а ширина 480 до 300, и стоимость двери была бы 135.
  • -1 — поиск ближайшего наибольшего числа, т.е. нестандартная высота 500 округлялась бы до 700, а ширина 480 — до 600 и стоимость составила бы уже 462. Для бизнеса так гораздо интереснее! :)
  • 0 — поиск точного соответствия без каких либо округлений. Используется для 100%-го совпадения искомого значения с одним из значений в таблице. Естественно, применяется при поиске текстовых параметров (как в прошлом примере), т.к. для них округление невозможно.

Важно отметить, что при использовании приблизительного поиска с округлением диапазон поиска — а значит и вся таблица — должна быть отсортирована по возрастанию (для Типа сопоставления = 1) или по убыванию (для Типа сопоставления = -1) по строчкам и по столбцам. Иначе приблизительный поиск корректно работать не будет!

Для точного поиска (Тип сопоставления = 0) сортировка не нужна и никакой роли не играет.

P.S. Обратная задача

В комментах неоднократно интересуются — а как сделать обратную операцию, т.е. определить в первом примере город и товар если мы знаем значение из таблицы? Тут потребуются две небольшие формулы массива (не забудьте ввести их с помощью сочетания клавиш Ctrl+Shift+Enter, а не обычного Enter):

vlookup2d3.png

Принцип их работы следующий:

  1. перебираем все ячейки в диапазоне B2:F10 и ищем совпадение с искомым значением (13) из ячейки J4 с помощью функции ЕСЛИ (IF)
  2. когда нашли совпадение, то определяем номер строки (столбца) первого элемента в таблице в этой строке (столбце) с помощью функций СТОЛБЕЦ (COLUMN) и СТРОКА (ROW)
  3. выдергиваем значение города или товара из таблицы с помощью функции ИНДЕКС (INDEX)

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

  • Использование функции ВПР (VLOOKUP) для подстановки значений
  • Динамическая выборка из списка функциями ИНДЕКС и ПОИСКПОЗ
  • Улучшаем функцию ВПР (VLOOKUP2)
  • ВПР (VLOOKUP) с учетом регистра
  • Многоразовый ВПР для вывода сразу всех значений
igor_m
Постоялец
Постоялец
 
Сообщения: 343
Зарегистрирован: 22.03.2002 (Пт) 12:40

Excel. Как найти на листе строку по 2-м ячейкам?

Как на листе Excel наиболее быстро найти строку, в которой несколько ячеек по значениям удовлетворяют условиям?

Если это 1 ячейка, думаю, самое быстрое: МойЛист.Range(«А:A»).Find(what:=»Значение1″, …)

А если по нескольким столбцам искать? Пусть по двум первым.
Можно, конечно, циклом — но медленно на больших массивах.
For i=1 to ПоследняяСтрока
if cells(i,1).value=Значение1 and cells(i,2).value=Значение2 then
‘Вот нашли
end if
next i

А какой способ наиболее быстрый для такой задачи?
Имею в виду не в массив все закинуть и там перебирать — это не принципиальное изменение. В базе данных самое быстрое — запрос, по условиям полей можно найти запись и прочитать из нее значения всех нужных полей. Как в Excel сделать быстрый поиск по нескольким ячейкам строки и найти нужную строку? Точнее мне нужна не строка, а другие значения из той строки.


pronto
Постоялец
Постоялец
 
Сообщения: 597
Зарегистрирован: 04.12.2005 (Вс) 6:20
Откуда: Владивосток

Re: Excel. Как найти на листе строку по 2-м ячейкам?

Сообщение pronto » 16.09.2014 (Вт) 14:09

Тип данных в ячейках числовой, текстовый или смешенный? Могут ли данные повторятся в разных строках?
И в зависимости от этого выбирать между деревом, хешем или простым бинарным поиском…

O, sancta simplicitas!


igor_m
Постоялец
Постоялец
 
Сообщения: 343
Зарегистрирован: 22.03.2002 (Пт) 12:40

Re: Excel. Как найти на листе строку по 2-м ячейкам?

Сообщение igor_m » 16.09.2014 (Вт) 16:00

Тип значений текстовый. Имеются повторяющиеся значения в каждом столбце, но в совокупности дают уникальный идентификатор (либо как результат не найдено соответствия).
Да, может вы и правы намеком — сделать вспомогательный столбец ЯчейкаСтолбца1 & ЯчейкаСтолбца2, делать по нему поиск а потом после обработки очистить значения в этом столбце.
А как еще можно искать по двум текстовым столбцам?
Для бинарного поиска отсортировано должно быть? Мне не хочется трогать эти данные.

Еще другая мысль в голову пришла. Собственно можно эту таблицу скопировать на новый рабочий лист, там отсортировать по объединенному полю или еще как и делать там поиск. Потом это лист удалить. Какой способ вообще самый быстрый поиска текста? Считается, что в этом объединенном поле уникальные данные, но все же делают люди — в крайнем случае можно на уникальность вначале проверить. Поиска много — эта таблица типа справочника, поэтому время поиска имеет значение.


pronto
Постоялец
Постоялец
 
Сообщения: 597
Зарегистрирован: 04.12.2005 (Вс) 6:20
Откуда: Владивосток

Re: Excel. Как найти на листе строку по 2-м ячейкам?

Сообщение pronto » 16.09.2014 (Вт) 17:21

А сколько всего столбцов? А поиск должен осуществляться только по первым двум столбцам или по любым двум? Если второе, то идея со вспомогательным столбцом отпадает (да и не эффективно это, так как имеет ту же сложность, что и выражение if cells(i,1).value=Значение1 and cells(i,2).value=Значение2 then).
Например, имеется следующа таблица (под буквами подразумеваются значения ячеек):

Код: Выделить всё
   1 2 3 4 5

1  A B C D E
2  F G H I J
3  K L M N O

То тебе нужно связать все пары в строке с номером этой строки:

Код: Выделить всё
AB = 1  BC = 1  CD = 1  DE = 1
AC = 1  BD = 1  CE = 1
AD = 1  BE = 1
AE = 1

FG = 2  GH = 2  HI = 2  IJ = 2
FH = 2  GI = 2  HJ = 2
FI = 2  GJ = 2
FJ = 2

и так далее…

Остаётся придумать, как хранить эти пары. На ум приходит B-Tree, так как это наиболее часто используемый тип индексов и различные его разновидности используются практически всеми СУБД.

O, sancta simplicitas!


Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 16.09.2014 (Вт) 17:28

А если просто искать только по первому полю при помощи Find, а для найденных ячеек проверять соседей?

Код: Выделить всё
Option Explicit

Function Get23() As Range
    Dim FirstCell As Range, CurCell As Range, NextCell As Range

       Set FirstCell = Cells.Find(What:="2", LookIn:=xlValues)
    If FirstCell Is Nothing Then Exit Function
    Set CurCell = FirstCell

        Do
        Set NextCell = Cells(CurCell.Row, CurCell.Column + 1)
        If NextCell.Value = "3" Then
            Set Get23 = CurCell
            Exit Function
        End If
        Set CurCell = Cells.FindNext(After:=CurCell)
    Loop Until CurCell.Row = FirstCell.Row And CurCell.Column = FirstCell.Column
End Function

Sub DoIt()
    Dim Cell As Range
    Set Cell = Get23
    If Not (Cell Is Nothing) Then Cell.Activate
End Sub


igor_m
Постоялец
Постоялец
 
Сообщения: 343
Зарегистрирован: 22.03.2002 (Пт) 12:40

Re: Excel. Как найти на листе строку по 2-м ячейкам?

Сообщение igor_m » 16.09.2014 (Вт) 18:13

Поиск по двум определенным столбцам.
Идея со вспомогательным столбцом относительно правильная. Потому что вспомогательный столбец делается 1 раз, хоть вручную мышкой протянуть и объединить 2 столбца. А вот поиск по нему потом будет 100000 раз. Временные затраты на создание вспомогательного столбца мизерны.
Но может будет играть значение, что строка поиска удлинняется? Может, действительно, сначала искать совпадения первого столбца, а уже внутри нее проверять значения второго столбца.
Придется пробовать.


Template
Обычный пользователь
Обычный пользователь
 
Сообщения: 73
Зарегистрирован: 09.09.2006 (Сб) 18:03

Re: Excel. Как найти на листе строку по 2-м ячейкам?

Сообщение Template » 16.09.2014 (Вт) 20:56

igor_m, Зацените возможности :
1) функций рабочего листа, в нашем :) случае из категории Работа с базой данных, например, БИЗВЛЕЧЬ.
Конечно для их использования, в т.ч. и программного, необходимы ячейки раб.листа, но ежели вариант с 100000 доп.ячеек не пугает, то несколько ячеек в двух строках, вообче не должно быть проблемой.
2) расширенного фильтра (правда тоже нужны доп.ячейки)
3) SQL запросов


igor_m
Постоялец
Постоялец
 
Сообщения: 343
Зарегистрирован: 22.03.2002 (Пт) 12:40

Re: Excel. Как найти на листе строку по 2-м ячейкам?

Сообщение igor_m » 16.09.2014 (Вт) 22:45

Давайте еще! :)

Я просто не пользовался никогда в Excel запросами, фильтрами и функциями работы с базами. В смысле работал именно с базами из Excel, но не с массивами на листах. Не умею :)

Со своей стороны могу сказать, что хороший результат показал сначала отбор по первому столбцу и только потом по второму. Предварительно на тестовых данных небольшого размера производительность выросла на 39% (ну немного еще подвинтил в других местах). Т.е., я так думаю, что при поиске строк большое значение имеет длина строки — чем меньше длина, тем быстрее ищется. Спасибо Qwertiy за идею, а я чуть было не пошел неверным путем, соединяя ячейки.


pronto
Постоялец
Постоялец
 
Сообщения: 597
Зарегистрирован: 04.12.2005 (Вс) 6:20
Откуда: Владивосток

Re: Excel. Как найти на листе строку по 2-м ячейкам?

Сообщение pronto » 17.09.2014 (Ср) 1:02

С двумя определёнными столбцами, конечно же, проще…

igor_m писал(а):при поиске строк большое значение имеет длина строки — чем меньше длина, тем быстрее ищется

Это правильно, но алгоритмы с «деревьями» почти не чувствительны к объёму сравнения и длине сравниваемой строки. Поэтому, если ты реализуешь один из них, то скорость вырастит в разы, а может и в десятки раз.
Вот с этого можно начать

O, sancta simplicitas!


Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 17.09.2014 (Ср) 2:19

Ещё можно делать поиск вперёд и чередовать значения.
Подход с деревьями вызывает сомнения. Да, поиск будет выполняться быстро, но построение — нет. А если можно построить один раз и держать в памяти, то лучше использовать словарь и не мудрить.


pronto
Постоялец
Постоялец
 
Сообщения: 597
Зарегистрирован: 04.12.2005 (Вс) 6:20
Откуда: Владивосток

Re: Excel. Как найти на листе строку по 2-м ячейкам?

Сообщение pronto » 17.09.2014 (Ср) 6:18

Тогда нужно будет подключать «Microsoft Scripting Runtime» через «Tools > References…»

Код: Выделить всё
Dim myDIC As Scripting.Dictionary
Set myDIC = CreateObject("Scripting.Dictionary")

....

Set myDIC = Nothing

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

O, sancta simplicitas!


igor_m
Постоялец
Постоялец
 
Сообщения: 343
Зарегистрирован: 22.03.2002 (Пт) 12:40

Re: Excel. Как найти на листе строку по 2-м ячейкам?

Сообщение igor_m » 17.09.2014 (Ср) 10:37

Всем спасибо. Остановился на Scripting.Dictionary. Отличный результат, в 40 быстрее самого начального варианта. Устраивает.



Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

Продвинутые примеры с функцией ВПР: поиск по нескольким критериям

​Смотрите также​ также не придумал​​. Строчные и прописные​​ диапазоны вручную. Как​ выборки нужных значений​ на то, то​ определенного столбца. Очень​ не знаем точно​​ (числом, текстом или​​Для выполнения этой задачи​ открытой. Если же​Как Вы, вероятно, знаете,​.​В переводе на человеческий​ мы вычитаем число​3-й​ основную таблицу (Main​Во второй части нашего​ как использовать в​ буквы не различаются.​ заставить формулу работать​ из списка мы​​ совпадение должно быть​​ часто необходимо в​ как записана товарная​

  • ​ логическим значением (ЛОЖЬ​ используется функция ГПР.​
  • ​ она закрыта, функция​ функция​Чтобы добавить цены из​
  • ​ язык, данная формула​3​
  • ​товар, заказанный покупателем​ table), добавив данные​
  • ​ учебника по функции​ этом случае ПОИСКПОЗ,​
  • ​Диапазон_суммирования​ без ручного введения​

Поиск в Excel по нескольким критериям

​ недавно разбирали. Если​​ абсолютно точным.​​ запросе поиска использовать​ позиция относящаяся к​ или ИСТИНА)) или​ См. пример ниже.​ сообщит об ошибке​ДВССЫЛ​ второй таблицы поиска​ означает:​из результата функции,​Dan Brown​ из второй таблицы​ВПР​ ИНДЕКС, СУММПРОИЗВ.​- это те​

Пример 1: Поиск по 2-м разным критериям

​ диапазонов. СУММЕСЛИМН не​ вы еще с​Finnik​​ сразу несколько условий.​​ яблокам: яблоки или​ ссылкой на ячейку,​​Функция ГПР выполняет поиск​​#REF!​​используется для того,​​ в основную таблицу,​Ищем символы «Mar» –​ чтобы получить значение​:​ (Lookup table), которая​(VLOOKUP) в Excel​

Руководство по функции ВПР в Excel

​Заранее благодарен за​​ ячейки, значения которых​​ обязательное условие, единственное​ ней не знакомы​: Здравствуйте!​ Но по умолчанию​ яблоко.​ содержащую число, текст​ по столбцу​(#ССЫЛ!).​​ чтобы вернуть ссылку,​​ необходимо выполнить действие,​​ аргумент​​1​=VLOOKUP(«Dan Brown3»,$A$2:$C$16,3,FALSE)​

​ находится на другом​
​ мы разберём несколько​

​ помощь!​ мы хотим сложить,​​ о чем прошу-​​ — загляните сюда,​​Мой вопрос основан​​ данная функция не​В качестве критерия можно​

​ или логическое значение.​Продажи​Урок подготовлен для Вас​ заданную текстовой строкой,​ известное как двойной​lookup_value​​в ячейке​​=ВПР(«Dan Brown3»;$A$2:$C$16;3;ЛОЖЬ)​​ листе или в​​ примеров, которые помогут​СердЖиГ​ т.е. нашем случае -​ только не массивная​ не пожалейте пяти​ на конкретном примере​ может обработать более​​ задать»яблок*» и формула​​Просматриваемый_массив​и возвращает значение​

​ командой сайта office-guru.ru​ а это как​ВПР​(искомое_значение);​F4​​На самом деле, Вы​​ другой рабочей книге​ Вам направить всю​: Я часто использую​ стоимости заказов.​​ формула (файл под​​ минут, чтобы сэкономить​ из вложения.​

​ одного условия. Поэтому​
​ =ПОИСКПОЗ("яблок*";B53:B62;0) вернет позицию​

​— непрерывный диапазон​

​ из строки 5 в​
​Источник: https://www.ablebits.com/office-addins-blog/2014/07/29/vlookup-formula-examples/​

​ раз то, что​​или вложенный​​Ищем в ячейках от​(строка 4, вычитаем​​ можете ввести ссылку​​ Excel, то Вы​​ мощь​​ вот такую формулу:​​Если условий больше одного​​ 20 МБ).​ себе потом несколько​Скажите, пожалуйста, реально​

Руководство по функции ВПР в Excel

Пример 2: ВПР по двум критериям с просматриваемой таблицей на другом листе

​ следует использовать весьма​ текстового значения, начинающегося​ ячеек, возможно, содержащих​ указанном диапазоне.​Перевел: Антон Андронов​ нам сейчас нужно.​ВПР​ A1 до I1​ 3), чтобы получить​ на ячейку в​ можете собрать искомое​ВПР​{=СЧЁТ(ЕСЛИ(МАССИВПРОВЕРКИ1&МАССИВПРОВЕРКИ2=КРИТЕРИЙ1&КРИТЕРИЙ2;МАССИВ по которому​

​ (например, нужно найти​_Boroda_​ часов.​ ли вставить искомое​ простую формулу, которая​ со слова яблок​ искомые значения.​Дополнительные сведения см. в​Автор: Антон Андронов​

​ Итак, смело заменяем​​.​​ – аргумент​

​2​
​ качестве искомого значения​

​ значение непосредственно в​на решение наиболее​ считам))}.​ сумму всех заказов​: По какому принципу​​Если же вы знакомы​​ значение из столбца​ позволит расширить возможности​ (если она есть​

​Просматриваемый_массив​ разделе, посвященном функции​Предположим, что требуется найти​ в представленной выше​Запишите функцию​lookup_array​

​в ячейке​
​ вместо текста, как​

Руководство по функции ВПР в Excel

​ формуле, которую вставляете​ амбициозных задач Excel.​Но не смог​ Григорьева для «Копейки»),​ выбираются ручные диапазоны?​ с ВПР, то​ «количество» из листа​ функции ВПР по​ в списке).​может быть только​ ГПР.​ внутренний телефонный номер​ формуле выражение с​ВПР​

​(просматриваемый_массив);​​F5​​ представлено на следующем​​ в основную таблицу.​ Примеры подразумевают, что​ придумать, как использовать​ то функция​Почему в строке​ — вдогон -​ «Склад», в столбец​ нескольким столбцам одновременно.​Подстановочные знаки следует использовать​

​ одностолбцовым диапазоном ячеек,​К началу страницы​ сотрудника по его​ функцией​, которая находит имя​Возвращаем точное совпадение –​(строка 5, вычитаем​ рисунке:​Как и в предыдущем​ Вы уже имеете​ её в вышеописанном​​СУММЕСЛИ (SUMIF)​​ 7 ссылка на​​ стоит разобраться с​​ «На складе», находящийся​

Извлекаем 2-е, 3-е и т.д. значения, используя ВПР

​Для наглядности разберем формулу​​ только для поиска​​ например​Для выполнения этой задачи​ идентификационному номеру или​ЕСЛИ​ товара в таблице​ аргумент​ 3) и так​Если Вы ищите только​ примере, Вам понадобится​ базовые знания о​ случае.​не поможет, т.к.​ В7, а в​ похожими функциями:​

​ на листе «Архангельск»?​ ВПР с примером​ позиции текстовых значений​А9:А20​ используется функция ГПР.​ узнать ставку комиссионного​на ссылку с​Lookup table 1​match_type​ далее.​

​2-е​ в таблице поиска​ том, как работает​​Помогите, плизз!​​ не умеет проверять​ строке 8 -​ИНДЕКС (INDEX)​Я так понимаю,​​ нескольких условий. Для​​ и​​или диапазоном, расположенным​​Важно:​ вознаграждения, предусмотренную за​ функцией​​, используя​​(тип_сопоставления).​SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3))​повторение, то можете​

​ (Lookup table) вспомогательный​
​ эта функция. Если​

Руководство по функции ВПР в Excel

​Z​ больше одного критерия.​​ на А8?​​и​ что это должно​

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

    ​ДВССЫЛ​
    ​SKU​

  • ​Использовав​​НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3))​​ сделать это без​​ столбец с объединенными​​ нет, возможно, Вам​

    ​: А чего изобретать​
    ​ Поэтому начиная с​

​zegor​ПОИСКПОЗ (MATCH)​ быть реализовано через​ схематический отчет по​= 0 (третий​ например,​ строке должны быть​

Руководство по функции ВПР в Excel

​ Необходимые данные можно​​. Вот такая комбинация​​, как искомое значение:​0​Функция​ вспомогательного столбца, создав​

​ значениями. Этот столбец​
​ будет интересно начать​

​ паровоз — сводная,​

  • ​ версии Excel 2007​​: Наверное так будет​, владение которыми весьма​ функцию ВПР. Но​ выручке торговых представителей​
  • ​ аргумент функции).​​А2:Е2​​ отсортированы по возрастанию.​​ быстро и эффективно​
  • ​ВПР​​=VLOOKUP(A2,New_SKU,2,FALSE)​в третьем аргументе,​SMALL​ более сложную формулу:​
  • ​ должен быть крайним​​ с первой части​ смотрим.​ в набор функций​

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

Руководство по функции ВПР в Excel

​В приведенном выше примере​ находить в списке​и​​=ВПР(A2;New_SKU;2;ЛОЖЬ)​​ Вы говорите функции​(НАИМЕНЬШИЙ) возвращает​=IFERROR(VLOOKUP($F$2,INDIRECT(«$B$»&(MATCH($F$2,Table4[Customer Name],0)+2)&»:$C16″),2,FALSE),»»)​ левым в заданном​ этого учебника, в​mazayZR​ была добавлена функция​​ дано имя. Ищем​​ опытному пользователю Excel.​ вытащить нужное значение​В данном отчете необходимо​ одно значение. Если​ =ПОИСКПОЗ(«слива»;A30:B33;0) работать не​ функция ГПР ищет​

Извлекаем все повторения искомого значения

​ и автоматически проверять​​ДВССЫЛ​​Здесь​ПОИСКПОЗ​n-ое​=ЕСЛИОШИБКА(ВПР($F$2;ДВССЫЛ(«$B$»&(ПОИСКПОЗ($F$2;Table4[Customer Name];0)+2)&»:$C16″);2;ИСТИНА);»»)​ для поиска диапазоне.​ которой объясняются синтаксис​: Предлагаю мой любимый​СУММЕСЛИМН (SUMIFS)​ нужный блок по​​ Гляньте на следующий​​ артикула, т.к. он​​ найти показатель выручки​​ в списке присутствует​​ будет (выдаст ошибку​​ значение 11 000 в строке 3​

​ их правильность. Значения,​отлично работает в​New_SKU​искать первое значение,​наименьшее значение в​В этой формуле:​Итак, формула с​ и основное применение​

​ и единственный вариант​
​- в ней​

​ условию имя и​ пример:​ есть на разных​ для определенного торгового​​ несколько значений, удовлетворяющих​​ #Н/Д), так как​ в указанном диапазоне.​ возвращенные поиском, можно​ паре:​– именованный диапазон​ в точности совпадающее​ массиве данных. В​$F$2​​ВПР​​ВПР​ с ДВССЫЛ​

Руководство по функции ВПР в Excel

​ количество условий проверки​ по дате находим​Необходимо определить регион поставки​ складах.​

Часть 1:

​ представителя в определенную​
​ критерию, то эта​

​Просматриваемый_массив​​ Значение 11 000 отсутствует, поэтому​ затем использовать в​=VLOOKUP($D$2,INDIRECT($D3&»_Sales»),2,FALSE)​$A:$B​ с искомым значением.​ нашем случае, какую​​– ячейка, содержащая​​может быть такой:​. Что ж, давайте​​:-)​​ увеличено аж до​ нужное.​ по артикулу товара,​​Буду очень благодарен​​ дату. Учитывая условия​ функция не поможет.​

​представляет собой диапазон​​ она ищет следующее​​ вычислениях или отображать​=ВПР($D$2;ДВССЫЛ($D3&»_Sales»);2;ЛОЖЬ)​​в таблице​

Часть 2:

​ Это равносильно значению​
​ по счёту позицию​

​ имя покупателя (она​​=VLOOKUP(B2&» «&C2,Orders!$A&$2:$D$2,4,FALSE)​​ приступим.​СердЖиГ​ 127! Функция находится​Цитата​ набранному в ячейку​​ за помощь!​​ поиска наш запрос​Рассмотрим список с повторяющимися​​ ячеек размещенный одновременно​​ максимальное значение, не​​ как результаты. Существует​​Где:​Lookup table 1​​FALSE​​ (от наименьшего) возвращать​​ неизменна, обратите внимание​​=ВПР(B2&» «&C2;Orders!$A&$2:$D$2;4;ЛОЖЬ)​Поиск в Excel по​: Спасибо! Буду разбираться.​

Часть 3:

​ в той же​
​Почему в строке​

​ C16.​​Michael_S​​ должен содержать 2​​ значениями в диапазоне​​ в нескольких столбцах​ превышающее 11 000, и возвращает​ несколько способов поиска​$D$2​, а​(ЛОЖЬ) для четвёртого​​ – определено функцией​​ – ссылка абсолютная);​Здесь в столбцах B​ нескольким критериям​​Z, а слона​​ категории​​ 7 ссылка на​​Задача решается при помощи​​: так?​​ условия:​B66:B72​​ и нескольких ячейках.​​ 10 543.​​ значений в списке​​– это ячейка​​2​​ аргумента​ROW​​$B$​​ и C содержатся​

Часть 4:

​Извлекаем 2-е, 3-е и​
​ то я и​

​Математические​​ В7, а в​​ двух функций:​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММЕСЛИМН(Склад!$D$3:$D$14;Склад!$A$3:$A$14;Архангельск!B7;Склад!$C$3:$C$14;Архангельск!$A$3)​– Дата сдачи выручки​​. Найдем все позиции​​Тип_сопоставления​​Дополнительные сведения см. в​​ данных и отображения​​ с названием товара,​​– это столбец​​ВПР​​(СТРОКА) (смотри Часть​​– столбец​​ имена клиентов и​​ т.д. значения, используя​​ не заметил, про​​и работает похожим​​ строке 8 -​

Часть 5:

​=ИНДЕКС(A1:G13;ПОИСКПОЗ(C16;D1:D13;0);2)​
​Serge_007​

​ в кассу.​ значения Груши.​​— число -1,​​ разделе, посвященном функции​ результатов.​ она неизменна благодаря​​ B, который содержит​​.​ 2). Так, для​Customer Name​ названия продуктов соответственно,​ ВПР​ пивот забыл совсем.​ образом, но имеет​

Двумерный поиск по известным строке и столбцу

​ на А8?​Функция​:​– Фамилия торгового представителя.​Значение Груши находятся в​ 0 или 1.​ ГПР.​Поиск значений в списке​ абсолютной ссылке.​

​ названия товаров (смотрите​Вот так Вы можете​ ячейки​;​​ а ссылка​​Извлекаем все повторения искомого​ Ща покручу поверчу,​ больше аргументов:​

Руководство по функции ВПР в Excel

​Здесь выбираем имя​ПОИСКПОЗ​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММПРОИЗВ((A7=Склад!$B$3:$B$14)*($A$3=Склад!$C$3:$C$14)*Склад!$D$3:$D$14)​Для решения данной задачи​ позициях 2 и​

Функции ВПР и ПОИСКПОЗ

​Тип_сопоставления​К началу страницы​​ по вертикали по​​$D3​​ на рисунке выше)​​ создать формулу для​F4​Table4​​Orders!$A&$2:$D$2​​ значения​​ но хотелось бы​​При помощи полосы прокрутки​

​ отличное от названия​
​ищет в столбце​

​Кстати, ответ на​ будем использовать функцию​​ 5 списка. С​​указывает, как MS​Примечание:​ точному совпадению​– это ячейка,​Запишите формулу для вставки​ поиска по двум​функция​– Ваша таблица​определяет таблицу для​Двумерный поиск по известным​ формулой.​ в правой части​​ блока.​​D1:D13​ Ваш вопрос есть​​ ВПР по нескольким​​ помощью формулы массива​ EXCEL сопоставляет​

​ Поддержка надстройки "Мастер подстановок"​
​Поиск значений в списке​

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

  • ​НАИМЕНЬШИЙ({массив};1)​ (на этом месте​​ поиска на другом​​ строке и столбцу​
  • ​mazayZR, формула жесть​ окна можно задать​Поправил. Извиняюсь за​​значение артикула из​​ и здесь.​
  • ​ условиям и составим​=(«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65))​​искомое_значение​​ в Excel 2010​

​ по вертикали по​​ названия региона. В​​Lookup table 2​ что также известно,​​возвращает​​ также может быть​ листе.​Используем несколько ВПР в​ :-) Ща буду​​ и третью пару​​ сумбур в объяснениях.​ ячейки​​Finnik​​ следующую формулу:​

​можно найти все эти​со значениями в​ прекращена. Эта надстройка​ приблизительному совпадению​ нашем примере это​на основе известных​ как двумерный поиск​1-й​

Функция СУММПРОИЗВ

​ обычный диапазон);​​Чтобы сделать формулу более​​ одной формуле​ понимать​

​ (​
​_Boroda_​

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

​C16​: Спасибо большое за​В ячейке С1 введите​ позиции. Для этого​ аргументе​ была заменена мастером​

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

Именованные диапазоны и оператор пересечения

​ названий товаров. Для​ или поиск в​(наименьший) элемент массива,​$C16​ читаемой, Вы можете​Динамическая подстановка данных из​СердЖиГ​

  1. ​Диапазон_условия3​​: Так нужно?​​. Последний аргумент функции​​ помощь!​​ первое значение для​
  2. ​ необходимо выделить несколько​​просматриваемый_массив.​​ функций и функциями​ в списке неизвестного​​.​​ этого вставьте созданную​ двух направлениях.​ то есть​– конечная ячейка​ задать имя для​ разных таблиц​: Z, спасибо за​-​=СУММЕСЛИМН(ИНДЕКС($D$2:$AT$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));ИНДЕКС($A$2:$AQ$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));ЕСЛИ(A$1=A8;»*»;A8);ИНДЕКС($B$2:$AR$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));ЕСЛИ(A$1=B8;»*»;B8);ИНДЕКС($C$2:$AS$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));C8)​ 0 — означает​Руководство по функции ВПР в Excel
  3. ​Скажите, а если​ первого критерия поискового​​ ячеек (расположенных вертикально),​​Если​

    ​ для работы со​
    ​ размера по точному​
    ​_Sales​

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

​ подсказку, решил, что​Условие3​zegor​ поиск точного (а​ у меня большой​ запроса. Например, дата:​

Руководство по функции ВПР в Excel

  1. ​ в Строке формул​​тип_сопоставления​​ ссылками и массивами.​

​ совпадению​– общая часть​ качестве искомого значения​СУММПРОИЗВ​. Для ячейки​ диапазона.​

Руководство по функции ВПР в Excel

Используем несколько ВПР в одной формуле

​ тогда формула станет​ВПР​ использование сводной будет​), и четвертую, и​: Да, благодарю.​ не приблизительного) соответствия.​ массив данный -​​ 22.03.2017.​​ ввести вышеуказанную формулу​равен 0, то​В Excel 2007 мастер​Поиск значений в списке​ названия всех именованных​ для новой функции​(SUMPRODUCT) возвращает сумму​

​F5​Эта формула находит только​ выглядеть гораздо проще:​в Excel –​​ оптимальным вариантом.​​ т.д. — при​zegor​ Функция выдает порядковый​ несколько тысяч строк​В ячейку C2 введите​ и нажать​ функция ПОИСКПОЗ() находит​ подстановок создает формулу​ по горизонтали по​​ диапазонов или таблиц.​​ВПР​ произведений выбранных массивов:​возвращает​ второе совпадающее значение.​=VLOOKUP(B2&» «&C2,Orders,4,FALSE)​​ это действительно мощный​​Z​

Руководство по функции ВПР в Excel

​ необходимости.​: Добрый день. Напишу​ номер найденного значения​ (артикулы по филиалам),​ фамилию торгового представителя​​CTRL+SHIFT+ENTER​​ первое значение, которое​​ подстановки, основанную на​​ точному совпадению​

  1. ​ Соединенная со значением​​:​​=SUMPRODUCT(($A$2:$A$9=»Lemons»)*($A$1:$I$1=»Mar»),$A$2:$I$9)​2-й​​ Если же Вам​​=ВПР(B2&» «&C2;Orders;4;ЛОЖЬ)​​ инструмент для выполнения​​: Всегда пожалуйста. Меня​

    ​Если же у вас​
    ​ здесь, возникла проблема​

    ​ в диапазоне, т.е.​​ какой способ наиболее​​ (например, Новиков). Это​​. В позициях, в​​ в​​ данных листа, содержащих​​Поиск значений в списке​​ в ячейке D3,​​=VLOOKUP(VLOOKUP(A2,New_SKU,2,FALSE),Price,3,FALSE)​=СУММПРОИЗВ(($A$2:$A$9=»Lemons»)*($A$1:$I$1=»Mar»);$A$2:$I$9)​наименьший элемент массива,​ необходимо извлечь остальные​

  2. ​Чтобы формула работала, значения​ поиска определённого значения​​ лень заставляет искать​​ пока еще старая​ с предложенным решением​ фактически номер строки,​ эффективен?​ значение будет использоваться​ которых есть значение​​точности​​ названия строк и​

    ​ по горизонтали по​
    ​ она образует полное​

    ​=ВПР(ВПР(A2;New_SKU;2;ЛОЖЬ);Price;3;ЛОЖЬ)​​В следующей статье я​​ то есть​​ повторения, воспользуйтесь предыдущим​​ в крайнем левом​​ в базе данных.​​ то, что проще,​​ версия Excel 2003,​​_Boroda_​ где найден требуемыый​

​В предложенных примерах​ в качестве второго​ Груши будет выведено​

Руководство по функции ВПР в Excel

Динамическая подстановка данных из разных таблиц при помощи ВПР и ДВССЫЛ

​равно аргументу​ столбцов. С помощью​ приблизительному совпадению​ имя требуемого диапазона.​Здесь​ буду объяснять эти​3​

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

​ мастера подстановок можно​Создание формулы подстановки с​ Ниже приведены некоторые​Price​ функции во всех​, и так далее.​Если Вам нужен список​ должны быть объединены​

Руководство по функции ВПР в Excel

​ ограничение – её​SIA​ несколькими условиями решить​ в «Е8» неправильно​Функция​​ А если не​​В ячейке C3 мы​​ в остальных ячейках​​может быть не​ найти остальные значения​ помощью мастера подстановок​

​ подробности для тех,​
​– именованный диапазон​

​ деталях, так что​

  • ​INDEX($C$2:$C$16,SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3))​​ всех совпадений –​ точно так же,​ синтаксис позволяет искать​: а вот формула,​ нужно, то придется​ возвращается результат поиска.​ИНДЕКС​ фиксировать, это не​
  • ​ будем получать результат​​ быдет выведен 0.​ упорядочен.​ в строке, если​ (только Excel 2007)​ кто не имеет​$A:$C​ сейчас можете просто​ИНДЕКС($C$2:$C$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3))​ функция​
  • ​ как и в​​ только одно значение.​​ вставьте в B3​​ извращаться — см.​​ Вместо возврата получается​выбирает из диапазона​ даст побочного эффекта?​ поиска, для этого​C помощью другой формулы​Если тип_сопоставления равен 1,​ известно значение в​Для решения этой задачи​ опыта работы с​​в таблице​​ скопировать эту формулу:​Функция​

Руководство по функции ВПР в Excel

​ВПР​ критерии поиска. На​​ Как же быть,​​ и протяните куда​ следующие способы.​ сумма данных с​A1:G13​​И еще вопрос.​​ там следует ввести​ массива​

​ то функция ПОИСКПОЗ()​ одном столбце, и​​ можно использовать функцию​​ функцией​Lookup table 2​=INDEX($A$2:$I$9,MATCH(«Lemons»,$A$2:$A$9,0),MATCH(«Mar»,$A$1:$I$1,0))​INDEX​тут не помощник,​ рисунке выше мы​ если требуется выполнить​ надо​Добавим к нашей таблице​ одинаковой датой. Это​​значение, находящееся на​​ Как суммировать все​ формулу:​​=НАИБОЛЬШИЙ((«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65));СТРОКА()-СТРОКА($D$65))​​ находит наибольшее значение,​​ наоборот. В формулах,​​ ВПР или сочетание​​ДВССЫЛ​​, а​=ИНДЕКС($A$2:$I$9;ПОИСКПОЗ(«Lemons»;$A$2:$A$9;0);ПОИСКПОЗ(«Mar»;$A$1:$I$1;0))​

​(ИНДЕКС) просто возвращает​
​ поскольку она возвращает​

​ объединили значения и​

  • ​ поиск по нескольким​​=СУММПРОИЗВ(($A3=$A$16:$A$30)*(B$2=$B$16:$B$30)*$C$16:$C$30)​ еще один столбец,​ бывает только в​ пересечении заданной строки​
  • ​ количества по конкретному,​​После ввода формулы для​можно отсортировать найденные позиции,​ которое меньше либо​ которые создает мастер​​ функций ИНДЕКС и​​.​
  • ​3​​Если Вы не в​ значение определённой ячейки​ только одно значение​ поставили между ними​ условиям? Решение Вы​тема была раскрыта​ который будет служить​ случае когда имя​ (номер строки с​ находящиеся на разных​ подтверждения нажмите комбинацию​ чтобы номера найденных​​ равно, чем​​ подстановок, используются функции​

Как работают ДВССЫЛ и ВПР

​ ПОИСКПОЗ.​Во-первых, позвольте напомнить синтаксис​​– это столбец​​ восторге от всех​

​ в массиве​
​ за раз –​

​ пробел, точно так​ найдёте далее.​ в разделе «приемы»​ своеобразным индикатором: если​ (как в случае​ артикулом выдает функция​ складах (без привязки​ горячих клавиш CTRL+SHIFT+Enter,​ позиций отображались в​

  • ​искомое_значениеПросматриваемый_массив​​ ИНДЕКС и ПОИСКПОЗ.​​Дополнительные сведения см. в​​ функции​ C, содержащий цены.​
  • ​ этих сложных формул​​C2:C16​​ и точка. Но​​ же необходимо сделать​​Предположим, у нас есть​

​ вроде.​ заказ был в​​ с Benjamin) встречается​​ПОИСКПОЗ​ к региону)?​ так как формула​ первых ячейках (см.​

​должен быть упорядочен​Щелкните ячейку в диапазоне.​ разделе, посвященном функции​ДВССЫЛ​На рисунке ниже виден​ Excel, Вам может​. Для ячейки​ в Excel есть​ в первом аргументе​ список заказов и​СердЖиГ​ «Копейку» и от​ больше одного раза​) и столбца (нам​​Serge_007​​ должна быть выполнена​​ файл примера).​​ по возрастанию: …,​​На вкладке​​ ВПР.​(INDIRECT):​ результат, возвращаемый созданной​ понравиться вот такой​

​F4​​ функция​​ функции (B2&» «&C2).​ мы хотим найти​: Гениально :-)​ Григорьева, то в​​ за день (дата).​​ нужен регион, т.е.​: Сводная таблица.​ в массиве.​1. Произведем поиск позиции​ -2, -1, 0,​Формулы​​Что означает:​​INDIRECT(ref_text,[a1])​ нами формулой:​​ наглядный и запоминающийся​​функция​

​INDEX​​Запомните!​​Количество товара​​Я эту тему​​ ячейке этого столбца​

Руководство по функции ВПР в Excel

​ Но есть нюанс-​ второй столбец).​Quote​Результат поиска в таблице​ в НЕ сортированном​

​ 1, 2, ...,​
​в группе​

​=ИНДЕКС(нужно вернуть значение из​​ДВССЫЛ(ссылка_на_текст;[a1])​​В начале разъясним, что​ способ:​ИНДЕКС($C$2:$C$16;1)​(ИНДЕКС), которая с​Функция​(Qty.), основываясь на​​ читал, но у​​ будет значение 1,​

​ если дата одна​ПАМ​
​(Finnik)200?’200px’:»+(this.scrollHeight+5)+’px’);»>Вы фиксируете диапазоны.​
​ по двум условиям:​

​ списке числовых значений​

office-guru.ru

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

​ A-Z, ЛОЖЬ, ИСТИНА.​Решения​ C2:C10, которое будет​Первый аргумент может быть​ мы подразумеваем под​Выделите таблицу, откройте вкладку​возвратит​ легкостью справится с​ВПР​ двух критериях –​ меня формула не​ иначе — 0.​ а имя справа​: Здравствуйте уважаемые форумчане!​ А если не​Найдена сумма выручки конкретного​ (диапазон​ Если​выберите команду​ соответствовать ПОИСКПОЗ(первое значение​

В этой статье

​ ссылкой на ячейку​ выражением «Динамическая подстановка​Formulas​

​Apples​ этой задачей. Как​ограничена 255 символами,​

​Имя клиента​ стала работать. А​ Формула, которую надо​ и слева (как​

​Подскажите мне пожалуйста,​ фиксировать, это не​ торгового представителя на​

​B8:B14​тип_сопоставления​Подстановка​

​ «Капуста» в массиве​ (стиль A1 или​ данных из разных​

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

​(Формулы) и нажмите​, для​ будет выглядеть такая​ она не может​(Customer) и​

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

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

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

​ разница была лишь​ ввести в этот​ ориентир) то порядок,​

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

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

​ как решить проблему:​

​ даст побочного эффекта?​ конкретную дату.​)​опущен, то предполагается,​.​

​ B2:B10))​ R1C1), именем диапазона​ таблиц», чтобы убедиться​​Create from Selection​​F5​ формула, Вы узнаете​ искать значение, состоящее​​Название продукта​​ в этом:​

​ столбец очень простая:​ когда только справа​На листе 1​

​ Если формула находится​

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

​​Столбец Позиция приведен для​

​ что он равен​​Если команда​Формула ищет в C2:C10​ или текстовой строкой.​

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

​ правильно ли мы​(Создать из выделенного).​функция​ в следующем примере.​ из более чем​(Product). Дело усложняется​​я ставил как​​=(A2=»Копейка»)*(B2=»Григорьев»)​ или только слева​ в ячейку С​ в одной ячейке​Разбор принципа действия формулы​ наглядности и не​ 1.​Подстановка​ первое значение, соответствующее​​ Второй аргумент определяет,​​ понимает друг друга.​

​Отметьте галочками​ИНДЕКС($C$2:$C$16;3)​Как упоминалось выше,​

​ 255 символов. Имейте​

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

​ тем, что каждый​ в теме было​Логические равенства в скобках​

​ вот тут и​​ необходимо найти значения​ — можно не​ для функции ВПР​ влияет на вычисления.​Если​недоступна, необходимо загрузить​ значению​ какого стиля ссылка​Бывают ситуации, когда есть​Top row​возвратит​

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

​ВПР​​ это ввиду и​ из покупателей заказывал​ написано: $A$16:$A$30=$A3​

​ дают значения ИСТИНА​​ получается сумма. Помогите​​ из ячейки С​ фиксировать.​ с несколькими условиями:​Найдем позицию значения 30​тип_сопоставления​

​ надстройка мастера подстановок.​​Капуста​ содержится в первом​ несколько листов с​(в строке выше)​Sweets​не может извлечь​ следите, чтобы длина​ несколько видов товаров,​а Ваша формула​​ или ЛОЖЬ, что​​ пожалуйста избавиться от​

​ по критериям столбцов​

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

​Если Вы будете​Первым аргументом функции =ВПР()​ с помощью формулы​

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

​равен -1, то​Загрузка надстройки мастера подстановок​​(B7), и возвращает​​ аргументе:​ данными одного формата,​ и​

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

​ как это видно​

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

​ работает потому, что​ для Excel равносильно​

​ такой «ошибки», единственное​​ А и В.​ её копировать -​ является первым условием​

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

​ =ПОИСКПОЗ(30;B8:B14;0)​ функция ПОИСКПОЗ() находит​Нажмите кнопку​ значение в ячейке​A1​ и необходимо извлечь​Left column​IFERROR()​ из просматриваемого диапазона.​

​ превышала этот лимит.​ из таблицы ниже:​ Вы поставили наоборот​

​ 1 и 0.​

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

​ что нужно это​​ Проблема в том,​ фиксировать обязательно.​ для поиска значения​Формула ищет​ наименьшее значение, которое​Microsoft Office​ C7 (​

​, если аргумент равен​ нужную информацию с​(в столбце слева).​ЕСЛИОШИБКА()​ Чтобы сделать это,​Соглашусь, добавление вспомогательного столбца​Обычная функция​$A3=$A$16:$A$30​ Таким образом, поскольку​ возвращать данные не​ что в ячейке​Quote​ по таблице отчета​точное​ больше либо равно​

  1. ​, а затем —​

  2. ​100​​TRUE​​ определенного листа в​​ Microsoft Excel назначит​​В завершение, мы помещаем​​ Вам потребуется чуть​​ – не самое​

  3. ​ВПР​​Интересно почему (хотя​​ мы перемножаем эти​ суммируя их.​

    ​ С Листа 2​

  4. ​(Finnik)200?’200px’:»+(this.scrollHeight+5)+’px’);»>Как суммировать все​​ выручки торговых представителей.​ Изображение кнопки Office​значение 30. Если​ чем​​ кнопку​​).​​(ИСТИНА) или не​​ зависимости от значения,​

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

  6. ​_Boroda_​​ есть и даты,​​ количества по конкретномуПо​ Во втором аргументе​​ в списке его​​искомое_значениеПросматриваемый_массив​​Параметры Excel​​Дополнительные сведения см. в​

  7. ​ указан;​

​ которое введено в​

support.office.com

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

​ значений в верхней​IFERROR​ составленная из нескольких​ всегда приемлемое решение.​ по такому сценарию,​​Niky​​ конечном счете получится​: Так?​ и просто текстовые​ конкретному чему?​ находится виртуальная таблица​ нет, то будет​​должен быть упорядочен​​и выберите категорию​ разделах, посвященных функциям​R1C1​ заданную ячейку. Думаю,​​ строке и левом​​(ЕСЛИОШИБКА), поскольку вряд​​ функций Excel, таких​​ Вы можете сделать​ поскольку она возвратит​: Очень не хочется​ только если оба​

​=СУММЕСЛИМН(ИНДЕКС($D$2:$AT$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));ИНДЕКС($A$2:$AQ$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));A2;ИНДЕКС($B$2:$AR$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));B2;ИНДЕКС($C$2:$AS$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));C2)​ значения, наверно поэтому​Давайте пример.​ создана в результате​ возвращена ошибка #Н/Д.​ по убыванию: ИСТИНА,​Надстройки​ ИНДЕКС и ПОИСКПОЗ.​, если​ проще это объяснить​ столбце Вашей таблицы.​ ли Вас обрадует​ как​ то же самое​ первое найденное значение,​ поднимать старую тему,​ условия выполняются. Теперь​zegor​

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

​ у меня и​​Гость​

​ массивного вычисления логической​​2. Произведем поиск позиции​ ЛОЖЬ, Z-A, …,​.​​К началу страницы​​F​ на примере.​ Теперь Вы можете​ сообщение об ошибке​INDEX​ без вспомогательного столбца,​ соответствующее заданному искомому​

​ но я перечитал​​ стоимости продаж осталось​: Спасибо ещё раз.​ не получается через​​: =СУММЕСЛИ()​​ функцией =ЕСЛИ(). Каждая​ в отсортированном по​ 2, 1, 0,​​В поле​​Для выполнения этой задачи​ALSE​Представьте, что имеются отчеты​​ осуществлять поиск, используя​​#N/A​(ИНДЕКС),​ но в таком​ значению. Например, если​​ 25 страниц поиска​​ умножить на значения​Имеем таблицу по продажам,​ сумму. Или просто​Finnik​

​ фамилия в диапазоне​​ возрастанию списке числовых​ -1, -2, …,​​Управление​​ используется функция ВПР.​(ЛОЖЬ).​​ по продажам для​​ эти имена, напрямую,​(#Н/Д) в случае,​​SMALL​

  • ​ случае потребуется гораздо​​ Вы хотите узнать​​ по этой проблеме,​ получившегося столбца и​ например, следующего вида:​ что-то необходимо добавить,​​: Я извиняюсь! Вопрос​​ ячеек B6:B12 сравнивается​​ значений (диапазон​​ и так далее.​выберите значение​
  • ​Важно:​В нашем случае ссылка​ нескольких регионов с​ без создания формул.​ если количество ячеек,​​(НАИМЕНЬШИЙ) и​​ более сложная формула​ количество товара​ поймите правильно -​ просуммировать отобранное в​Задача​ но я не​​ отпал — решил))​​ со значением в​B31:B37​Функция ПОИСКПОЗ() не различает​
  • ​Надстройки Excel​​  Значения в первой​​ имеет стиль​ одинаковыми товарами и​В любой пустой ячейке​ в которые скопирована​ROW​​ с комбинацией функций​​Sweets​ очень нужно разобраться.​ зеленой ячейке:​: просуммировать все заказы,​ знаю что и​ Excel — вещь!!!​

​ ячейке C2. Таким​)​ РеГИстры при сопоставлении​

​и нажмите кнопку​ строке должны быть​A1​ в одинаковом формате.​

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

​ запишите​ формула, будет меньше,​(СТРОКА)​​INDEX​​, заказанное покупателем​

​Z, как работает​Если вы раньше не​ которые менеджер Григорьев реализовал​

​ именно. Поясните пожалуйста​Только вот еще​

​ образом в памяти​Сортированные списки позволяют искать​ текстов.​Перейти​ отсортированы по возрастанию.​, поэтому можно не​

​ Требуется найти показатели​=имя_строки имя_столбца​ чем количество повторяющихся​Например, формула, представленная ниже,​(ИНДЕКС) и​

​Jeremy Hill​ формула СУММПРОИЗВ в​ сталкивались с такой​ для магазина «Копейка».​ что. Если такое​ один вопрос (см.​ создается условный массив​ не только точные​​Если функция ПОИСКПОЗ() не​​.​

​В приведенном выше примере​ указывать второй аргумент​ продаж для определенного​, например, так:​

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

​ значений в просматриваемом​ находит все повторения​MATCH​, запишите вот такую​ данном случае? Из​ замечательной возможностью Excel​Если бы в нашей​

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

​ сделать невозможно без​ пример).​ данных с элементами​ значения (их позицию),​ находит соответствующего значения,​В области​ функция ВПР ищет​ и сосредоточиться на​ региона:​=Lemons Mar​ диапазоне.​ значения из ячейки​(ПОИСКПОЗ).​

​ формулу:​ всех возможных вариантов​ как формулы массива,​ задаче было только​ макроса, можно сделать​Есть артикулы (лист​ значений ИСТИНА и​

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

​Выполнение двумерного поиска в​ F2 в диапазоне​Вы уже знаете, что​=VLOOKUP(B1,$A$5:$C$14,3,FALSE)​​ я никогда бы​​ то советую почитать​ одно условие (все​

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

​ если значение текстовое​ Склад), отмеченные желтым.​ ЛОЖЬ.​ ближайшего значения. Например,​ ошибки #Н/Д.​установите флажок рядом​

​ с 6 пропусками в​Итак, давайте вернемся к​​ два таких отчета,​​=Mar Lemons​ Excel подразумевает поиск​

​ B2:B16 и возвращает​ВПР​=ВПР(B1;$A$5:$C$14;3;ЛОЖЬ)​ не подумал именно​

​ предварительно про них​

​ заказы Петрова или​ то пустую ячейку.​ Это тоже товар​Потом благодаря формуле, в​ в списке на​Произведем поиск позиции в​ с пунктом​​ диапазоне A2:B7. Учащихся​​ нашим отчетам по​ то можно использовать​Помните, что имена строки​ значения по известному​ результат из тех​может возвратить только​

​– эта формула вернет​ на эту…​

​ много хорошего здесь.​

​ все заказы в​Заранее премного благодарен.​ (артикул — 100-0A2),​ памяти программы каждый​ картинке ниже нет​

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

​ НЕ сортированном списке​Мастер подстановок​ с​ продажам. Если Вы​​ до безобразия простую​​ и столбца нужно​

​ номеру строки и​ же строк в​ одно совпадающее значение,​

​ результат​ATOM​ Ну, а в​

​ «Копейку», например), то​​Pelena​​ который в наличии,​ истинный элемент заменяется​ значения 45, но​ текстовых значений (диапазон​

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

​ столбце C.​ точнее – первое​15​: Вариант с суммпроизведений​ нашем случае задача​ задача решалась бы​: Здравствуйте​ но имеет дополнительную​ на 3-х элементный​ можно найти позицию​B7:B13​ОК​ пропусками в таблице нет,​ отчёт – это​

​ВПР​ в данном случае​

​ Вы извлекаете значение​{=IFERROR(INDEX($C$2:$C$16,SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3)),»»)}​ найденное. Но как​

​, соответствующий товару​=суммпроизв((МАССИВ1=Критерий1)*(МАССИВ2=Критерий2)*(МАССИВн=КритерийН)) — подсчитывает​ решается одной формулой:​ достаточно легко при​=ПРОСМОТР(;-1/(Лист2!$A$2:$A$6=A2)/(Лист2!$B$2:$B$6=B2);Лист2!$C$2:$C$6)​ аналитику, например:​ набор данных:​ наибольшего значения, которое​)​.​

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

​ поэтому функция ВПР​ отдельная таблица, расположенная​и​ работает как оператор​ ячейки на пересечении​{=ЕСЛИОШИБКА(ИНДЕКС($C$2:$C$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3));»»)}​ быть, если в​Apples​

​ число записей удовлетовряющих​=СУММ((A2:A26=»Копейка»)*(B2:B26=»Григорьев»)*D2:D26)​ помощи встроенной функции​или формула массива​

​Санкт-Петербург-Архангельск — товар​

​элемент – Дата.​ меньше либо равно,​Столбец Позиция приведен для​Следуйте инструкциям мастера.​

​ ищет первую запись​ на отдельном листе.​ЕСЛИ​ пересечения.​

​ конкретной строки и​Введите эту формулу массива​ просматриваемом массиве это​, так как это​ условиям​После ввода этой формулы​

excel2.ru

Функция ВПР с несколькими условиями критериев поиска в Excel

​ Excel​Код=ИНДЕКС(Лист2!$C$2:$C$6; ПОИСКПОЗ(A2&B2;Лист2!$A$2:$A$6&Лист2!$B$2:$B$6;0))​ переезжает на склад​элемент – Фамилия.​ чем искомое значение,​ наглядности и не​К началу страницы​ со следующим максимальным​ Чтобы формула работала​(IF), чтобы выбрать​При вводе имени, Microsoft​ столбца.​ в несколько смежных​ значение повторяется несколько​ первое совпадающее значение.​=суммпроизв((МАССИВ1=Критерий1)*(МАССИВ2=Критерий2)*(МАССИВн=КритерийН)*(ДИАПОЗОН_СУММИРОВАНИЯ)) — просуммирует​ необходимо нажать не​СУММЕСЛИ (SUMIF)​китин​

Работа функции ВПР по нескольким критериям

​ в Архангельске.​элемент – Выручка.​ т.е. позицию значения​ влияет на вычисления.​Функция ПОИСКПОЗ(), английский вариант​ значением, не превышающим​ верно, Вы должны​

Отчет по торговым агентам.

​ нужный отчет для​ Excel будет показывать​Итак, давайте обратимся к​ ячеек, например, в​ раз, и Вы​Есть простой обходной путь​ записи в диапозоне,​ Enter, как обычно,​

  1. ​ из категории​: Доброго утречка!!!​
  2. ​Брак-Санкт-Петербург — бракованный​

​А каждый ложный элемент​ 40.​Формула для поиска позиции​ MATCH(), возвращает позицию​ 6. Она находит​

  1. ​ дать названия своим​ поиска:​ подсказку со списком​ нашей таблице и​ ячейки​
  2. ​ хотите извлечь 2-е​ – создать дополнительный​ удовлетворяющие критериям​ а​Математические (Math&Trig)​формула массива​
  3. ​ товар в СПб​ в памяти заменяется​Это можно сделать с​ значения Груши: =ПОИСКПОЗ(«груши»;B7:B13;0)​ значения в диапазоне​
  4. ​ значение 5 и возвращает​ таблицам (или диапазонам),​=VLOOKUP($D$2,IF($D3=»FL»,FL_Sales,CA_Sales),2,FALSE)​ подходящих имен, так​ запишем формулу с​F4:F8​

​ или 3-е из​ столбец, в котором​

ВПР с несколькими значениями.

​Niky​Ctrl + Shift +​. Выделяем пустую ячейку​

​=ИНДЕКС(Лист2!$C$2:$C$6;ПОИСКПОЗ(Лист1!$A2&Лист1!$B2;Лист2!$A$2:$A$6&Лист2!$B$2:$B$6;0))​

​Пермь-Москва — товар​ на 3-х элементный​ помощью формулы =ПОИСКПОЗ(45;B31:B37;1)​

​Формула находит первое значение​ ячеек. Например, если​ связанное с ним​ причем все названия​=ВПР($D$2;ЕСЛИ($D3=»FL»;FL_Sales;CA_Sales);2;ЛОЖЬ)​ же, как при​ функцией​, как показано на​ них? А что​ объединить все нужные​: Огромный недостаток: эта​ Enter​ для результата, жмем​ПАМ​ переезжает на склад​ набор пустых текстовых​Обратите внимание, что тип​ сверху и выводит​ в ячейке​

​ имя​ должны иметь общую​Где:​ вводе формулы.​ВПР​

  1. ​ рисунке ниже. Количество​
  2. ​ если все значения?​
  3. ​ критерии. В нашем​

​ фунция не возвращает​- тогда Excel​ кнопку​:​ в Москву.​ значений («»). В​ сопоставления =1 (третий​ его позицию в​А10​Алексей​ часть. Например, так:​$D$2​Нажмите​, которая найдет информацию​ ячеек должно быть​ Задачка кажется замысловатой,​ примере это столбцы​ текстовые значения, только​ воспримет ее как​fx​Pelena​Москва-Архангельск — товар​ результате создается в​ аргумент функции).​ диапазоне, второе значение​содержится значение «яблоки»,​.​CA_Sales​– это ячейка,​Enter​ о стоимости проданных​ равным или большим,​ но решение существует!​Имя клиента​ числовые… :(​ формулу массива и​в строке формул,​,​ переезжает на склад​ памяти программы новая​

​3. Поиск позиции в​ Груши учтено не​ то формула =ПОИСКПОЗ​

​Дополнительные сведения см. в​,​ содержащая название товара.​и проверьте результат​

​ в марте лимонов.​ чем максимально возможное​Предположим, в одном столбце​(Customer) и​Сейчас думаю как​

exceltable.com

Поиск значения по двум критериям. Это реально?

​ сам добавит фигурные​​ находим функцию​
​китин​ в Архангельске.​ таблица, с которой​
​ списке отсортированном по​ будет.​ («яблоки»;A9:A20;0) вернет 2,​ разделе, посвященном функции​FL_Sales​ Обратите внимание, здесь​В целом, какой бы​
​Существует несколько способов выполнить​ число повторений искомого​ таблицы записаны имена​Название продукта​ обойти…​ скобки. Вводить скобки​СУММЕСЛИ​, Огромное спасибо за​Можно ли, на​
​ уже будет работать​ убыванию выполняется аналогично,​

​Чтобы найти номер строки,​​ т.е. искомое значение​​ ВПР.​

​,​​ мы используем абсолютные​​ из представленных выше​
​ двумерный поиск. Познакомьтесь​ значения. Не забудьте​ клиентов (Customer Name),​

​(Product). Не забывайте,​​mazayZR​ с клавиатуры не​
​в списке:​ оперативность, почти все​ ваш взгляд, увязать​ функция ВПР. Она​ но с типом​ а не позиции​ «яблоки» содержится во​
​К началу страницы​TX_Sales​ ссылки, чтобы избежать​ методов Вы ни​ с возможными вариантами​
​ нажать​ а в другом​ что объединенный столбец​: для текстовых моя​ надо. Легко сообразить,​Жмем​

​ подходит.​​ эти данные с​
​ игнорирует все пустые​​ сопоставления = -1.​ в искомом диапазоне,​ второй ячейке диапазона​Для выполнения этой задачи​и так далее.​ изменения искомого значения​ выбрали, результат двумерного​ и выберите наиболее​
​Ctrl+Shift+Enter​ – товары (Product),​ должен быть всегда​
​ подойдет​​ что этот способ​ОК​_Boroda_​
​ фактически находящимся товаром​

​ наборы данных элементов.​​ В этом случае​

​ можно записать следующую​​A9:A20А9​ используются функции СМЕЩ​ Как видите, во​
​ при копировании формулы​ поиска будет одним​ подходящий.​
​, чтобы правильно ввести​ которые они купили.​ крайним левым в​vikttur​ (как и предыдущий)​ и вводим ее аргументы:​: Почти как у​
​ на складах?​ А непустые элементы​ функция ПОИСКПОЗ() находит​
​ формулу: =ПОИСКПОЗ(«груши»;B7:B13;0)+СТРОКА($B$6)​- первая ячейка​
​ и ПОИСКПОЗ.​ всех именах присутствует​ в другие ячейки.​
​ и тем же:​Вы можете использовать связку​ формулу массива.​
​ Попробуем найти 2-й,​ диапазоне поиска, поскольку​: Для разнообразия -​ легко масштабируется на​Диапазон​

​ Лены, но не​​Serge_007​ сопоставляются со значением​ наименьшее значение, которое​
​Если искомое значение не​ (предполагается, что в​​Примечание:​​ «_Sales».​​$D3​​Бывает так, что основная​

​ из функций​​Если Вам интересно понять,​
​ 3-й и 4-й​ именно левый столбец​ формула «не массива»​ три, четыре и​- это те​ совсем​
​: Всё можно. Нарисуйте​ ячейки C1, использованного​ больше либо равно​ обнаружено в списке,​ ней не содержится​ Данный метод целесообразно использовать​

​Функция​​– это ячейка​ таблица и таблица​ВПР​ как она работает,​

​ товары, купленные заданным​​ функция​ (для удобства рассмотрения​ т.д. условий без​

excelworld.ru

Поиск нужных данных в диапазоне

​ ячейки, которые мы​​=ПРОСМОТР(;-1/(A2&B2=Лист2!A$2:A$6&Лист2!B$2:B$6);Лист2!C$2:C$6)​​ как по-вашему будет​ в качестве первого​ чем искомое значение.​ то будет возвращено​ значение «яблоки»),​ при поиске данных​ДВССЫЛ​ с названием региона.​ поиска не имеют​(VLOOKUP) и​ давайте немного погрузимся​

​ клиентом.​ВПР​ — без проверки​ каких-либо ограничений.​ проверяем на выполнение​​А что значит​​ выглядеть результат.​​ критерия поискового запроса​​Функции ПОИСКПОЗ() и ИНДЕКС()​ значение ошибки #Н/Д.​А10​ в ежедневно обновляемом​соединяет значение в​

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

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

​Простейший способ – добавить​просматривает при поиске​

​ на #Н/Д):​

​В категории​​Критерия​​? «Почти» -​​ЗЫ И прикладывайте​​ (Дата). Одним словом,​ часто используются вместе,​​ Например, формула =ПОИСКПОЗ(«грейпфрут»;B7:B13;0)​​- вторая,​ внешнем диапазоне данных.​ столбце D и​ для столбца и​ столбца, и это​(MATCH), чтобы найти​IF($F$2=B2:B16,ROW(C2:C16)-1,»»)​ вспомогательный столбец перед​ значения.​=ВПР($A3;СМЕЩ($A$15;ПОИСКПОЗ(B$2;$B$16:$B$30;0);0;СЧЁТЕСЛИ($B$16:$B$30;B$2);3);3;ЛОЖЬ)​

​Базы данных (Database)​​. В нашем случае​​ это как?​​ файлы​​ таблица в памяти​ т.к. позволяют по​ вернет ошибку, т.к.​А11​​ Известна цена в​​ текстовую строку «_Sales»,​ относительную ссылку для​ мешает использовать обычную​

planetaexcel.ru

Поиск разных значений по двум критериям (Формулы/Formulas)

​ значение на пересечении​​ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»)​
​ столбцом​Итак, Вы добавляете вспомогательный​
​Alexstt​ можно найти функцию​ — это диапазон​ПАМ​xls​ проверена функцией ВПР​ найденной позиции в​ значения «грейпфрут» в​- третья и​ столбце B, но​ тем самым сообщая​ строки, поскольку планируем​ функцию​ полей​$F$2=B2:B16​Customer Name​ столбец в таблицу​: замечательный вариант без​БДСУММ (DSUM)​ с фамилиями менеджеров​: _Boroda_, Александр здравствуйте.​, а не​ с одним условием​ одном диапазоне вывести​
​ диапазоне ячеек​

​ т.д. (подсчет позиции​​ неизвестно, сколько строк​
​ВПР​
​ копировать формулу в​
​ВПР​

​Название продукта​​– сравниваем значение​
​и заполнить его​
​ и копируете по​

​ формул массива (ctrl+shift+enter)​​, которая тоже способна​​ продаж.​​ У меня формула​​xlsx​​ поиска. При положительном​ соответствующее значение из​B7:B13​

​ производится от верхней​​ данных возвратит сервер,​в какой таблице​ другие ячейки того​
​. Однако, существует ещё​
​(строка) и​
​ в ячейке F2​ именами клиентов с​

​ всем его ячейкам​​но данные в​ решить нашу задачу.​​Критерий​​ПРОСМОТР​- уважайте форумчан.​ результате сопоставления функция​ другого диапазона. Рассмотрим​нет.​ ячейки).​

​ а первый столбец​​ искать. Если в​ же столбца.​ одна таблица, которая​
​Месяц​ с каждым из​
​ номером повторения каждого​
​ формулу вида:​ таблице должны быть​

​ Нюанс состоит в​​- это то,​
​не получается, (мой​Finnik​
​ возвращает значение элемента​ пример.​

excelworld.ru

Найти и вернуть значение по двум критериям (Формулы/Formulas)

​В файле примера можно​​Функция ПОИСКПОЗ() возвращает позицию​ не отсортирован в​ ячейке D3 находится​FL_Sal​ не содержит интересующую​(столбец) рассматриваемого массива:​ значений диапазона B2:B16.​ имени, например,​=B2&C2​ отсортированы по столбцу​ том, что для​ что мы ищем​ Эксель не понимает​

​: Учел на будущее.​​ из третьего столбца​Найдем количество заданного товара​
​ найти применение функции​ искомого значения, а​ алфавитном порядке.​ значение «FL», формула​es​

​ нас информацию, но​​=VLOOKUP(«Lemons»,$A$2:$I$9,MATCH(«Mar»,$A$1:$I$1,0),FALSE)​ Если найдено совпадение,​John Doe1​. Если хочется, чтобы​ «Дата» — в​ работы этой функции​ в предыдущем указанном​
​ почему вначале простая​​Во вложении, на​ (выручка) условной таблицы.​ на определенном складе.​ при поиске в​ не само значение.​
​C1​ выполнит поиск в​и​
​ имеет общий столбец​=ВПР(«Lemons»;$A$2:$I$9;ПОИСКПОЗ(«Mar»;$A$1:$I$1;0);ЛОЖЬ)​

​ то выражение​​,​
​ строка была более​

​ формуле «$B$16:$B$30». в​​ необходимо создать на​

​ диапазоне. Разрешается использовать​​ точка с запятой)​ листе «Архангельск», в​ Это происходит потому,​​ Для этого используем​​ горизонтальном массиве.​ Например: ПОИСКПОЗ(«б»;{«а»;»б»;»в»;»б»};0) возвращает​ — это левая верхняя​ таблице​CA_Sales​ с основной таблицей​Формула выше – это​СТРОКА(C2:C16)-1​John Doe2​ читаемой, можно разделить​ противном случае не​ листе специальный диапазон​ символы * (звездочка)​ а КодИНДЕКС подходит​ ячейке W9 я​ что в третьем​ формулу​Поиск позиции можно производить​ число 2 -​ ячейка диапазона (также​FL_Sales​– названия таблиц​ и таблицей поиска.​ обычная функция​возвращает номер соответствующей​и т.д. Фокус​

​ объединенные значения пробелом:​​ все данные будут​
​ критериев - ячейки, содержащие​

​ и  ? (вопросительный​​ но не везде​

excelworld.ru

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

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

​ путем сложения ячеек​ аргументе указывается номер​

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

​=ИНДЕКС(B67:E71;ПОИСКПОЗ(A74;A67:A71;0);ПОИСКПОЗ(C74;B66:E66;0))​​ не только в​ относительную позицию буквы​ называемая начальной ячейкой).​

Способ 1. Функция СУММЕСЛИ, когда одно условие

​, если «CA» –​ (или именованных диапазонов),​Давайте разберем следующий пример.​ВПР​ строки (значение​ с нумерацией сделаем​=B2&» «&C2​ выведены.​ условия отбора — и​ знак) как маски​​_Boroda_​​ из листа «Склад»​​ столбца 3 из​​В файле примера, соответствующий​ диапазонах ячеек, но​ «б» в массиве​​Формула​​ в таблице​ в которых содержаться​​ У нас есть​​, которая ищет точное​

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

​-1​​ при помощи функции​​. После этого можно​

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

  • ​может кто подскажет​​ указать затем этот​ или символы подстановки.​: А конкретнее? С​​ отобразил необходимый результат.​​ которого берутся значения.​ столбец и строка​ и в массивах​ {«а»;»б»;»в»;»б»}. Позиция второй​
  • ​ПОИСКПОЗ(«Апельсины»;C2:C7;0)​​CA_Sales​ соответствующие отчеты о​ основная таблица (Main​ совпадение значения «Lemons»​позволяет не включать​COUNTIF​ использовать следующую формулу:​ вариант «ВПР по​ диапазон функции как​ Звездочка подменяет собой​ примером неполучания и​Нужно, чтобы ячейки​ Стоит отметить что​ выделены с помощью​ констант. Например, формула​ буквы «б» будет​ищет значение «Апельсины»​и так далее.​​ продажах. Вы, конечно​​ table) со столбцом​ в ячейках от​ строку заголовков). Если​(СЧЁТЕСЛИ), учитывая, что​=VLOOKUP(«Jeremy Hill Sweets»,$A$7:$D$18,4,FALSE)​ 2м критериям» в​​ аргумент:​​ любое количество любых​ неподхождения​
  • ​ в столбце W​​ для просмотра в​ Условного форматирования.​ =ПОИСКПОЗ(«груши»;{«яблоки»;»ГРУШИ»;»мандарины»};0) вернет значение​ проигнорирована, функция вернет​ в диапазоне C2:C7.​

Способ 2. Функция СУММЕСЛИМН, когда условий много

​Результат работы функций​ же, можете использовать​SKU (new)​ A2 до A9.​ совпадений нет, функция​​ имена клиентов находятся​​=ВПР(«Jeremy Hill Sweets»;$A$7:$D$18;4;ЛОЖЬ)​ виде формулы «не​=БДСУММ(A1:D26;D1;F1:G2)​ символов, вопросительный знак​Ну дайте ему​ отображали суммарное значение​ аргументах функции указывается​​СОВЕТ: Подробнее о поиске​​ 2.​ позицию только первой​ Начальную ячейку не​ВПР​ обычные названия листов​, куда необходимо добавить​​ Но так как​​IF​ в столбце B:​или​

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

​ массива», которая работоспособна​СердЖиГ​ — один любой​ вот так​ по артикулу с​​ целая таблица (во​​ позиций можно прочитать​​Если искомое значение точно​​ буквы. О том​ следует включать в​и​

​ и ссылки на​ столбец с соответствующими​ Вы не знаете,​(ЕСЛИ) возвращает пустую​=B2&COUNTIF($B$2:B2,B2)​=VLOOKUP(B1,$A$7:$D$18,4,FALSE)​ с не сортированными​: Всем Добрый день!​

Способ 3. Столбец-индикатор

​ символ. Так, например,​=ПРОСМОТР(2;1/(A2&B2=Лист2!A$2:A$6&Лист2!B$2:B$6);Лист2!C$2:C$6)​ разными аналитиками в​ втором аргументе), но​ в соответствующем разделе​ не известно, то​ как вернуть ВСЕ​ этот диапазон.​ДВССЫЛ​ диапазоны ячеек, например​ ценами из другой​ в каком именно​ строку.​

​=B2&СЧЁТЕСЛИ($B$2:B2;B2)​

​=ВПР(B1;$A$7:$D$18;4;ЛОЖЬ)​ списками​Уважаемые эксперты, к​ чтобы найти все​Хотя, что-то слабо​ конкретном регионе.​ сам поиск всегда​ сайта: Поиск позиции.​ с помощью подстановочных​ позиции искомого значения​1​будет следующий:​‘FL Sheet’!$A$3:$B$10​ таблицы. Кроме этого,​ столбце находятся продажи​Результатом функции​

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

Способ 4. Волшебная формула массива

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

​ читайте ниже в​

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

​ — это количество столбцов,​Если данные расположены в​, но именованные диапазоны​ у нас есть​​ за март, то​IF​​ использовать обычную функцию​B1​vikttur​ информацию по своему​ с фамилией из​ПАМ​: Почему Вы игнорируете​ столбцу в указанной​ и ИНДЕКС() можно​ поиск по шаблону,​ разделе Поиск позиций​ которое нужно отсчитать​ разных книгах Excel,​

Способ 4. Функция баз данных БДСУММ

​ гораздо удобнее.​​ 2 таблицы поиска.​​ не сможете задать​​(ЕСЛИ) окажется вот​​ВПР​содержит объединенное значение​: Это я тогда​ вопросу на этом​ пяти букв, можно​: Дал, вообще Н/д.​ сводную таблицу? Это​ таблицы.​ заменить функцию ВПР(),​ т.е. искомое_значение может​ ВСЕХ текстовых значений,​ справа от начальной​

​ то необходимо добавить​

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

planetaexcel.ru

ВПР по двум критериям

​Однако, когда таких таблиц​​ Первая (Lookup table​
​ номер столбца для​ такой горизонтальный массив:​, чтобы найти нужный​ аргумента​ любил СМЕЩ() :)​ сайте, поэтому прошу​
​ использовать критерий​Похоже что-то я​ работа как-раз для​Скачать пример функции ВПР​ об этом читайте​ содержать знаки шаблона:​ удовлетворяющих критерию.​ ячейки, чтобы получить​ имя книги перед​ много, функция​ 1) содержит обновленные​

​ третьего аргумента функции​{1,»»,3,»»,5,»»,»»,»»,»»,»»,»»,12,»»,»»,»»}​

​ заказ. Например:​​lookup_value​Сейчас — лучше​
​ помощи у вас.​?????​
​ делаю не так.​ неё.​ с несколькими условиями​ в статье о​

​ звездочку (*) и​

​ПОИСКПОЗискомое_значение просматриваемый_массив​​ столбец, из которого​ именованным диапазоном, например:​ЕСЛИ​

​ номера​​ВПР​ROW()-3​Находим​
​(искомое_значение), а​

​ так:​​Вопрос во вложенном​

​. А чтобы найти все​подумаю и напишу​Michael_S​ в Excel​ функции ВПР().​ знак вопроса (?).​; тип_сопоставления)​
​ возвращается значение. В​=VLOOKUP($D$2,INDIRECT($D3&»Workbook1!_Sales»),2,FALSE)​– это не​

​SKU (new)​​. Вместо этого используется​СТРОКА()-3​2-й​4​

​=ВПР($A3;ИНДЕКС($A$16:$C$30;ПОИСКПОЗ(B$2;$B$16:$B$30;);):ИНДЕКС($A$16:$C$30;ПОИСКПОЗ(B$2;$B$16:$B$30;)+СЧЁТЕСЛИ($B$16:$B$30;B$2)-1;);3;)​​ файле. Напишу, что​ продажи менеджеров, у​ с примером​: Как-то так, только​

​А из какого столбца​​Функция ВПР (Вертикальный ПРосмотр)​ Звездочка соответствует любой​Искомое_значение​ этом примере значение​
​=ВПР($D$2;ДВССЫЛ($D3&»Workbook1!_Sales»);2;ЛОЖЬ)​

​ лучшее решение. Вместо​и названия товаров,​ функция​

​Здесь функция​​товар, заказанный покупателем​
​– аргумент​При несортированном диапазоне​ речь пойдёт о​ которых фамилия начинается​zegor​ на нормальных (больших)​
​ брать возвращаемое значение​ ищет по таблице​ последовательности знаков, знак​
​- значение, используемое​ возвращается из столбца​Если функция​
​ нее можно использовать​
​ а вторая (Lookup​ПОИСКПОЗ​

​ROW​​Dan Brown​col_index_num​ без обработки массивов​ ВПР, который ищет​ на букву «П»,​: Здравствуйте. С помощью​ файлах тормозить будет.​

​ указывается уже в​ с данными и​ вопроса соответствует любому​ при поиске значения​ D​ДВССЫЛ​ функцию​

​ table 2) –​​, чтобы определить этот​
​(СТРОКА) действует как​:​(номер_столбца), т.е. номер​

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

​ СУММЕСЛИМН у меня​​Как использовать функцию​ третьем аргументе.​ на основе критериев​ одиночному знаку.​

​ в​Продажи​

​ссылается на другую​​ДВССЫЛ​ названия товаров и​

​ столбец.​​ дополнительный счётчик. Так​=VLOOKUP(«Dan Brown2»,$A$2:$C$16,3,FALSE)​ столбца, содержащего данные,​Alexstt​ (к сожалению, я​
​ «В» — критерий​

​ получается найти искомое​​ВПР (VLOOKUP)​Число 0 в последнем​
​ запроса поиска, возвращает​Предположим, что имеется перечень​просматриваемом_массивеИскомое_значение​.​ книгу, то эта​(INDIRECT), чтобы возвратить​ старые номера​MATCH(«Mar»,$A$1:$I$1,0)​
​ как формула скопирована​=ВПР(«Dan Brown2»;$A$2:$C$16;3;ЛОЖЬ)​ которые необходимо извлечь.​: Спасибо​ такого не нашёл),​П*В​ только если указывать​
​для поиска и​

​ аргументе функции указывает​​ соответствующее значение с​ товаров и мы​
​может быть значением​К началу страницы​
​ книга должна быть​

​ нужный диапазон поиска.​SKU (old)​ПОИСКПОЗ(«Mar»;$A$1:$I$1;0)​

​ в ячейки F4:F9,​​Находим​

planetaexcel.ru

​Если Вам необходимо обновить​

Блог о программе Microsoft Excel: приемы, хитрости, секреты, трюки

Четыре способа использования ВПР с несколькими условиями

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

Итак, мы с вами рассмотрим четыре варианта создания подстановочной функции с двумя условиями:

  1. Использование дополнительной колонки
  2. Использование функции ВЫБОР для создания новой таблицы просмотра
  3. Использование функций ИНДЕКС и ПОИСКПОЗ
  4. Использование функции СУММПРОИЗВ

Ну а начнем мы с вами с самого простого.

Использование дополнительной колонки

В большинстве случаев сложные проблемы становятся проще и более управляемыми, если их разбить на маленькие кусочки. Тоже самое касается при построении формул в Excel.

Рассмотрим классический пример. У нас имеется таблица с продажами по месяцам и городам. И нам необходимо определить значение продаж, соответствующее двум условиям: месяц – Февраль и город – Самара.

Использование функции ВПР в классическом виде нам не поможет, так как она сможет вернуть значение, соответствующее только одному условию. Из положения нам поможет выйти дополнительный столбец, в котором мы объединим значения столбцов Месяц и Город. Для этого в ячейке А2 прописываем формулу =B2&C2 и протягиваем данную формулу до ячейки А13. Теперь мы сможем использовать значения столбца А, чтобы вернуть необходимое значение. Прописываем в ячейке G3 формулу:

Данная формула объединяет два условия ячеек G1 и G2 в одну строку и просматривает его в столбце А. После того, как нужное условие было обнаружено, формула возвращает значение с четвертого столбца таблицы A1:D13, т.е. столбца Продажи.

Использование функции ВЫБОР для создания новой таблицы просмотра

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

Использование функции ВЫБОР подразумевает создание новой таблицы для просмотра, в котором значения столбцов Месяц и Город уже объединены. Наша формула будет выглядеть следующим образом:

Основной момент данной формулы заключается в части ВЫБОР(<1;2>;B2:B13&C2:C13;D2:D13), который делает две вещи:

  1. Объединяет значения столбцов Месяц и Город в один массив: ЯнвМосква, ФевМосква …
  2. Объединяет два массива в таблицу, состоящую из двух столбцов.

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

Теперь формула стала более понятной.

ВАЖНО: Так как мы использовали формулу массива, по окончании ввода формулы нажмите Ctrl+Shift+Enter, чтобы дать знать программе о наших намерениях. После нажатия данной комбинации клавиш, программа автоматически установит фигурные скобки в начале и в конце формулы.

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

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

Формула будет выглядеть следующим образом.

Давайте разберем, что делает каждая часть данной формулы.

Сначала рассмотрим функцию ПОИСКПОЗ(1;(B2:B13=G1)*(C2:C13=G2);0). В данном случае последовательно сравнивается значение ячейки G1 с каждым значением ячеек диапазона B2:B13 и возвращается ИСТИНА, если значения совпадают и ЛОЖЬ, если нет. Такое же сравнение производится со значением ячейки G2 и диапазоном C2:C13. Далее мы сравниваем оба эти массива, состоящих из ИСТИНА и ЛОЖЬ. Комбинация ИСТИНА * ИСТИНА дает нам результат 1 (ИСТИНА). Давайте посмотрим на картинку ниже, которая поможет объяснить принцип работы более наглядно.

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

Использование СУММПРОИЗВ

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

Принцип работы данной формулы схож с принципом работы предыдущего подхода. Создается виртуальная таблица, в которой сравниваются значения ячеек G1 и G2 с диапазонами B2:B13 и С2:С13 соответственно. Далее оба этих массива сопоставляются и получается массив из единиц и нулей, где единица присваивается той строке, в которой оба условия совпали. Далее данный виртуальный массив перемножается на диапазон D2:D13. Так как в нашем виртуальном массиве будет только одна единица в шестой строке, формула вернёт результат 189.

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

Чтобы понять, как работает данная формула, рекомендую прочитать статью о функции СУММПРОИЗ.

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

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

Вам также могут быть интересны следующие статьи

10 комментариев

А я пользовался только одной — самой простой.
Автору спасибо за обзор! Очень часто приходится пользоваться в работе этой функцией.

Поиск по нескольким критериям в таблицах Excel

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

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

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

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

Для этой операции подойдёт формула:

В обязательном порядке формулу необходимо вносить не просто так, а как формулу массива, о чём свидетельствуют фигурные скобки. Произвести это возможно с помощью комбинации горячих клавиш Shift+Ctrl+Enter. Как же собственно работает формула? Рассмотрим поподробнее… Используемый «амперсанд» в функции ПОИСКПОЗ соединяет нужные значения «Нагаев А.В.» и «Апельсин» в одно значение «Нагаев А.В.Апельсин» и производит просмотр массива данных таблицы «B2:B6» и «C2:C6», которые предварительно были условно сцеплены формулой, типа «Нагаев А.В.Банан», «Сидоров А.С.Лимон» и т.д.

Следующим этапом после нахождения функцией ПОИСКПОЗ номера строки с необходимыми условиями, передается функции ИНДЕКС, которая с диапазона «D2:D6» вытянет нужную сумму по указанному адресу номера строки.

Ну, вот результат и готов!

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

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

Не забудьте подкинуть автору на кофе…

Поиск в excel по двум условиям

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

У меня будет таблица, состоящая из Color и Type of wire . Формула, сравнивая эти значения, должна определять Number . Номеров около тысячи, поэтому думаю, как реализовать поиск по этому условию.

Можно сцепить эти колонки и получить уникальное значение и по нему осуществлять поиск. сцепить(COLOR;Type of wire) получаем BKFLY 10.00 QMM уникальное зачение после переместив колонку Number в право от уникального значения осуществляем ВПР(искомое значение то есть BKFLY 10.00 QMM;диапазон поиска;2;0)

Так выглядит формула:
=ВПР(С1;A1:B5;2;0)

Формула массива вводится тремя клавишами: Ctrl+Shift+Enter (формула должна обрамиться фигурными скобками). С помощью функций ЕСЛИ исключаются лишние вычисления.

Если предварительно объединить значения, формула упрощается и не требует «массивного» ввода:

А если сцепку Color&Type переместить левее таблицы (в столбец A, сама таблица сместится на один столбец вправо), можно применить формулу с единственной функцией ВПР:

Функция пользователя (UDF)

Функция размещается в общем модуле. Макросы должны быть разрешены. В ячейку листа:

где F2 и G2 — ячейки выбора прараметров.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Функция ВПР с несколькими условиями критериев поиска в Excel

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

    Работа функции ВПР по нескольким критериям

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

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

    1. – Дата сдачи выручки в кассу.
    2. – Фамилия торгового представителя.

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

    1. В ячейке С1 введите первое значение для первого критерия поискового запроса. Например, дата: 22.03.2017.
    2. В ячейку C2 введите фамилию торгового представителя (например, Новиков). Это значение будет использоваться в качестве второго аргумента поискового запроса.
    3. В ячейке C3 мы будем получать результат поиска, для этого там следует ввести формулу:
    4. После ввода формулы для подтверждения нажмите комбинацию горячих клавиш CTRL+SHIFT+Enter, так как формула должна быть выполнена в массиве.

    Результат поиска в таблице по двум условиям:

    Найдена сумма выручки конкретного торгового представителя на конкретную дату.

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

    Первым аргументом функции =ВПР() является первым условием для поиска значения по таблице отчета выручки торговых представителей. Во втором аргументе находится виртуальная таблица создана в результате массивного вычисления логической функцией =ЕСЛИ(). Каждая фамилия в диапазоне ячеек B6:B12 сравнивается со значением в ячейке C2. Таким образом в памяти создается условный массив данных с элементами значений ИСТИНА и ЛОЖЬ.

    Потом благодаря формуле, в памяти программы каждый истинный элемент заменяется на 3-х элементный набор данных:

    1. элемент – Дата.
    2. элемент – Фамилия.
    3. элемент – Выручка.

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

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

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

    поиск строки по двум значениям

    Sashagor1982

    Дата: Четверг, 18.02.2016, 19:48 |
    Сообщение № 1

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 275


    Репутация:

    -6

    ±

    Замечаний:
    0% ±


    Excel 2007

    Здравствуйте форумчане. Подскажите пожалуйста можно ли как-нибудь без обычного перебора циклом найти на листе строку и поместить ее в массив если значение в столбце d равно переменной numer, а в столбце w переменной podr. При этом содержимое листа никак не должно изменяться.
    [vba]

    Код

    set numer=»5″, podr=»упр.»

    [/vba]
    На листе имеется только одна строка отвечающая данным требованиям. Заранее спасибо,

    Сообщение отредактировал Sashagor1982Четверг, 18.02.2016, 19:49

     

    Ответить

    nilem

    Дата: Четверг, 18.02.2016, 21:24 |
    Сообщение № 2

    Группа: Авторы

    Ранг: Старожил

    Сообщений: 1612


    Репутация:

    563

    ±

    Замечаний:
    0% ±


    Excel 2013, 2016

    наверное, только если Find
    Find — Find Next по столбцу d и проверять значение в ст w


    Яндекс.Деньги 4100159601573

     

    Ответить

    Апострофф

    Дата: Четверг, 18.02.2016, 22:06 |
    Сообщение № 3

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 416


    Репутация:

    117

    ±

    Замечаний:
    0% ±


    Excel 1997

    Или совсем без цикла
    [vba]

    Код

    Sub Макрос3()
        Cells.AutoFilter Field:=1, Criteria1:=»5″
        Cells.AutoFilter Field:=20, Criteria1:=»упр.»
        Dim v
        ActiveSheet.UsedRange.Copy
        Sheets.Add
        ActiveSheet.Paste
        v = ActiveSheet.UsedRange.Rows(2).Value
        Application.DisplayAlerts = False
        ActiveSheet.Delete
        Application.DisplayAlerts = True
        Cells.AutoFilter
    End Sub

    [/vba]

     

    Ответить

    Sashagor1982

    Дата: Четверг, 18.02.2016, 22:11 |
    Сообщение № 4

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 275


    Репутация:

    -6

    ±

    Замечаний:
    0% ±


    Excel 2007

    Да, совсем без цикла наверное не получится. Просто с циклом for…next слишком долго получается.

     

    Ответить

    Апострофф

    Дата: Четверг, 18.02.2016, 22:15 |
    Сообщение № 5

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 416


    Репутация:

    117

    ±

    Замечаний:
    0% ±


    Excel 1997

     

    Ответить

    Sashagor1982

    Дата: Четверг, 18.02.2016, 22:18 |
    Сообщение № 6

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 275


    Репутация:

    -6

    ±

    Замечаний:
    0% ±


    Excel 2007

    С фильтрами не подойдет, т.к работать должно с другого листа.

     

    Ответить

    Апострофф

    Дата: Четверг, 18.02.2016, 22:25 |
    Сообщение № 7

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 416


    Репутация:

    117

    ±

    Замечаний:
    0% ±


    Excel 1997

    не подойдет, т.к работать должно с другого листа

    Это действительно проблема :'(

    Извините, что занял своим бредом Ваше драгоценное время.

    Сообщение отредактировал АпостроффЧетверг, 18.02.2016, 23:03

     

    Ответить

    Sashagor1982

    Дата: Четверг, 18.02.2016, 23:20 |
    Сообщение № 8

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 275


    Репутация:

    -6

    ±

    Замечаний:
    0% ±


    Excel 2007

    С совпадением двух значений только одна.

     

    Ответить

    Sashagor1982

    Дата: Пятница, 19.02.2016, 06:49 |
    Сообщение № 9

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 275


    Репутация:

    -6

    ±

    Замечаний:
    0% ±


    Excel 2007

    Разное может быть, так 2000.

     

    Ответить

    Апострофф

    Дата: Пятница, 19.02.2016, 07:39 |
    Сообщение № 10

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 416


    Репутация:

    117

    ±

    Замечаний:
    0% ±


    Excel 1997

    С фильтрами не подойдет, т.к работать должно с другого листа.

    Разрешите ещё раз побеспокоить —
    [vba]

    Код

    Function Sashagor(WS As Worksheet, Field, Criteria)
    For i = 0 To UBound(Field)
      WS.Cells.AutoFilter Field(i), Criteria(i)
    Next
    Sashagor = WS.AutoFilter.Range.SpecialCells(xlCellTypeVisible).Areas(2).Value
    WS.Cells.AutoFilter
    End Function

    Sub Example()
    c1 = [d:d].Column: c2 = [w:w].Column
    numer = «5»: podr = «упр.»
    v = Sashagor(Worksheets(«Лист1»), Array(c1, c2), Array(numer, podr))
    MsgBox v(1, 4) & » | » & v(1, 23)
    End Sub

    [/vba]Что на сей раз не так?

     

    Ответить

    Sashagor1982

    Дата: Пятница, 19.02.2016, 09:20 |
    Сообщение № 11

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 275


    Репутация:

    -6

    ±

    Замечаний:
    0% ±


    Excel 2007

    Пустые значения выдает.

     

    Ответить

    Апострофф

    Дата: Пятница, 19.02.2016, 09:23 |
    Сообщение № 12

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 416


    Репутация:

    117

    ±

    Замечаний:
    0% ±


    Excel 1997

    Пример приведите (в виде файла), пожалуйста.

     

    Ответить

    Manyasha

    Дата: Пятница, 19.02.2016, 10:51 |
    Сообщение № 13

    Группа: Модераторы

    Ранг: Старожил

    Сообщений: 2198


    Репутация:

    898

    ±

    Замечаний:
    0% ±


    Excel 2010, 2016

    Sashagor1982,

    с циклом for…next слишком долго

    а если сначала в массив все?
    [vba]

    Код

    Sub еее()
        numer = 5
        podr = «упр.»
        With Sheets(1) ‘указать свой лист
            lr = .Cells(Rows.Count, «d»).End(xlUp).Row
            Dim rng, arr(), i&, k&
            rng = .Range(«d1:w» & lr).Value
            For i = 1 To lr
                If rng(i, 1) = numer And rng(i, UBound(rng, 2)) = podr Then
                    ReDim Preserve arr(k)
                    arr(k) = Intersect(.Rows(i), .UsedRange).Value: k = k + 1
                End If
            Next i
        End With
        ‘Вывод на 2-й лист
        For i = 0 To UBound(arr)
            Sheets(2).Cells(i + 1, 1).Resize(, UBound(arr(i), 2)) = arr(i)
        Next i
    End Sub

    [/vba]


    ЯД: 410013299366744 WM: R193491431804

     

    Ответить

    _Boroda_

    Дата: Пятница, 19.02.2016, 10:53 |
    Сообщение № 14

    Группа: Модераторы

    Ранг: Местный житель

    Сообщений: 16618


    Репутация:

    6465

    ±

    Замечаний:
    0% ±


    2003; 2007; 2010; 2013 RUS

    А вот такой вариант? Хоть и с циклом, но на 20 000 работает моментально
    [vba]

    Код

    Sub tt()
        ar1 = Range(«D2:D20000»)
        ar2 = Range(«W2:W20000»)
        For i = LBound(ar1) To UBound(ar1)
            ar1(i, 1) = ar1(i, 1) & ar2(i, 1)
        Next i
        n_ = WorksheetFunction.Match(«5упр.», ar1, 0) + 1
    End Sub

    [/vba]
    Дает номер строки. Что Вы с этой строкой потом делать хотите — я не знаю.

    Во, Маняша тоже с массивом поиграться решила.


    Скажи мне, кудесник, любимец ба’гов…
    Платная помощь:
    Boroda_Excel@mail.ru
    Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

     

    Ответить

    Sashagor1982

    Дата: Пятница, 19.02.2016, 13:39 |
    Сообщение № 15

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 275


    Репутация:

    -6

    ±

    Замечаний:
    0% ±


    Excel 2007

    Выдает ошибку 1004 невможно получить свойство Match….
    [moder]Вы бы пример согласно правил приложили бы.
    Уже давно бы решили свой вопрос.[/moder]

    Сообщение отредактировал SLAVICKПятница, 19.02.2016, 14:09

     

    Ответить

    StoTisteg

    Дата: Воскресенье, 21.02.2016, 01:18 |
    Сообщение № 16

    Группа: Авторы

    Ранг: Старожил

    Сообщений: 1161


    Репутация:

    103

    ±

    Замечаний:
    0% ±


    Excel 2010

    А что вообще нужно на выходе? Если сама строка, то что-то мне подсказывает, что AdvancedFilter спасёт отца русской демократии.


    Интуитивно понятный код — это когда интуитивно понятно, что это код.

     

    Ответить

    StoTisteg

    Дата: Воскресенье, 21.02.2016, 01:43 |
    Сообщение № 17

    Группа: Авторы

    Ранг: Старожил

    Сообщений: 1161


    Репутация:

    103

    ±

    Замечаний:
    0% ±


    Excel 2010

    [vba]

    Код

        Dim col, rws As Integer

            col = ActiveSheet.UsedRange.Columns.Count
        rws = ActiveSheet.UsedRange.Rows.Count
        Cells(1, 4).Copy Destination:=Cells(1, col + 2)
        Cells(2, col + 2).Value = numer
        Cells(1, 23).Copy Destination:=Cells(1, col + 3)
        Cells(2, col + 3).Value = podr
        Range(Cells(1, 1), Cells(rws, col)).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range(Cells(1, col + 2), Cells(2, col + 3)), CopyToRange:=Cells(1, col + 5), Unique:=False

    [/vba]
    В столбцах col+5 — 2*col+5 имеете искомое (вместе с заголовками), с коим можете делать что угодно.


    Интуитивно понятный код — это когда интуитивно понятно, что это код.

     

    Ответить

    StoTisteg

    Дата: Воскресенье, 21.02.2016, 02:01 |
    Сообщение № 18

    Группа: Авторы

    Ранг: Старожил

    Сообщений: 1161


    Репутация:

    103

    ±

    Замечаний:
    0% ±


    Excel 2010

    Например, скопипастить на новый лист:

    [vba]

    Код

        Dim list As String

        list = ActiveSheet.Name
        Sheets.Add After:=Sheets(Sheets.Count)
        Worksheets(list).Range(Cells(1, col + 5), Cells(Cells(Rows.Count, col + 8).End(xlUp).Row, 2 * col + 5)).Copy Destination:=Cells(1, 1)

    [/vba]


    Интуитивно понятный код — это когда интуитивно понятно, что это код.

     

    Ответить

    StoTisteg

    Дата: Воскресенье, 21.02.2016, 16:08 |
    Сообщение № 19

    Группа: Авторы

    Ранг: Старожил

    Сообщений: 1161


    Репутация:

    103

    ±

    Замечаний:
    0% ±


    Excel 2010

    А лучше всего сначала перенести, потом фильтровать:
    [vba]

    Код

        Dim list As String
        Dim col, rws, i As Integer

        list = ActiveSheet.Name
        Sheets.Add After:=Sheets(Sheets.Count)
        Worksheets(list).Cells.Copy Destination:=ActiveSheet.Cells
        col = ActiveSheet.UsedRange.Columns.Count
        rws = ActiveSheet.UsedRange.Rows.Count
        Cells(1, 4).Copy Destination:=Cells(1, col + 2)
        Cells(2, col + 2).Value = numer
        Cells(1, 23).Copy Destination:=Cells(1, col + 3)
        Cells(2, col + 3).Value = podr
        Range(Cells(1, 1), Cells(rws, col)).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range(Cells(1, col + 2), Cells(2, col + 3)), CopyToRange:=Cells(1, col + 5), Unique:=False
        For i = 1 To col + 4
            Columns(1).Delete
        Next i

    [/vba]


    Интуитивно понятный код — это когда интуитивно понятно, что это код.

     

    Ответить

    Sashagor1982

    Дата: Воскресенье, 21.02.2016, 17:30 |
    Сообщение № 20

    Группа: Проверенные

    Ранг: Обитатель

    Сообщений: 275


    Репутация:

    -6

    ±

    Замечаний:
    0% ±


    Excel 2007

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

     

    Ответить

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

    Описание

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

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

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

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

    A

    B

    C

    D

    E

    1

    Имя

    Правитель

    Возраст

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

    2

    Анри

    501

    Плот

    Иванов

    3

    Стэн

    201

    19

    4

    Иванов

    101

    максималь

    5

    Ларри

    301

    составляет

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

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

    Термин

    Определение

    Пример

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

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

    A2: C5

    Превышающ

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

    E2

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

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

    A2: A5

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

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

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

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

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

    C2: C5

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

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

    ЛОЖЬ

    Топ_целл

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

    Оффсет_кол

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

    Функции

    LOOKUP ()

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

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

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


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

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

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

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

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

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

    ВПР ()

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

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

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

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

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

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

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

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

    INDEX () и MATCH ()

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

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

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

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


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

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

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

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

    СМЕЩ () и MATCH ()

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

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

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

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

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

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

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

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

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

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

    Рис. 122.1. В таблице выполняется поиск с использованием информации из двух столбцов (D и Е)

    Рис. 122.1. В таблице выполняется поиск с использованием информации из двух столбцов (D и Е)

    Лист использует именованные диапазоны, как показано в табл. 122.1.

    Диапазон Название
    F2:F12 Код
    B1 Марка
    B2 Модель
    D2:D12 Диапазон1
    E2:E12 Диапазон2

    Следующая формула массива отображает соответствующий код для марки и модели автомобиля:
    =ИНДЕКС(Код;ПОИСКПОЗ(Марка&Модель;Диапазон1&Диапазон2;0))

    При вводе формулы массива нажмите Ctrl+Shift+Enter (а не просто Enter).

    Формула объединяет содержимое диапазонов Марка и Модель, а затем находит этот текст в массиве, состоящем из соответствующего объединенного текста, в диапазонах Диапазон1 и Диапазон2.

    Альтернативный подход заключается в создании новой таблицы поиска из двух столбцов, как показано на рис. 122.2. Таблица содержит ту же информацию, что и исходная таблица, но столбец Н включает объединенные данные из столбцов D и Е.

    Рис. 122.2. Избегайте поиска по двум столбцам, комбинируя два столбца в один

    Рис. 122.2. Избегайте поиска по двум столбцам, комбинируя два столбца в один

    После создания новой таблицы вы можете использовать простую формулу для выполнения поиска:
    =ВПР(Марка&Модель;H2:I12;2)

    Содержание материала

    1. Пример функции ПОИСКПОЗ в Excel без функции ИНДЕКС
    2. Видео
    3. Функция ВПР с несколькими условиями критериев поиска в Excel
    4. Сочетание с функцией ПОИСКПОЗ
    5. Функция ПОИСКПОЗ в Excel – синтаксис и использование
    6. Функция ПОИСКПОЗ в Excel – Пример использования функции ПОИСКПОЗ в Excel
    7. Особенности функции ПОИСКПОЗ Excel
    8. Примеры
    9. Функция ИНДЕКС для массивов
    10. Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию
    11. Поиск позиции в массивах с текстовыми значениями
    12. Поиск значений с помощью функций ВПР, ИНДЕКС и ПОИСКПОЗ
    13. Использование функции ГПР
    14. Одновременное использование функций ИНДЕКС и ПОИСКПОЗ
    15. Еще о функциях поиска
    16. Функция ИНДЕКС в Excel
    17. Правильное написание
    18. Пример использования функции ПОИСКПОЗ

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

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

    Видео

    Функция ВПР с несколькими условиями критериев поиска в Excel

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

    Сочетание с функцией ПОИСКПОЗ

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

    Оператор ПОИСКПОЗ возвращает положение указанного значения в выделенном диапазоне ячеек.

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

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

    Давайте “пробежимся” по аргементам функции:

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

    Использование ПОИСКПОЗ позволяет автоматически заполнить аргументы “Номер строки” и/или “Номер столбца” функции ИНДЕКС.

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

    Наша задача – используя ИНДЕКС и ПОИСКПОЗ добавить

    Наша задача – используя ИНДЕКС и ПОИСКПОЗ добавить в ячейку со стоимостью (G2) такую функцию, которая будет выводить конкретное значение в зависимости от того, что будет указано в ячейке с наименованием рядом.

    1. Для начала, заполняем ячейку с наименованием. Можно просто скопировать и вставить значение из основной таблицы.Теперь встаем в ячейку, в которой планируем отобра
    2. Теперь встаем в ячейку, в которой планируем отображать результат, и жмем кнопку “Вставить функцию” (fx).Выбираем функцию ИНДЕКС из списка операторов.
    3. Выбираем функцию ИНДЕКС из списка операторов.Выбираем список аргументов для массива и жмем OK.
    4. Выбираем список аргументов для массива и жмем OK.Приступаем к заполнению аргументов:в значении “Мас
    5. Приступаем к заполнению аргументов:
    6. Таким образом, мы получаем в выбранной ячейке нужный результат, а именно цену указанной рядом позиции.Так как информация “подтягивается” с помощью форму
    7. Так как информация “подтягивается” с помощью формулы, изменение цены соответствующей позиции в основной таблице немедленно отразится в данной ячейке.Также, если мы изменим наименование позиции во всп
    8. Также, если мы изменим наименование позиции во вспомогательной таблице, ее цена автоматически будет заполнена из основной.

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

    Функция ПОИСКПОЗ в Excel ищет заданное значение в диапазоне ячеек и возвращает относительное положение этого значения.

    Синтаксис формулы ПОИСКПОЗ выглядит следующим образом:

    Искомое_значение (обязательный аргумент) – значение, которое вы хотите найти. Это может быть числовое, текстовое или логическое значение, а также ссылка на ячейку.

    Просматриваемый_массив (обязательный аргумент) – диапазон ячеек для поиска.

    Тип_сопоставления (необязательный аргумент) – определяет тип соответствия. Это может быть одно из следующих значений: 1, 0, -1.

    • 1 или отсутствует (по умолчанию) – находит наибольшее значение в массиве, которое меньше или равно значению поиска. Массив поиска должен быть отсортирован в порядке возрастания, от самого маленького до большого или от A до Z.
    • 0 – находит первое значение в массиве, которое в точности равно значению поиска. Сортировка не требуется.
    • -1 – находит наименьшее значение в массиве, которое больше или равно значению поиска. Массив поиска должен быть отсортирован в порядке убывания, от самого большого до самого маленького или от Z до A.

    Чтобы лучше разобраться в данной функции, давайте напишем простую формулу ПОИСКПОЗ, основанную на следующих данных: фамилии студентов в столбце A и их баллы по экзаменам в столбце B, отсортированные от самых высоких до самых низких. Чтобы узнать, где среди других находится конкретный студент (например, студентка Виноградова), используйте эту простую формулу:

    =ПОИСКПОЗ(E1; A2:A8; 0)

    При желании вы можете поместить значение поиска в ячейку (E1 в данном примере) и сослаться на эту ячейку в формуле ПОИСКПОЗ Excel:

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

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

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

    Особенности функции ПОИСКПОЗ Excel

    Как вы только что видели, использовать ПОИСКПОЗ в Excel легко. Однако, как и у любой функции Excel, у нее есть несколько особенностей, о которых следует знать:

    • Функция ПОИСКПОЗ возвращает относительное положение значения поиска в массиве, а не самого значения.
    • ПОИСКПОЗ не зависит от регистра , что означает, что она не различает строчные и прописные символы при работе с текстовыми значениями.
    • Если массив поиска содержит несколько вхождений искомого значения, возвращается позиция первого значения.
    • Если искомое значение не найдено в просматриваемом массиве, возвращается ошибка #Н/Д.

    Примеры

    Формула =ПОИСК(«к»;»Первый канал») вернет 8, т.к. буква к находится на 8-й позиции слева.

    Пусть в ячейке А2 введена строка Первый канал — лучший . Формула =ПОИСК(СИМВОЛ(32);A2) вернет 7, т.к. символ пробела (код 32) находится на 7-й позиции.

    Формула =ПОИСК(«#. #»;»Артикул #123# ID») будет искать в строке » Артикул #123# ID » последовательность из 5 символов, которая начинается и заканчивается на знак #.

    Чтобы найти позицию второго вхождения буквы «а» в строке «мама мыла раму» используйте формулу =ПОИСК(«а»;»мама мыла раму»;ПОИСК(«а»;»мама мыла раму»)+1). Чтобы определить есть ли третье вхождение буквы «м» в строке «мама мыла раму» используйте формулу =ЕСЛИ(ДЛСТР(ПОДСТАВИТЬ(«мама мыла раму»;»м»;»»;3))=ДЛСТР(«мама мыла раму»);»Нет третьего вхождения м»;»Есть третье вхождение м»)

    Формула =ПОИСК(«клад?»;»докладная») вернет 3, т.е. в слове «докладная» содержится слово из 5 букв, первые 4 из которых клад (начиная с третьей буквы слова докладная ).

    Функция ИНДЕКС для массивов

    Допустим, у нас есть таблица с наименованиями товаров, их ценой, количеством и итоговой суммой.

    Наша задача – в заранее выбранной ячейке отобразит

    Наша задача – в заранее выбранной ячейке отобразить наименование 5-ой позиции в списке.

    1. Встаем в ячейку, куда планируем вывести требуемые данные. Затем жмем кнопку “Вставить функцию” (fx).В открывшемся окне вставки функции выбираем катего
    2. В открывшемся окне вставки функции выбираем категорию “Ссылки и массивы” (или “Полный алфавитный перечень”), отмечаем строку “ИНДЕКС” и жмем OK.Далее программа предложит на выбор один из двух на
    3. Далее программа предложит на выбор один из двух наборов аргументов, о которых мы писали выше (для массива или для ссылок). В рамках поставленной задачи выбираем первый вариант и жмем OK.Теперь нам нужно заполнить аргументы функции:в зна
    4. Теперь нам нужно заполнить аргументы функции:
    5. В выбранной ячейке отобразится результат согласно заданным условиям отбора в аргументах функции. В нашем случае – это содержимое ячейки, находящейся в 1-ом столбце и 5-ой строке выделенного массива.

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

    1. В окне аргументов функции в поле “Массив” выделяем только ячейки первого столбца. Указываем номер строки – 5, а номер столбца, соответственно, остается незаполненным, так как в выделенном нами массиве он только один.Нажав кнопку OK мы получим тот же результат в ячей
    2. Нажав кнопку OK мы получим тот же результат в ячейке таблицы, хотя аргументы функции и ее формула будут отличаться от первоначального варианта.

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

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

    Рассмотрим список с повторяющимися значениями в диапазоне B66:B72 . Найдем все позиции значения Груши .

    Значение Груши находятся в позициях 2 и 5 списка. С помощью формулы массива

    =(«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65))

    можно найти все эти позиции. Для этого необходимо выделить несколько ячеек (расположенных вертикально), в Строке формул ввести вышеуказанную формулу и нажать CTRL+SHIFT+ENTER . В позициях, в которых есть значение Груши будет выведено соответствующее значение позиции, в остальных ячейках быдет выведен 0.

    C помощью другой формулы массива

    =НАИБОЛЬШИЙ((«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65));СТРОКА()-СТРОКА($D$65))

    можно отсортировать найденные позиции, чтобы номера найденных позиций отображались в первых ячейках (см. файл примера ).

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

    Произведем поиск позиции в НЕ сортированном списке текстовых значений (диапазон B7:B13 )

       Столбец       Позиция      приведен для наглядн

    Столбец Позиция приведен для наглядности и не влияет на вычисления.

    Формула для поиска позиции значения Груши: =ПОИСКПОЗ(«груши»;B7:B13;0)

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

    Чтобы найти номер строки, а не позиции в искомом диапазоне, можно записать следующую формулу: =ПОИСКПОЗ(«груши»;B7:B13;0)+СТРОКА($B$6)

    Если искомое значение не обнаружено в списке, то будет возвращено значение ошибки #Н/Д. Например, формула =ПОИСКПОЗ(«грейпфрут»;B7:B13;0) вернет ошибку, т.к. значения «грейпфрут» в диапазоне ячеек B7:B13 нет.

    В файле примера можно найти применение функции при поиске в горизонтальном массиве.

    Поиск значений с помощью функций ВПР, ИНДЕКС и ПОИСКПОЗ

    ​ искомое слово. Думаю,​ результат.​ нужно из нескольких​ двумя столбцами как​ как вспомогательную в​ указанном диапазоне.​Формула ищет в C2:C10​(ПОИСКПОЗ) использована для​

    ​=ПОИСКПОЗ(D5;{«Jan»;»Feb»;»Mar»};0)​(ИНДЕКС), чтобы найти​

    ​ численность населения Воронежа​

    ​=ВПР​

    • ​41​находит первое значение,​возвращает значение 2, поскольку​ ошибку. С помощью​ не соответствуют искомому​ что анимация, расположенная​Введите в строке формул​ сделать один!​

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

      ​ того, чтобы найти​​Вы можете преобразовать оценки​ ближайшее значение.​ в четвертом столбце​(2345678;A1:E7;5)​Формула​ равное аргументу​

    • ​ элемент 25 является вторым​ функции ЕОШИБКА мы​ выражению, и номер​ выше, полностью показывает​ в нее следующую​

    ​Добавим рядом с нашей​ использовали в ее​ функциями такими как:​ разделе, посвященном функции​ значению​ из нескольких угаданных​ учащихся в буквенную​​Функция​​ (столбец D). Использованная​. Формула возвращает цену​Описание​искомое_значение​ в диапазоне.​ проверяем выдала ли​​ столбца, в котором​ ​ задачу.​​ формулу:​ таблицей еще один​ аргументах оператор &.​

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

    ​(ПОИСКПОЗ) имеет следующий​ ячейке A14.​ потому что функция​=ПОИСКПОЗ(39;B2:B5,1;0)​Просматриваемый_массив​ Функцией​ Если да, то​ найдено.​Пример 1. Первая идя​ Enter, а сочетание​ название товара и​ первый аргументом для​ какую пользу может​Для выполнения этой задачи​ значение в ячейке​Функция​(ПОИСКПОЗ) так же,​ синтаксис:​

    ​Краткий справочник: обзор функции​ ВПР нашла ближайшее​Так как точного соответствия​может быть не​ПОИСКПОЗ​ мы получаем значение​СУММ(($A$2:$D$9=F2)*СТОЛБЕЦ($A$2:$D$9))​ для решения задач​Ctrl+Shift+Enter​ месяц в единое​ функции теперь является​ приносить данная функция​ используется функция ГПР.​

    ​ C7 (​ABS​ как Вы делали​MATCH(lookup_value,looku

    ​ C7 (​ABS​ как Вы делали​MATCH(lookup_value,lookup_array,[match_type])​

    Использование функции ГПР

    ​ ВПР​ число, меньшее или​ нет, возвращается позиция​ упорядочен.​следует пользоваться вместо​ ИСТИНА. Быстро меняем​Наконец, все значения из​ типа – это​

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

    ​, чтобы ввести формулу​ целое с помощью​ значение FordМаркетинговый. По​ работая самостоятельно. Из​Важно:​100​возвращает модуль разницы​ это с​ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])​Функции ссылки и поиска​ равное указанному (2345678).​ ближайшего меньшего элемента​-1​ одной из функций​ её на ЛОЖЬ​ нашей таблицы суммируются​

    ​ при помощи какого-то​ не как обычную,​ оператора сцепки (&),​ этой причине первый​ самого названия функции​  Значения в первой​).​ между каждым угаданным​VLOOKUP​lookup_value​ (справка)​ Эта ошибка может​ (38) в диапазоне​Функция​ПРОСМОТР​ и умножаем на​ (в нашем примере​ вида цикла поочерёдно​ а как формулу​ чтобы получить уникальный​ Ford из отдела​ ПОИСКПОЗ понятно, что​

    Еще о функциях поиска

    Еще о функциях поиска

    • ​ строке должны быть​Дополнительные сведения см. в​

    • ​ и правильным числами.​(ВПР). В этом​

    • ​(искомое_значение) – может​Использование аргумента массива таблицы​

    ​ привести к неправильному​

    support.office.com

    Функция ИНДЕКС в Excel

    Функция ИНДЕКС возвращает содержимое ячейки, которая находится на пересечении заданных строки и столбца. Например, на рисунке ниже формула возвращает значение из диапазона A1:C4, которое находится на пересечении 3 строки и 2 столбца.

    Стоит отметить, что номера строк и столбцов задают

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

    Если массив содержит только одну строку или один с

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

    Например, следующая формула возвращает пятое значение из диапазона A1:A12 (вертикальный вектор):

    Данная формула возвращает третье значение из диапа

    Данная формула возвращает третье значение из диапазона A1:L1(горизонтальный вектор):

    Правильное написание

    Формула включает в себя следующие элементы:

    • ПОИСКПОЗ() – указание самой функции;
    • Искомое значение, позицию которого необходимо узнать. Можно указывать ссылки на ячейки или вписывать само значение.
    • Диапазон данных – массив (таблица, строка, столбец) данных, среди которых будет осуществляться поиск;
    • Тип сопоставления – уточнение того, какое значение предстоит искать (равное указанному в формуле, меньшее или большее).

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

    [kod]ПОИСКПОЗ(искомое_значение;диапазон_данных;[тип_сопоставления]).[/kod]

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

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

    Предположим у нас есть список продуктов и нам нужно найти порядковый номер конкретного продукта в этом списке. В качестве искомого значения выбираем ячейку C3 («Апельсины») и задаем просматриваемый массив в виде диапазона ячеек A2:A13 (название продукта), тип сопоставления указываем 0:

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

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

    Теги

    Понравилась статья? Поделить с друзьями:
  • Excel найти строку в массиве строк
  • Excel найти строку в которой
  • Excel найти строку в колонке
  • Excel найти строку в другой таблице
  • Excel найти строку в диапазоне