Функция ИНДЕКС возвращает значение или ссылку на значение из таблицы или диапазона.
Функцию ИНДЕКС можно использовать двумя способами:
-
Если вы хотите возвращать значение указанной ячейки или массива ячеек, см. раздел Форма массива.
-
Если требуется возвращать ссылку на указанные ячейки, см. раздел Ссылочная форма.
Форма массива
Описание
Возвращает значение элемента в таблице или массиве, выбранное по индексам номеров строк и столбцов.
Если первый аргумент функции ИНДЕКС является константной массива, используйте форму массива.
Синтаксис
ИНДЕКС(массив; номер_строки; [номер_столбца])
Форма массива функции INDEX имеет следующие аргументы:
-
массив. Обязательный аргумент. Диапазон ячеек или константа массива.
-
Если массив содержит только одну строку или столбец, соответствующий аргумент номер_строки или номер_столбца является необязательным.
-
Если массив содержит более одной строки и более одного столбца и используется только номер_строки или номер_столбца, ИНДЕКС возвращает массив всей строки или столбца в массиве.
-
-
Номер_строки Обязательный, если column_num отсутствует. Выбирает строку в массиве, из которой требуется возвратить значение. Если номер_строки опущен, требуется номер_столбца.
-
Номер_столбца — необязательный аргумент. Выбирает столбец в массиве, из которого требуется возвратить значение. Если номер_столбца опущен, требуется номер_строки.
Замечания
-
Если используются аргументы номер_строки и номер_столбца, функция ИНДЕКС возвращает значение в ячейке на пересечении номеров_строки и номера_столбца.
-
row_num и column_num должны указывать на ячейку в массиве; в противном случае ИНДЕКС возвращает #ССЫЛКА! ошибку «#ЗНАЧ!».
-
Если задать для row_num или column_num значение 0 (ноль), ИНДЕКС возвращает массив значений для всего столбца или строки соответственно. Чтобы использовать значения, возвращаемые в виде массива, введите функцию ИНДЕКС как формулу массива.
Примечание: Если у вас есть текущая версия Microsoft 365, вы можете ввести формулу в верхнюю левую ячейку выходного диапазона, а затем нажать клавишу ВВОД, чтобы подтвердить формулу как формулу динамического массива. В противном случае формулу необходимо ввести как устаревшую формулу массива, сначала выбрав выходной диапазон, введите формулу в верхнюю левую ячейку выходного диапазона, а затем нажмите CTRL+SHIFT+ENTER для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
Примеры
Пример 1
В этих примерах функция ИНДЕКС используется для поиска значения ячейки, находящейся на пересечении заданных строки и столбца.
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — ВВОД.
Данные |
Данные |
|
---|---|---|
Яблоки |
Лимоны |
|
Бананы |
Груши |
|
Формула |
Описание |
Результат |
=ИНДЕКС(A2:B3;2;2) |
Значение ячейки на пересечении второй строки и второго столбца в диапазоне A2:B3. |
Груши |
=ИНДЕКС(A2:B3;2;1) |
Значение ячейки на пересечении второй строки и первого столбца в диапазоне A2:B3. |
Бананы |
Пример 2
В этом примере функция ИНДЕКС используется в формуле массива для поиска значений двух заданных ячеек в массиве с диапазоном 2 x 2.
Примечание: Если у вас есть текущая версия Microsoft 365, вы можете ввести формулу в верхнюю левую ячейку выходного диапазона, а затем нажать клавишу ВВОД, чтобы подтвердить формулу как формулу динамического массива. В противном случае формулу необходимо ввести как устаревшую формулу массива, сначала выбрав две пустые ячейки, введите формулу в верхнюю левую ячейку выходного диапазона, а затем нажмите CTRL+SHIFT+ENTER для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
Формула |
Описание |
Результат |
---|---|---|
=ИНДЕКС({1;2:3;4};0;2) |
Значение ячейки на пересечении первой строки и второго столбца в массиве. Массив содержит значения 1 и 2 в первой строке и значения 3 и 4 во второй строке. |
2 |
Значение ячейки на пересечении второй строки и второго столбца в массиве, указанном выше. |
4 |
|
К началу страницы
Справочная форма
Описание
Возвращает ссылку на ячейку, расположенную на пересечении указанной строки и указанного столбца. Если ссылка состоит из несмежных выборок, вы можете выбрать выборку для поиска.
Синтаксис
ИНДЕКС(ссылка; номер_строки; [номер_столбца]; [номер_области])
Справочная форма функции ИНДЕКС имеет следующие аргументы:
-
ссылка — обязательный аргумент. Ссылка на один или несколько диапазонов ячеек.
-
Если вы вводите несмежный диапазон для ссылки, заключите ссылку в круглые скобки.
-
Если каждая область в ссылке содержит только одну строку или столбец, аргумент номер_строки или номер_столбца соответственно является необязательным. Например, для ссылки на единственную строку нужно использовать формулу ИНДЕКС(ссылка,,номер_столбца).
-
-
Номер_строки Обязательный аргумент. Номер строки в диапазоне, заданном аргументом «ссылка», из которого требуется возвратить ссылку.
-
Номер_столбца — необязательный аргумент. Номер столбца в диапазоне, заданном аргументом «ссылка», из которого требуется возвратить ссылку.
-
area_num Необязательный. Выбирает диапазон в ссылке, из которого возвращается пересечение row_num и column_num. Первая выбранная или введенная область имеет номер 1, вторая — 2 и так далее. Если номер_области опущен, ИНДЕКС использует область 1. Перечисленные здесь области должны располагаться на одном листе. Если вы укажете области, которые не находятся на одном листе друг с другом, это вызовет ошибку #ЗНАЧ! ошибку «#ВЫЧИС!». Если вам нужно использовать диапазоны, расположенные на разных листах друг от друга, рекомендуется использовать форму массива функции ИНДЕКС, а для вычисления диапазона, из которого состоит массив, использовать другую функцию. Например, вы можете использовать функцию ВЫБОР, чтобы вычислить, какой диапазон будет использоваться.
Например, если ссылка описывает ячейки (A1:B4,D1:E4,G1:H4), номер_области 1 – это диапазон A1:B4, номер_области 2 – это диапазон D1:E4, а номер_области 3 – диапазон G1:H4.
Замечания
-
После того, как ссылка и area_num выбрали конкретный диапазон, row_num и column_num выбирают конкретную ячейку: row_num 1 — это первая строка в диапазоне, column_num 1 — это первый столбец и так далее. Ссылка, возвращаемая INDEX, представляет собой пересечение row_num и column_num.
-
Если вы установите номер_строки или номер_столбца равным 0 (ноль), ИНДЕКС возвращает ссылку для всего столбца или строки соответственно.
-
row_num, column_num и area_num должны указывать на ячейку в пределах ссылки; в противном случае ИНДЕКС возвращает #ССЫЛКА! ошибку «#ЗНАЧ!». Если номер_строки и номер_столбца опущены, ИНДЕКС возвращает область в ссылке, указанную номером_области.
-
Результатом вычисления функции ИНДЕКС является ссылка, которая интерпретируется в качестве таковой другими функциями. В зависимости от формулы значение, возвращаемое функцией ИНДЕКС, может использоваться как ссылка или как значение. Например, формула ЯЧЕЙКА(«ширина»;ИНДЕКС(A1:B2;1;2)) эквивалентна формуле ЯЧЕЙКА(«ширина»;B1). Функция ЯЧЕЙКА использует значение, возвращаемое функцией ИНДЕКС, как ссылку. С другой стороны, такая формула, как 2*ИНДЕКС(A1:B2;1;2), преобразует значение, возвращаемое функцией ИНДЕКС, в число в ячейке B1.
Примеры
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу Enter.
Фрукты |
Цена |
Количество |
---|---|---|
Яблоки |
0,69 ₽ |
40 |
Бананы |
0,34 ₽ |
38 |
Лимоны |
0,55 ₽ |
15 |
Апельсины |
0,25 ₽ |
25 |
Груши |
0,59 ₽ |
40 |
Миндаль |
2,80 ₽ |
10 |
Кешью |
3,55 ₽ |
16 |
Арахис |
1,25 ₽ |
20 |
Грецкие орехи |
1,75 ₽ |
12 |
Формула |
Описание |
Результат |
=ИНДЕКС(A2:C6;2;3) |
Пересечение второй строки и третьего столбца в диапазоне A2:C6, т. е. содержимое ячейки C3. |
38 |
=ИНДЕКС((A1:C6;A8:C11);2;2;2) |
Пересечение второй строки и второго столбца во второй области (A8:C11), т. е. содержимое ячейки B9. |
1,25 |
=СУММ(ИНДЕКС(A1:C11;0;3;1)) |
Сумма третьего столбца в первой области диапазона (A1:C11) является суммой диапазона C1:C11. |
216 |
=СУММ(B2:ИНДЕКС(A2:C6;5;2)) |
Сумма значений из диапазона, начинающегося с ячейки B2 и заканчивающегося пересечением пятой строки и второго столбца диапазона A2:A6, т. е. сумма значений из диапазона B2:B6. |
2,42 |
К началу страницы
См. также
Функция ВПР
ПОИСКПОЗ
Функция ДВССЫЛ
Использование формул массива: рекомендации и примеры
Функции ссылки и поиска (справка)
Бывает у вас такое: смотришь на человека и думаешь «что за @#$%)(*?» А потом при близком знакомстве оказывается, что он знает пять языков, прыгает с парашютом, имеет семеро детей и черный пояс в шахматах, да и, вообще, добрейшей души человек и умница?
Так и в Microsoft Excel: есть несколько похожих функций, про которых фраза «внешность обманчива» работает на 100%. Одна из наиболее многогранных и полезных — функция ИНДЕКС (INDEX). Далеко не все пользователи Excel про нее знают, и еще меньше используют все её возможности. Давайте разберем варианты ее применения, ибо их аж целых пять.
Вариант 1. Извлечение данных из столбца по номеру ячейки
Самый простой случай использования функции ИНДЕКС – это ситуация, когда нам нужно извлечь данные из одномерного диапазона-столбца, если мы знаем порядковый номер ячейки. Синтаксис в этом случае будет:
=ИНДЕКС(Диапазон_столбец; Порядковый_номер_ячейки)
Этот вариант известен большинству продвинутых пользователей Excel. В таком виде функция ИНДЕКС часто используется в связке с функцией ПОИСКПОЗ (MATCH), которая выдает номер искомого значения в диапазоне. Таким образом, эта пара заменяет легендарную ВПР (VLOOKUP):
… но, в отличие от ВПР, могут извлекать значения левее поискового столбца и номер столбца-результата высчитывать не нужно.
Вариант 2. Извлечение данных из двумерного диапазона
Если диапазон двумерный, т.е. состоит из нескольких строк и столбцов, то наша функция будет использоваться немного в другом формате:
=ИНДЕКС(Диапазон; Номер_строки; Номер_столбца)
Т.е. функция извлекает значение из ячейки диапазона с пересечения строки и столбца с заданными номерами.
Легко сообразить, что с помощью такой вариации ИНДЕКС и двух функций ПОИСКПОЗ можно легко реализовать двумерный поиск:
Вариант 3. Несколько таблиц
Если таблица не одна, а их несколько, то функция ИНДЕКС может извлечь данные из нужной строки и столбца именно заданной таблицы. В этом случае используется следующий синтаксис:
=ИНДЕКС((Диапазон1;Диапазон2;Диапазон3); Номер_строки; Номер_столбца; Номер_диапазона)
Обратите особое внимание, что в этом случае первый аргумент – список диапазонов — заключается в скобки, а сами диапазоны перечисляются через точку с запятой.
Вариант 4. Ссылка на столбец / строку
Если во втором варианте использования функции ИНДЕКС номер строки или столбца задать равным нулю (или просто не указать), то функция будет выдавать уже не значение, а ссылку на диапазон-столбец или диапазон-строку соответственно:
Обратите внимание, что поскольку ИНДЕКС выдает в этом варианте не конкретное значение ячейки, а ссылку на диапазон, то для подсчета потребуется заключить ее в дополнительную функцию, например СУММ (SUM), СРЗНАЧ (AVERAGE) и т.п.
Вариант 5. Ссылка на ячейку
Общеизвестно, что стандартная ссылка на любой диапазон ячеек в Excel выглядит как Начало-Двоеточие-Конец, например A2:B5. Хитрость в том, что если взять функцию ИНДЕКС в первом или втором варианте и подставить ее после двоеточия, то наша функция будет выдавать уже не значение, а адрес, и на выходе мы получим полноценную ссылку на диапазон от начальной ячейки до той, которую нашла ИНДЕКС:
Нечто похожее можно реализовать функцией СМЕЩ (OFFSET), но она, в отличие от ИНДЕКС, является волатильной, т.е. пересчитывается каждый раз при изменении любой ячейки листа. ИНДЕКС же работает более тонко и запускает пересчет только при изменении своих аргументов, что ощутимо ускоряет расчет в тяжелых книгах по сравнению со СМЕЩ.
Один из весьма распространенных на практике сценариев применения ИНДЕКС в таком варианте — это сочетание с функцией СЧЁТЗ (COUNTA), чтобы получить автоматически растягивающиеся диапазоны для выпадающих списков, сводных таблиц и т.д.
Ссылки по теме
- Трехмерный поиск данных по нескольким листам (ВПР 3D)
- Поиск и подстановка по нескольким условиям (ВПР по нескольким столбцам)
- Подстановка данных из одной таблицы в другую с помощью функции ВПР (VLOOKUP)
Skip to content
В этом руководстве показано, как использовать ИНДЕКС и ПОИСКПОЗ в Excel и чем они лучше ВПР.
В нескольких недавних статьях мы приложили немало усилий, чтобы объяснить основы функции ВПР новичкам и предоставить более сложные примеры формул ВПР опытным пользователям. А теперь я постараюсь если не отговорить вас от использования ВПР, то хотя бы показать вам альтернативный способ поиска нужных значений в Excel.
- Краткий обзор функций ИНДЕКС и ПОИСКПОЗ
- Как использовать формулу ИНДЕКС ПОИСКПОЗ
- ИНДЕКС+ПОИСКПОЗ вместо ВПР?
- Поиск справа налево
- Двусторонний поиск в строках и столбцах
- ИНДЕКС ПОИСКПОЗ для поиска по нескольким условиям
- Как найти среднее, максимальное и минимальное значение
- Что делать с ошибками поиска?
Для чего это нужно? Потому что функция ВПР имеет множество ограничений, которые могут помешать вам получить желаемый результат во многих ситуациях. С другой стороны, комбинация ПОИСКПОЗ ИНДЕКС более гибкая и имеет много замечательных возможностей, которые во многих отношениях превосходят ВПР.
Функции Excel ИНДЕКС и ПОИСКПОЗ — основы
Поскольку целью этого руководства является демонстрация альтернативного способа выполнения поиска в Excel с использованием комбинации функций ИНДЕКС и ПОИСКПОЗ, мы не будем подробно останавливаться на их синтаксисе и использовании. Тем более, что это подробно рассмотрено в других статьях, ссылки на которые вы можете найти в конце этого руководства. Мы рассмотрим лишь минимум, необходимый для понимания общей идеи, а затем подробно рассмотрим примеры формул, раскрывающие все преимущества использования ПОИСКПОЗ и ИНДЕКС вместо ВПР.
Функция ИНДЕКС
Функция ИНДЕКС (в английском варианте – INDEX) возвращает значение в массиве на основе указанных вами номеров строк и столбцов. Синтаксис функции ИНДЕКС прост:
ИНДЕКС(массив,номер_строки,[номер_столбца])
Вот простое объяснение каждого параметра:
- массив — это диапазон ячеек, именованный диапазон или таблица.
- номер_строки — это номер строки в массиве, из которого нужно вернуть значение. Если этот аргумент опущен, требуется следующий – номер_столбца.
- номер_столбца — это номер столбца, из которого нужно вернуть значение. Если он опущен, требуется номер_строки.
Дополнительные сведения см. в статье Функция ИНДЕКС в Excel .
А вот пример формулы ИНДЕКС в самом простом виде:
=ИНДЕКС(A1:C10;2;3)
Формула выполняет поиск в ячейках с A1 по C10 и возвращает значение ячейки во 2-й строке и 3-м столбце, т. е. в ячейке C2.
Очень легко, правда? Однако при работе с реальными данными вы вряд ли когда-нибудь будете заранее знать, какие строки и столбцы вам нужны. Здесь вам пригодится ПОИСКПОЗ.
Функция ПОИСКПОЗ
Она ищет нужное значение в диапазоне ячеек и возвращает относительное положение этого значения в диапазоне.
Синтаксис функции ПОИСКПОЗ следующий:
ПОИСКПОЗ(искомое_значение, искомый_массив, [тип_совпадения])
- искомое_значение — числовое или текстовое значение, которое вы ищете.
- диапазон_поиска — диапазон ячеек, в которых будем искать.
- тип_совпадения — указывает, следует ли искать точное соответствие или наиболее близкое совпадение:
- 1 или опущено — находит наибольшее значение, которое меньше или равно искомому значению. Требуется сортировка массива поиска в порядке возрастания.
- 0 — находит первое значение, точно равное искомому значению. В комбинации ИНДЕКС/ПОИСКПОЗ вам почти всегда нужно точное совпадение, поэтому вы чаще всего устанавливаете третий аргумент вашей функции в 0.
- -1 — находит наименьшее значение, которое больше или равно искомому значению. Требуется сортировка массива поиска в порядке убывания.
Например, если диапазон B1:B3 содержит значения «яблоки», «апельсины», «лимоны», приведенная ниже формула возвращает число 3, поскольку «лимоны» — это третья по счету запись в этом диапазоне:
=ПОИСКПОЗ(«лимоны»;B1:B3;0)
Дополнительные сведения см . в статье Функция ПОИСКПОЗ в Excel .
На первый взгляд полезность функции ПОИСКПОЗ может показаться сомнительной. Кого волнует положение значения в диапазоне? Что мы действительно хотим определить, так это само значение.
Однако, относительная позиция искомого значения (т. е. номера строки и столбца, в которых оно находится) — это именно то, что нам нужно указать для аргументов номер_строки и номер_столбца функции ИНДЕКС. Как вы помните, ИНДЕКС может найти значение на пересечении заданной строки и столбца, но сама не может определить, какую именно строку и столбец ей нужно выбрать.
Вот поэтому совместное использование ИНДЕКС и ПОИСКПОЗ открывает перед нами массу возможностей для поиска в Excel.
Как использовать формулу ИНДЕКС ПОИСКПОЗ в Excel
Теперь, когда вы знаете основы, я считаю, что вы уже начали понимать, как ПОИСКПОЗ и ИНДЕКС работают вместе. Короче говоря, ИНДЕКС извлекает нужное значение по номерам столбцов и строк, а ПОИСКПОЗ предоставляет ей эти номера. Вот и все!
Для вертикального поиска вы используете функцию ПОИСКПОЗ только для определения номера строки, указывая диапазон столбцов непосредственно в самой формуле:
ИНДЕКС ( столбец для возврата значения ; ПОИСКПОЗ ( искомое значение ; столбец для поиска ; 0))
Все еще не совсем понимаете эту логику? Возможно, будет проще разобрать на примере. Предположим, у вас есть список национальных столиц и их население:
Чтобы найти население определенной столицы, скажем, Индии, используйте следующую формулу ПОИСКПОЗ ИНДЕКС:
=ИНДЕКС(C2:C10; ПОИСКПОЗ(“Индия”;A2:A10;0))
Теперь давайте проанализируем, что на самом деле делает каждый компонент этой формулы:
- Функция ПОИСКПОЗ ищет искомое значение «Индия» в диапазоне A2:A10 и возвращает число 2, поскольку это слово занимает второе место в массиве поиска.
- Этот номер поступает непосредственно в аргумент номер_строки функции ИНДЕКС, предписывая вернуть значение из этой строки.
Таким образом, приведенная выше формула превращается в ИНДЕКС(C2:C10;2), которая означает, что нужно искать в ячейках от C2 до C10 и извлекать значение из второй ячейки в этом диапазоне, то есть из C3, потому что мы начинаем отсчет со второй строки.
Но указывать название города в формуле не совсем правильно, так как для каждого нового поиска придется корректировать эту формулу. Введите его в какую-нибудь отдельную ячейку, скажем, F1, укажите ссылку на ячейку для ПОИСКПОЗ, и вы получите формулу динамического поиска:
=ИНДЕКС(C2:C10;ПОИСКПОЗ(F1;A2:A10;0))
Важное замечание! Количество строк в аргументе массив функции ИНДЕКС должно совпадать с количеством строк в аргументе просматриваемый_массив в ПОИСКПОЗ, иначе формула выдаст неверный результат.
Вы спросите: «А почему бы нам просто не использовать обычную формулу ВПР? Какой смысл тратить время на то, чтобы разобраться в хитросплетениях ИНДЕКС ПОИСКПОЗ в Excel?»
Вот как это будет выглядеть:
=ВПР(F1; A2:C10; 3; 0)
Конечно, так проще. Но этот наш элементарный пример предназначен только для демонстрационных целей, чтобы вы поняли, как именно функции ИНДЕКС и ПОИСКПОЗ работают вместе. Действительно, ВПР была бы здесь более уместна. Другие примеры, которые вы найдёте ниже, покажут вам реальную силу этой комбинации, которая легко справляется со многими сложными задачами, когда ВПР будет бессильна.
ИНДЕКС+ПОИСКПОЗ вместо ВПР?
Решая, какую функцию использовать для вертикального поиска, большинство знатоков Excel сходятся во мнении, что ПОИСКПОЗ+ИНДЕКС намного лучше, чем ВПР. Однако многие до сих пор остаются с ВПР, во-первых, потому что это проще, а, во-вторых, потому что они не до конца понимают все преимущества использования формулы ПОИСКПОЗ ИНДЕКС в Excel. Без такого понимания никто не захочет тратить свое время на изучение более сложного синтаксиса.
Ниже я укажу на ключевые преимущества ИНДЕКС ПОИСКПОЗ перед ВПР, а уж вам решать, является ли это достойным дополнением к вашему арсеналу знаний в Excel.
4 основные причины использовать ИНДЕКС ПОИСКПОЗ вместо ВПР
- Поиск справа налево. Как известно любому образованному пользователю, ВПР не может искать влево. Это означает, что искомое значение всегда должно находиться в крайнем левом столбце таблицы. А извлекать нужное значение мы будем из столбца, который находится правее. ИНДЕКС+ПОИСКПОЗ может легко выполнять поиск влево! Здесь это показано в действии: Как выполнить поиск значения слева в Excel .
- Можно безопасно вставлять или удалять столбцы. Формулы ВПР не работают или выдают неверные результаты, когда новый столбец удаляется из таблицы поиска или добавляется в нее, поскольку синтаксис ВПР требует указания порядкового номера столбца, из которого вы хотите извлечь данные. Естественно, когда вы добавляете или удаляете столбцы, этот номер в формуле автоматически не меняется, а нужный столбец уже оказывается на новом месте.
С функциями ИНДЕКС и ПОИСКПОЗ вы указываете диапазон возвращаемых столбцов, а не номер одного из них. В результате вы можете вставлять и удалять столько столбцов, сколько хотите, не беспокоясь об обновлении каждой связанной с ними формулы.
- Нет ограничений на размер искомого значения. При использовании функции ВПР общая длина ваших критериев поиска не может превышать 255 символов, иначе вы получите ошибку #ЗНАЧ!. Таким образом, если ваш набор данных содержит длинные строки, ИНДЕКС ПОИСКПОЗ — единственное работающее решение.
- Более высокая скорость обработки. Если ваши таблицы относительно небольшие, вряд ли будет какая-то существенная разница в производительности Excel. Но если ваши рабочие листы содержат сотни или тысячи строк и, следовательно, сотни или тысячи формул, ИНДЕКС ПОИСКПОЗ будет работать намного быстрее, чем ВПР. Причина в том, что Excel будет обрабатывать только столбцы поиска и возврата, а не весь массив таблицы.
Влияние ВПР на производительность Excel может быть особенно заметным, если ваша книга содержит сложные формулы массива. Чем больше значений содержит ваш массив и чем больше формул массива содержится в книге, тем медленнее работает Excel.
ИНДЕКС ПОИСКПОЗ в Excel – примеры формул
Уяснив, почему все же стоит изучать ИНДЕКС ПОИСКПОЗ, давайте перейдем к самому интересному и посмотрим, как можно применить теоретические знания на практике.
Формула для поиска справа налево
Как уже упоминалось, ВПР не может получать значения слева от столбца поиска. Таким образом, если ваши значения поиска не находятся в самом левом столбце, нет никаких шансов, что формула ВПР принесет вам желаемый результат. Функция ПОИСКПОЗ ИНДЕКС в Excel более универсальна и не имеет особого значения, где расположены столбцы поиска и возврата.
Для этого примера мы добавим столбец «Ранг» слева от нашей основной таблицы и попытаемся выяснить, какое место занимает столица России по численности населения среди других перечисленных столиц.
Записав искомое значение в G1, используйте следующую формулу для поиска в C2:C10 и возврата соответствующего значения из A2:A10:
=ИНДЕКС(A2:A10; ПОИСКПОЗ(G1;C2:C10;0))
Совет. Если вы планируете использовать формулу ПОИСКПОЗ ИНДЕКС более чем для одной ячейки, обязательно зафиксируйте оба диапазона абсолютными ссылками (например, $A$2:$A$10 и $C$2:$C$10), чтобы они не изменялись при копировании формулы.
Двусторонний поиск в строках и столбцах
В приведенных выше примерах мы использовали ИНДЕКС ПОИСКПОЗ вместо классической функции ВПР, чтобы вернуть значение из точно указанного столбца. Но что, если вам нужно искать в нескольких строках и столбцах? То есть, сначала нужно найти подходящий столбец, а уж потом извлечь из него значение? Другими словами, что, если вы хотите выполнить так называемый матричный или двусторонний поиск?
Это может показаться сложным, но формула очень похожа на базовую функцию ПОИСКПОЗ ИНДЕКС в Excel, но с одним отличием.
Просто используйте две функции ПОИСКПОЗ, вложенных друг в друга: одну – для получения номера строки, а другую – для получения номера столбца.
ИНДЕКС(массив; ПОИСКПОЗ(значение_поиска1 ; столбец_поиска ; 0); ПОИСКПОЗ(значение_поиска2 ; столбец_поиска ; 0))
А теперь, пожалуйста, взгляните на приведенную ниже таблицу и давайте составим формулу двумерного поиска, чтобы найти население (в миллионах) в данной стране за данный год.
С целевой страной в G1 (значение_поиска1) и целевым годом в G2 (значение_поиска2) формула принимает следующий вид:
=ИНДЕКС(B2:D11; ПОИСКПОЗ(G1;A2:A11;0); ПОИСКПОЗ(G2;B1:D1;0))
Как работает эта формула?
Всякий раз, когда вам нужно понять сложную формулу Excel, разделите ее на более мелкие части и посмотрите, что делает каждая отдельная функция:
ПОИСКПОЗ(G1;A2:A11;0); – ищет в A2:A11 значение из ячейки G1 («США») и возвращает его позицию, которая равна 3.
ПОИСКПОЗ(G2;B1:D1;0) – просматривает диапазон B1:D1, чтобы получить позицию значения из ячейки G2 («2015»), которая равна 3.
Найденные выше номера строк и столбцов становятся соответствующими аргументами функции ИНДЕКС:
ИНДЕКС(B2:D11, 3, 3)
В результате вы получите значение на пересечении 3-й строки и 3-го столбца в диапазоне B2:D11, то есть из D4. Несложно?
ИНДЕКС ПОИСКПОЗ для поиска по нескольким условиям
Если у вас была возможность прочитать наши материалы по ВПР в Excel, вы, вероятно, уже протестировали формулу для ВПР с несколькими условиями . Однако существенным недостатком этого подхода является необходимость добавления вспомогательного столбца. Хорошей новостью является то, что функция ПОИСКПОЗ ИНДЕКС в Excel также может выполнять поиск по нескольким условиям без изменения или реструктуризации исходных данных!
Вот общая формула ИНДЕКС ПОИСКПОЗ с несколькими критериями:
{=ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ); 0))}
Примечание. Это формула массива , которую необходимо вводить с помощью сочетания клавиш Ctrl + Shift + Enter
.
Предположим, что в таблице ниже вы хотите найти значение на основе двух критериев: Покупатель и Товар.
Следующая формула ИНДЕКС ПОИСКПОЗ отлично работает:
=ИНДЕКС(C2:C10; ПОИСКПОЗ(1; (F1=A2:A10) * (F2=B2:B10); 0))
Где C2:C10 — это диапазон, из которого возвращается значение, F1 — это критерий1, A2:A10 — это диапазон для сравнения с критерием 1, F2 — это критерий 2, а B2:B10 — это диапазон для сравнения с критерием 2.
Не забудьте правильно ввести формулу, нажав Ctrl + Shift + Enter, и Excel автоматически заключит ее в фигурные скобки, как показано на скриншоте ниже:
Рис5
Если вы не хотите использовать формулы массива, добавьте в формулу в F4 еще одну функцию ИНДЕКС и завершите ее ввод обычным нажатием Enter:
=ИНДЕКС(C2:C10; ПОИСКПОЗ(1; ИНДЕКС((F1=A2:A10) * (F2=B2:B10); 0; 1); 0))
Разберем пошагово, как это работает.
Здесь используется тот же подход, что и в обычном сочетании ИНДЕКС ПОИСКПОЗ, где просматривается один столбец. Чтобы оценить несколько критериев, вы создаете два или более массива значений ИСТИНА и ЛОЖЬ, которые представляют совпадения и несовпадения для каждого отдельного критерия, а затем перемножаете соответствующие элементы этих массивов. Операция умножения преобразует ИСТИНА и ЛОЖЬ в 1 и 0 соответственно и создает массив, в котором единицы соответствуют строкам, которые удовлетворяют всем условиям. Функция ПОИСКПОЗ со значением поиска 1 находит первую «1» в массиве и передает ее позицию в ИНДЕКС, которая возвращает значение в этой позиции из указанного столбца.
Вторая формула без массива основана на способности функции ИНДЕКС работать с массивами. Второй вложенный ИНДЕКС имеет 0 в номер_строки , так что он будет передавать весь массив столбцов в ПОИСКПОЗ.
Среднее, максимальное и минимальное значение при помощи ИНДЕКС ПОИСКПОЗ
Microsoft Excel имеет специальные функции для поиска минимального, максимального и среднего значения в диапазоне. Но что, если вам нужно получить значение из другой ячейки, связанной с этими значениями? Например, получить название города с максимальным населением или узнать товар с минимальными продажами? В этом случае используйте функцию МАКС , МИН или СРЗНАЧ вместе с ИНДЕКС ПОИСКПОЗ.
Максимальное значение.
Предположим, нам нужно в списке городов найти столицу с самым большим населением. Чтобы найти наибольшее значение в столбце С и вернуть соответствующее ему значение из столбца В, находящееся в той же строке, используйте эту формулу:
=ИНДЕКС(B2:B10; ПОИСКПОЗ(МАКС(C2:C10); C2:C10; 0))
Скриншот с примером находится чуть ниже.
Минимальное значение
Теперь найдём город с самым маленьким населением в списке. Чтобы найти наименьшее число в столбце С и получить соответствующее ему значение из столбца В:
=ИНДЕКС(B2:B10; ПОИСКПОЗ(МИН(C2:C10); C2:C10; 0))
Ближайшее к среднему
Теперь мы находим город, население которого наиболее близко к среднему значению. Чтобы вычислить позицию, наиболее близкую к среднему значению показателя, рассчитанному из D2:D10, и получить соответствующее значение из столбца C, используйте следующую формулу:
=ИНДЕКС(B2:B10; ПОИСКПОЗ(СРЗНАЧ(C2:C10); C2:C10; -1 ))
В зависимости от того, как организованы ваши данные, укажите 1 или -1 для третьего аргумента (тип_совпадения) функции ПОИСКПОЗ:
- Если ваш столбец поиска (столбец D в нашем случае) отсортирован по возрастанию , поставьте 1. Формула вычислит наибольшее значение, которое меньше или равно среднему значению.
- Если ваш столбец поиска отсортирован по убыванию , введите -1. Формула вычислит наименьшее значение, которое больше или равно среднему значению.
- Если ваш массив поиска содержит значение , точно равное среднему, вы можете ввести 0 для точного совпадения. Никакой сортировки не требуется.
В нашем примере данные в столбце D отсортированы в порядке убывания, поэтому мы используем -1 для типа соответствия. В результате мы получаем «Токио», так как его население (13 189 000) является ближайшим, превышающим среднее значение (12 269 006).
Что делать с ошибками поиска?
Как вы, наверное, заметили, если формула ИНДЕКС ПОИСКПОЗ в Excel не может найти искомое значение, она выдает ошибку #Н/Д. Если вы хотите заменить это стандартное сообщение чем-то более информативным, оберните формулу ПОИСКПОЗ ИНДЕКС в функцию ЕСНД . Например:
=ЕСНД(ИНДЕКС(C2:C10; ПОИСКПОЗ(F1;A2:A10;0)); «Не найдено»)
И теперь, если кто-то вводит значение, которое не существует в диапазоне поиска, формула явно сообщит пользователю, что совпадений не найдено:
Если вы хотите перехватывать все ошибки, а не только #Н/Д, используйте функцию ЕСЛИОШИБКА вместо ЕСНД:
=ЕСЛИОШИБКА(ИНДЕКС(C2:C10; ПОИСКПОЗ(F1;A2:A10;0)); «Что-то пошло не так!»)
Пожалуйста, имейте в виду, что во многих ситуациях было бы не совсем правильно скрывать все такие ошибки, потому что они предупреждают вас о возможных проблемах в вашей формуле.
Итак, еще раз об основных преимуществах формулы ИНДЕКС ПОИСКПОЗ.
-
Возможен ли «левый» поиск?
-
Повлияет ли на результат вставка и удаление столбцов?
Вы можете вставлять и удалять столько столбцов, сколько хотите. На результат ИНДЕКС ПОИСКПОЗ это не повлияет.
-
Возможен ли поиск по строкам и столбцам?
Можно сначала найти подходящий столбец, а уж потом извлечь из него значение. Общий вид формулы:
ИНДЕКС(массив; ПОИСКПОЗ(значение_поиска1 ; столбец_поиска ; 0); ПОИСКПОЗ(значение_поиска2 ; столбец_поиска ; 0))
Подробную инструкцию смотрите здесь. -
Как сделать поиск ИНДЕКС ПОИСКПОЗ по нескольким условиям?
Можно выполнять поиск по двум или более условиям без добавления дополнительных столбцов. Вот формула массива, которая решит проблему:
{=ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ); 0))}
Вот как можно использовать ИНДЕКС и ПОИСКПОЗ в Excel. Я надеюсь, что наши примеры формул окажутся полезными для вас.
Вот еще несколько статей по этой теме:
Функция ИНДЕКС помогает извлекать значение из массива данных. Массив может различаться своей структурой, количеством столбцов и строк и даже количество самих массивов может быть больше одного.
Пример работы функции ИНДЕКС в Excel от простого к сложному
Сначала рассмотрим самый простой пример применения. У нас есть несколько городов. Пусть нашей первой задачей будет извлечь пятый по счету город из нашей одномерной базы данных. Синтаксис нашей формулы будет следующий: ИНДЕКС(массив; номер_строки). Начинаем писать формулу (яч. B9). Первый аргумент – это все города B3:C7, а второй – необходимый нам номер ряда, в котором хранится информация, которую мы хотим получить – пятый город:
Функция возвратила значение с второго ряда нашей таблицы. Теперь дополним нашу таблицу информацией о туристах, посетивших город в 2017 году:
Для дальнейшего ознакомления работы функции расширим задачу до двухмерного массива исходных данных.
Функция ИНДЕКС двумерный и многомерный массив
Теперь наш массив двухмерный. Пусть теперешним заданием будет узнать количество туристов в Ливерпуле. В ячейке B19 пишем формулу. Синтаксис тоже видоизменится: ИНДЕКС(массив; номер_строки; номер_столбца), у нас добавится третий аргумент – номер столбца, в котором хранится нужные нам данные:
Аналогично функция работает с трёхмерными массивами, четырёхмерными и так далее. Теперь давайте рассмотрим, как решать задачи, когда таблиц несколько. Пусть у нас будут города трёх стран с количеством посетителей:
На этот раз у нас три двумерные таблицы – три страны с различными городами и их посетителями. Нам необходимо найти количество туристов в городе Ницца страны Франции или, если перефразировать под наш синтаксис, количество посетителей третьего ряда второй колонки второй таблицы. Первым делом, как и раньше, нам нужно выбрать диапазон. НО теперь их у нас три, а значит, все три мы и выбираем, предварительно взяв в скобки эту часть синтаксиса. После чего добавляем уже знакомые нам координаты искомой информации – строку и столбец, а также номер таблицы, которая содержит искомый нами диапазон:
И получаем готовую формулу с решением поставленной задачи:
Пример формулы комбинации функций ИНДЕКС и СУММ
Функцию ИНДЕКC так же можно комбинировать и с другими функциями. Например, наша база данных содержит дополнительно количество туристов Великобритании за 2018-2019 года, мы хотим узнать сумму туристов:
- за 2018 год.
- по городу Манчестер за весь период.
В этом нам поможет известная любому пользователю несложная функция СУММ. Она охватит результат поиска, сделанным ИНДЕКC и выполнит операцию сложения найденных значений. Чтобы выполнить первую задачу, для начала нам нужно выбрать диапазон с одними числами(без столбца с городами, поскольку будем суммировать численные значения C43:E47). Затем на месте, где мы прописывали номер строки, пишем 0. Благодаря этому ИНДЕКC не будет «искать» данные по строкам, а просто перейдет к следующей операции. А следующая операция – прописываем столбец 2 и получаем ответ на первый пункт:
Сумма туристов за 2018 год по пяти городам Великобритании составляет 40 987 людей.
Аналогично этой схеме мы ищем ответ на второй пункт. Только теперь нам нужно считать данные с ряда, поэтому ноль ставим на месте номера столбца:
И получаем ответ на второй пункт – всего посетителей за три года в Манчестере было 2 474 человека.
Для примера зачастую используются самые простые задачи и однотипные решения через функцию. Но в работе объем данных всегда больше и сложнее, поэтому для решения таких заданий используют несколько функций или их сочетание. Несколько таких примеров будем рассматривать дальше.
Формулировку функции можно видоизменять в зависимости от постановки задачи. Пусть нам нужно определить и показать сколько туристов вместе было в 2017-м году в первых трёх городах по списку – Кембридже, Манчестере и Лондоне. Тогда мы снова используем функцию СУММ, но в месте, где указывается конец диапазона значений, по которым мы проводим поиск, вставляем нашу ИНДЕКС. Проще говоря, диапазон для суммирования выглядит так: (начало:конец). Началом будет первая ячейка массива, как обычно, а конец мы заменим. Укажем количество городов, по которым будем считать людей (действие 1). Затем, когда будем составлять функцию ИНДЕКC, укажем, что первый аргумент – числовой диапазон всех пяти городов за 2017-й год, а второй – наше кол-во городов (ячейка D64):
Точно так же можно выполнить следующее задание: найти сумму посетителей Оксфорде за 2017-2018 года. В этом случае делаем всё точно так же, только выбираем горизонтальный диапазон C61:E61 :
В конце необязательно ссылаться на ячейку с написанным количеством искомых значений, можно сразу писать цифру 3 в первом примере и цифру 2 во втором примере, всё будет работать точно так же:
и
идентичны.
Комбинирование нескольких функций могут делать то же, что и одна отдельная функция, но при этом быть менее требовательными к расположению данных, к их размерам или количеству.
Формула ИНДЕКС и ПОИСКПОЗ лучшая замена функции ВПР
Существуют весьма весомые аргументы преимущества использования формулы ИНДЕКС и ПОИСКПОЗ в Excel лучше, чем функция ВПР. Если вы уже знакомы с функцией ВПР, то наверняка знаете, что для её корректной работы искомые данные всегда должны располагаться по правую сторону от критериев:
Получается, что для работы сначала нужно упорядочить столбцы в соответствии с требованиями, а только потом совершать действия. Но иногда сама структура отчета или сводки, с которой нам нужно иметь дело, не позволяет совершать перестановки. Тогда нам очень кстати пригодится ИНДЕКС в сочетании с функцией ПОИСКПОЗ. Синтаксис ИНДЕКСА: (массив; номер_строки; номер_столбца). На первой позиции у нас будет диапазон значений (туристы, 2017), вместо следующих двух пишем ПОИСКПОЗ (искомый критерий;диапазон критериев; 0 (для точного результата)):
Рассмотрим более наглядный и реальный пример, где можно заменить ВПР. У нас есть два отчета: один — о количестве продаж определенного товара, а второй – о цене на упаковку одного товара. И как раз вторая таблица имеет такое расположение столбцов, которое не позволяет использовать нам ВПР – первыми занимают место значения, а вторыми – критерии:
Для того чтобы выполнить заполнение первой таблицы, делаем точно также, как в предыдущем примере – в ячейке D88 пишем ИНДЕКС, первым делом указываем столбец, где находятся искомые значения (цена за упаковку). Затем нужно указать, где нам искать соответствующие критерию значения — подстраиваем ПОИСКПОЗ под наше решение: выбираем искомый критерий (Хепилор), затем массив искомых критериев со второй таблицы:
Теперь просто копируем формулу до конца столбца, но не забываем закрепить ссылки, иначе массив будет спускаться дальше и мы получим некорректные значения. Наша таблица готова:
Если у нас нет данных во второй таблице о цене и препаратах, у нас будет в ячейке ошибка #Н/Д. Теперь к нашим ранее использованным функциям добавим ЕСЛИОШИБКА, которая нам поможет изменить внешний вид отчета, сделать его более понятным для читателя. Опять же, поскольку у нас вторая таблица не соответствует требованиям ВПР, на помощь приходит ИНДЕКС+ПОИСКПОЗ. Усложняем уже имеющуюся формулу, добавляя ЕСЛИОШИБКА, указывая, что при отсутствии данных, мы хотим видеть прочерк:
Скачать примеры функции ИНДЕКС и ПОИСКПОЗ в Excel
Таким образом формула из комбинации функций ИНДЕКС и ПОИСПОЗ работают лучше популярной функции ВПР и не имеют никаких ограничений для выборки данных из таблицы даже по нескольким условиям.
Этот учебник рассказывает о главных преимуществах функций ИНДЕКС и ПОИСКПОЗ в Excel, которые делают их более привлекательными по сравнению с ВПР. Вы увидите несколько примеров формул, которые помогут Вам легко справиться со многими сложными задачами, перед которыми функция ВПР бессильна.
В нескольких недавних статьях мы приложили все усилия, чтобы разъяснить начинающим пользователям основы функции ВПР и показать примеры более сложных формул для продвинутых пользователей. Теперь мы попытаемся, если не отговорить Вас от использования ВПР, то хотя бы показать альтернативные способы реализации вертикального поиска в Excel.
Зачем нам это? – спросите Вы. Да, потому что ВПР – это не единственная функция поиска в Excel, и её многочисленные ограничения могут помешать Вам получить желаемый результат во многих ситуациях. С другой стороны, функции ИНДЕКС и ПОИСКПОЗ – более гибкие и имеют ряд особенностей, которые делают их более привлекательными, по сравнению с ВПР.
- Базовая информация об ИНДЕКС и ПОИСКПОЗ
- Используем функции ИНДЕКС и ПОИСКПОЗ в Excel
- Преимущества ИНДЕКС и ПОИСКПОЗ перед ВПР
- ИНДЕКС и ПОИСКПОЗ – примеры формул
- Как находить значения, которые находятся слева
- Вычисления при помощи ИНДЕКС и ПОИСКПОЗ
- Поиск по известным строке и столбцу
- Поиск по нескольким критериям
- ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА
Содержание
- Базовая информация об ИНДЕКС и ПОИСКПОЗ
- ИНДЕКС – синтаксис и применение функции
- ПОИСКПОЗ – синтаксис и применение функции
- Как использовать ИНДЕКС и ПОИСКПОЗ в Excel
- Почему ИНДЕКС/ПОИСКПОЗ лучше, чем ВПР?
- 4 главных преимущества использования ПОИСКПОЗ/ИНДЕКС в Excel:
- ИНДЕКС и ПОИСКПОЗ – примеры формул
- Как выполнить поиск с левой стороны, используя ПОИСКПОЗ и ИНДЕКС
- Вычисления при помощи ИНДЕКС и ПОИСКПОЗ в Excel (СРЗНАЧ, МАКС, МИН)
- О чём нужно помнить, используя функцию СРЗНАЧ вместе с ИНДЕКС и ПОИСКПОЗ
- Как при помощи ИНДЕКС и ПОИСКПОЗ выполнять поиск по известным строке и столбцу
- Поиск по нескольким критериям с ИНДЕКС и ПОИСКПОЗ
- ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА в Excel
Базовая информация об ИНДЕКС и ПОИСКПОЗ
Так как задача этого учебника – показать возможности функций ИНДЕКС и ПОИСКПОЗ для реализации вертикального поиска в Excel, мы не будем задерживаться на их синтаксисе и применении.
Приведём здесь необходимый минимум для понимания сути, а затем разберём подробно примеры формул, которые показывают преимущества использования ИНДЕКС и ПОИСКПОЗ вместо ВПР.
ИНДЕКС – синтаксис и применение функции
Функция INDEX (ИНДЕКС) в Excel возвращает значение из массива по заданным номерам строки и столбца. Функция имеет вот такой синтаксис:
INDEX(array,row_num,[column_num])
ИНДЕКС(массив;номер_строки;[номер_столбца])
Каждый аргумент имеет очень простое объяснение:
- array (массив) – это диапазон ячеек, из которого необходимо извлечь значение.
- row_num (номер_строки) – это номер строки в массиве, из которой нужно извлечь значение. Если не указан, то обязательно требуется аргумент column_num (номер_столбца).
- column_num (номер_столбца) – это номер столбца в массиве, из которого нужно извлечь значение. Если не указан, то обязательно требуется аргумент row_num (номер_строки)
Если указаны оба аргумента, то функция ИНДЕКС возвращает значение из ячейки, находящейся на пересечении указанных строки и столбца.
Вот простейший пример функции INDEX (ИНДЕКС):
=INDEX(A1:C10,2,3)
=ИНДЕКС(A1:C10;2;3)
Формула выполняет поиск в диапазоне A1:C10 и возвращает значение ячейки во 2-й строке и 3-м столбце, то есть из ячейки C2.
Очень просто, правда? Однако, на практике Вы далеко не всегда знаете, какие строка и столбец Вам нужны, и поэтому требуется помощь функции ПОИСКПОЗ.
ПОИСКПОЗ – синтаксис и применение функции
Функция MATCH (ПОИСКПОЗ) в Excel ищет указанное значение в диапазоне ячеек и возвращает относительную позицию этого значения в диапазоне.
Например, если в диапазоне B1:B3 содержатся значения New-York, Paris, London, тогда следующая формула возвратит цифру 3, поскольку «London» – это третий элемент в списке.
=MATCH("London",B1:B3,0)
=ПОИСКПОЗ("London";B1:B3;0)
Функция MATCH (ПОИСКПОЗ) имеет вот такой синтаксис:
MATCH(lookup_value,lookup_array,[match_type])
ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])
- lookup_value (искомое_значение) – это число или текст, который Вы ищите. Аргумент может быть значением, в том числе логическим, или ссылкой на ячейку.
- lookup_array (просматриваемый_массив) – диапазон ячеек, в котором происходит поиск.
- match_type (тип_сопоставления) – этот аргумент сообщает функции ПОИСКПОЗ, хотите ли Вы найти точное или приблизительное совпадение:
- 1 или не указан – находит максимальное значение, меньшее или равное искомому. Просматриваемый массив должен быть упорядочен по возрастанию, то есть от меньшего к большему.
- 0 – находит первое значение, равное искомому. Для комбинации ИНДЕКС/ПОИСКПОЗ всегда нужно точное совпадение, поэтому третий аргумент функции ПОИСКПОЗ должен быть равен 0.
- -1 – находит наименьшее значение, большее или равное искомому значению. Просматриваемый массив должен быть упорядочен по убыванию, то есть от большего к меньшему.
На первый взгляд, польза от функции ПОИСКПОЗ вызывает сомнение. Кому нужно знать положение элемента в диапазоне? Мы хотим знать значение этого элемента!
Позвольте напомнить, что относительное положение искомого значения (т.е. номер строки и/или столбца) – это как раз то, что мы должны указать для аргументов row_num (номер_строки) и/или column_num (номер_столбца) функции INDEX (ИНДЕКС). Как Вы помните, функция ИНДЕКС может возвратить значение, находящееся на пересечении заданных строки и столбца, но она не может определить, какие именно строка и столбец нас интересуют.
Как использовать ИНДЕКС и ПОИСКПОЗ в Excel
Теперь, когда Вам известна базовая информация об этих двух функциях, полагаю, что уже становится понятно, как функции ПОИСКПОЗ и ИНДЕКС могут работать вместе. ПОИСКПОЗ определяет относительную позицию искомого значения в заданном диапазоне ячеек, а ИНДЕКС использует это число (или числа) и возвращает результат из соответствующей ячейки.
Ещё не совсем понятно? Представьте функции ИНДЕКС и ПОИСКПОЗ в таком виде:
=INDEX(столбец из которого извлекаем,(MATCH (искомое значение,столбец в котором ищем,0))
=ИНДЕКС(столбец из которого извлекаем;(ПОИСКПОЗ(искомое значение;столбец в котором ищем;0))
Думаю, ещё проще будет понять на примере. Предположим, у Вас есть вот такой список столиц государств:
Давайте найдём население одной из столиц, например, Японии, используя следующую формулу:
=INDEX($D$2:$D$10,MATCH("Japan",$B$2:$B$10,0))
=ИНДЕКС($D$2:$D$10;ПОИСКПОЗ("Japan";$B$2:$B$10;0))
Теперь давайте разберем, что делает каждый элемент этой формулы:
- Функция MATCH (ПОИСКПОЗ) ищет значение «Japan» в столбце B, а конкретно – в ячейках B2:B10, и возвращает число 3, поскольку «Japan» в списке на третьем месте.
- Функция INDEX (ИНДЕКС) использует 3 для аргумента row_num (номер_строки), который указывает из какой строки нужно возвратить значение. Т.е. получается простая формула:
=INDEX($D$2:$D$10,3)
=ИНДЕКС($D$2:$D$10;3)
Формула говорит примерно следующее: ищи в ячейках от D2 до D10 и извлеки значение из третьей строки, то есть из ячейки D4, так как счёт начинается со второй строки.
Вот такой результат получится в Excel:
Важно! Количество строк и столбцов в массиве, который использует функция INDEX (ИНДЕКС), должно соответствовать значениям аргументов row_num (номер_строки) и column_num (номер_столбца) функции MATCH (ПОИСКПОЗ). Иначе результат формулы будет ошибочным.
Стоп, стоп… почему мы не можем просто использовать функцию VLOOKUP (ВПР)? Есть ли смысл тратить время, пытаясь разобраться в лабиринтах ПОИСКПОЗ и ИНДЕКС?
=VLOOKUP("Japan",$B$2:$D$2,3)
=ВПР("Japan";$B$2:$D$2;3)
В данном случае – смысла нет! Цель этого примера – исключительно демонстрационная, чтобы Вы могли понять, как функции ПОИСКПОЗ и ИНДЕКС работают в паре. Последующие примеры покажут Вам истинную мощь связки ИНДЕКС и ПОИСКПОЗ, которая легко справляется с многими сложными ситуациями, когда ВПР оказывается в тупике.
Почему ИНДЕКС/ПОИСКПОЗ лучше, чем ВПР?
Решая, какую формулу использовать для вертикального поиска, большинство гуру Excel считают, что ИНДЕКС/ПОИСКПОЗ намного лучше, чем ВПР. Однако, многие пользователи Excel по-прежнему прибегают к использованию ВПР, т.к. эта функция гораздо проще. Так происходит, потому что очень немногие люди до конца понимают все преимущества перехода с ВПР на связку ИНДЕКС и ПОИСКПОЗ, а тратить время на изучение более сложной формулы никто не хочет.
Далее я попробую изложить главные преимущества использования ПОИСКПОЗ и ИНДЕКС в Excel, а Вы решите – остаться с ВПР или переключиться на ИНДЕКС/ПОИСКПОЗ.
4 главных преимущества использования ПОИСКПОЗ/ИНДЕКС в Excel:
1. Поиск справа налево. Как известно любому грамотному пользователю Excel, ВПР не может смотреть влево, а это значит, что искомое значение должно обязательно находиться в крайнем левом столбце исследуемого диапазона. В случае с ПОИСКПОЗ/ИНДЕКС, столбец поиска может быть, как в левой, так и в правой части диапазона поиска. Пример: Как находить значения, которые находятся слева покажет эту возможность в действии.
2. Безопасное добавление или удаление столбцов. Формулы с функцией ВПР перестают работать или возвращают ошибочные значения, если удалить или добавить столбец в таблицу поиска. Для функции ВПР любой вставленный или удалённый столбец изменит результат формулы, поскольку синтаксис ВПР требует указывать весь диапазон и конкретный номер столбца, из которого нужно извлечь данные.
Например, если у Вас есть таблица A1:C10, и требуется извлечь данные из столбца B, то нужно задать значение 2 для аргумента col_index_num (номер_столбца) функции ВПР, вот так:
=VLOOKUP("lookup value",A1:C10,2)
=ВПР("lookup value";A1:C10;2)
Если позднее Вы вставите новый столбец между столбцами A и B, то значение аргумента придется изменить с 2 на 3, иначе формула возвратит результат из только что вставленного столбца.
Используя ПОИСКПОЗ/ИНДЕКС, Вы можете удалять или добавлять столбцы к исследуемому диапазону, не искажая результат, так как определен непосредственно столбец, содержащий нужное значение. Действительно, это большое преимущество, особенно когда работать приходится с большими объёмами данных. Вы можете добавлять и удалять столбцы, не беспокоясь о том, что нужно будет исправлять каждую используемую функцию ВПР.
3. Нет ограничения на размер искомого значения. Используя ВПР, помните об ограничении на длину искомого значения в 255 символов, иначе рискуете получить ошибку #VALUE! (#ЗНАЧ!). Итак, если таблица содержит длинные строки, единственное действующее решение – это использовать ИНДЕКС/ПОИСКПОЗ.
Предположим, Вы используете вот такую формулу с ВПР, которая ищет в ячейках от B5 до D10 значение, указанное в ячейке A2:
=VLOOKUP(A2,B5:D10,3,FALSE)
=ВПР(A2;B5:D10;3;ЛОЖЬ)
Формула не будет работать, если значение в ячейке A2 длиннее 255 символов. Вместо неё Вам нужно использовать аналогичную формулу ИНДЕКС/ПОИСКПОЗ:
=INDEX(D5:D10,MATCH(TRUE,INDEX(B5:B10=A2,0),0))
=ИНДЕКС(D5:D10;ПОИСКПОЗ(ИСТИНА;ИНДЕКС(B5:B10=A2;0);0))
4. Более высокая скорость работы. Если Вы работаете с небольшими таблицами, то разница в быстродействии Excel будет, скорее всего, не заметная, особенно в последних версиях. Если же Вы работаете с большими таблицами, которые содержат тысячи строк и сотни формул поиска, Excel будет работать значительно быстрее, при использовании ПОИСКПОЗ и ИНДЕКС вместо ВПР. В целом, такая замена увеличивает скорость работы Excel на 13%.
Влияние ВПР на производительность Excel особенно заметно, если рабочая книга содержит сотни сложных формул массива, таких как ВПР+СУММ. Дело в том, что проверка каждого значения в массиве требует отдельного вызова функции ВПР. Поэтому, чем больше значений содержит массив и чем больше формул массива содержит Ваша таблица, тем медленнее работает Excel.
С другой стороны, формула с функциями ПОИСКПОЗ и ИНДЕКС просто совершает поиск и возвращает результат, выполняя аналогичную работу заметно быстрее.
ИНДЕКС и ПОИСКПОЗ – примеры формул
Теперь, когда Вы понимаете причины, из-за которых стоит изучать функции ПОИСКПОЗ и ИНДЕКС, давайте перейдём к самому интересному и увидим, как можно применить теоретические знания на практике.
Как выполнить поиск с левой стороны, используя ПОИСКПОЗ и ИНДЕКС
Любой учебник по ВПР твердит, что эта функция не может смотреть влево. Т.е. если просматриваемый столбец не является крайним левым в диапазоне поиска, то нет шансов получить от ВПР желаемый результат.
Функции ПОИСКПОЗ и ИНДЕКС в Excel гораздо более гибкие, и им все-равно, где находится столбец со значением, которое нужно извлечь. Для примера, снова вернёмся к таблице со столицами государств и населением. На этот раз запишем формулу ПОИСКПОЗ/ИНДЕКС, которая покажет, какое место по населению занимает столица России (Москва).
Как видно на рисунке ниже, формула отлично справляется с этой задачей:
=INDEX($A$2:$A$10,MATCH("Russia",$B$2:$B$10,0))
=ИНДЕКС($A$2:$A$10;ПОИСКПОЗ("Russia";$B$2:$B$10;0))
Теперь у Вас не должно возникать проблем с пониманием, как работает эта формула:
- Во-первых, задействуем функцию MATCH (ПОИСКПОЗ), которая находит положение «Russia» в списке:
=MATCH("Russia",$B$2:$B$10,0))
=ПОИСКПОЗ("Russia";$B$2:$B$10;0))
- Далее, задаём диапазон для функции INDEX (ИНДЕКС), из которого нужно извлечь значение. В нашем случае это A2:A10.
- Затем соединяем обе части и получаем формулу:
=INDEX($A$2:$A$10;MATCH("Russia";$B$2:$B$10;0))
=ИНДЕКС($A$2:$A$10;ПОИСКПОЗ("Russia";$B$2:$B$10;0))
Подсказка: Правильным решением будет всегда использовать абсолютные ссылки для ИНДЕКС и ПОИСКПОЗ, чтобы диапазоны поиска не сбились при копировании формулы в другие ячейки.
Вычисления при помощи ИНДЕКС и ПОИСКПОЗ в Excel (СРЗНАЧ, МАКС, МИН)
Вы можете вкладывать другие функции Excel в ИНДЕКС и ПОИСКПОЗ, например, чтобы найти минимальное, максимальное или ближайшее к среднему значение. Вот несколько вариантов формул, применительно к таблице из предыдущего примера:
1. MAX (МАКС). Формула находит максимум в столбце D и возвращает значение из столбца C той же строки:
=INDEX($C$2:$C$10,MATCH(MAX($D$2:I$10),$D$2:D$10,0))
=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(МАКС($D$2:I$10);$D$2:D$10;0))
Результат: Beijing
2. MIN (МИН). Формула находит минимум в столбце D и возвращает значение из столбца C той же строки:
=INDEX($C$2:$C$10,MATCH(MIN($D$2:I$10),$D$2:D$10,0))
=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(МИН($D$2:I$10);$D$2:D$10;0))
Результат: Lima
3. AVERAGE (СРЗНАЧ). Формула вычисляет среднее в диапазоне D2:D10, затем находит ближайшее к нему и возвращает значение из столбца C той же строки:
=INDEX($C$2:$C$10,MATCH(AVERAGE($D$2:D$10),$D$2:D$10,1))
=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(СРЗНАЧ($D$2:D$10);$D$2:D$10;1))
Результат: Moscow
О чём нужно помнить, используя функцию СРЗНАЧ вместе с ИНДЕКС и ПОИСКПОЗ
Используя функцию СРЗНАЧ в комбинации с ИНДЕКС и ПОИСКПОЗ, в качестве третьего аргумента функции ПОИСКПОЗ чаще всего нужно будет указывать 1 или -1 в случае, если Вы не уверены, что просматриваемый диапазон содержит значение, равное среднему. Если же Вы уверены, что такое значение есть, – ставьте 0 для поиска точного совпадения.
- Если указываете 1, значения в столбце поиска должны быть упорядочены по возрастанию, а формула вернёт максимальное значение, меньшее или равное среднему.
- Если указываете -1, значения в столбце поиска должны быть упорядочены по убыванию, а возвращено будет минимальное значение, большее или равное среднему.
В нашем примере значения в столбце D упорядочены по возрастанию, поэтому мы используем тип сопоставления 1. Формула ИНДЕКС/ПОИСКПОЗ возвращает «Moscow», поскольку величина населения города Москва – ближайшее меньшее к среднему значению (12 269 006).
Как при помощи ИНДЕКС и ПОИСКПОЗ выполнять поиск по известным строке и столбцу
Эта формула эквивалентна двумерному поиску ВПР и позволяет найти значение на пересечении определённой строки и столбца.
В этом примере формула ИНДЕКС/ПОИСКПОЗ будет очень похожа на формулы, которые мы уже обсуждали в этом уроке, с одним лишь отличием. Угадайте каким?
Как Вы помните, синтаксис функции INDEX (ИНДЕКС) позволяет использовать три аргумента:
INDEX(array,row_num,[column_num])
ИНДЕКС(массив;номер_строки;[номер_столбца])
И я поздравляю тех из Вас, кто догадался!
Начнём с того, что запишем шаблон формулы. Для этого возьмём уже знакомую нам формулу ИНДЕКС/ПОИСКПОЗ и добавим в неё ещё одну функцию ПОИСКПОЗ, которая будет возвращать номер столбца.
=INDEX(Ваша таблица,(MATCH(значение для вертикального поиска,столбец, в котором искать,0)),(MATCH(значение для горизонтального поиска,строка в которой искать,0))
=ИНДЕКС(Ваша таблица,(MATCH(значение для вертикального поиска,столбец, в котором искать,0)),(MATCH(значение для горизонтального поиска,строка в которой искать,0))
Обратите внимание, что для двумерного поиска нужно указать всю таблицу в аргументе array (массив) функции INDEX (ИНДЕКС).
А теперь давайте испытаем этот шаблон на практике. Ниже Вы видите список самых населённых стран мира. Предположим, наша задача узнать население США в 2015 году.
Хорошо, давайте запишем формулу. Когда мне нужно создать сложную формулу в Excel с вложенными функциями, то я сначала каждую вложенную записываю отдельно.
Итак, начнём с двух функций ПОИСКПОЗ, которые будут возвращать номера строки и столбца для функции ИНДЕКС:
- ПОИСКПОЗ для столбца – мы ищем в столбце B, а точнее в диапазоне B2:B11, значение, которое указано в ячейке H2 (USA). Функция будет выглядеть так:
=MATCH($H$2,$B$1:$B$11,0)
=ПОИСКПОЗ($H$2;$B$1:$B$11;0)
Результатом этой формулы будет 4, поскольку «USA» – это 4-ый элемент списка в столбце B (включая заголовок).
- ПОИСКПОЗ для строки – мы ищем значение ячейки H3 (2015) в строке 1, то есть в ячейках A1:E1:
=MATCH($H$3,$A$1:$E$1,0)
=ПОИСКПОЗ($H$3;$A$1:$E$1;0)
Результатом этой формулы будет 5, поскольку «2015» находится в 5-ом столбце.
Теперь вставляем эти формулы в функцию ИНДЕКС и вуаля:
=INDEX($A$1:$E$11,MATCH($H$2,$B$1:$B$11,0),MATCH($H$3,$A$1:$E$1,0))
=ИНДЕКС($A$1:$E$11;ПОИСКПОЗ($H$2;$B$1:$B$11;0);ПОИСКПОЗ($H$3;$A$1:$E$1;0))
Если заменить функции ПОИСКПОЗ на значения, которые они возвращают, формула станет легкой и понятной:
=INDEX($A$1:$E$11,4,5))
=ИНДЕКС($A$1:$E$11;4;5))
Эта формула возвращает значение на пересечении 4-ой строки и 5-го столбца в диапазоне A1:E11, то есть значение ячейки E4. Просто? Да!
Поиск по нескольким критериям с ИНДЕКС и ПОИСКПОЗ
В учебнике по ВПР мы показывали пример формулы с функцией ВПР для поиска по нескольким критериям. Однако, существенным ограничением такого решения была необходимость добавлять вспомогательный столбец. Хорошая новость: формула ИНДЕКС/ПОИСКПОЗ может искать по значениям в двух столбцах, без необходимости создания вспомогательного столбца!
Предположим, у нас есть список заказов, и мы хотим найти сумму по двум критериям – имя покупателя (Customer) и продукт (Product). Дело усложняется тем, что один покупатель может купить сразу несколько разных продуктов, и имена покупателей в таблице на листе Lookup table расположены в произвольном порядке.
Вот такая формула ИНДЕКС/ПОИСКПОЗ решает задачу:
{=INDEX('Lookup table'!$A$2:$C$13,MATCH(1,(A2='Lookup table'!$A$2:$A$13)*
(B2='Lookup table'!$B$2:$B$13),0),3)}
{=ИНДЕКС('Lookup table'!$A$2:$C$13;ПОИСКПОЗ(1;(A2='Lookup table'!$A$2:$A$13)*
(B2='Lookup table'!$B$2:$B$13);0);3)}
Эта формула сложнее других, которые мы обсуждали ранее, но вооруженные знанием функций ИНДЕКС и ПОИСКПОЗ Вы одолеете ее. Самая сложная часть – это функция ПОИСКПОЗ, думаю, её нужно объяснить первой.
MATCH(1,(A2='Lookup table'!$A$2:$A$13),0)*(B2='Lookup table'!$B$2:$B$13)
ПОИСКПОЗ(1;(A2='Lookup table'!$A$2:$A$13);0)*(B2='Lookup table'!$B$2:$B$13)
В формуле, показанной выше, искомое значение – это 1, а массив поиска – это результат умножения. Хорошо, что же мы должны перемножить и почему? Давайте разберем все по порядку:
- Берем первое значение в столбце A (Customer) на листе Main table и сравниваем его со всеми именами покупателей в таблице на листе Lookup table (A2:A13).
- Если совпадение найдено, уравнение возвращает 1 (ИСТИНА), а если нет – 0 (ЛОЖЬ).
- Далее, мы делаем то же самое для значений столбца B (Product).
- Затем перемножаем полученные результаты (1 и 0). Только если совпадения найдены в обоих столбцах (т.е. оба критерия истинны), Вы получите 1. Если оба критерия ложны, или выполняется только один из них – Вы получите 0.
Теперь понимаете, почему мы задали 1, как искомое значение? Правильно, чтобы функция ПОИСКПОЗ возвращала позицию только, когда оба критерия выполняются.
Обратите внимание: В этом случае необходимо использовать третий не обязательный аргумент функции ИНДЕКС. Он необходим, т.к. в первом аргументе мы задаем всю таблицу и должны указать функции, из какого столбца нужно извлечь значение. В нашем случае это столбец C (Sum), и поэтому мы ввели 3.
И, наконец, т.к. нам нужно проверить каждую ячейку в массиве, эта формула должна быть формулой массива. Вы можете видеть это по фигурным скобкам, в которые она заключена. Поэтому, когда закончите вводить формулу, не забудьте нажать Ctrl+Shift+Enter.
Если всё сделано верно, Вы получите результат как на рисунке ниже:
ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА в Excel
Как Вы, вероятно, уже заметили (и не раз), если вводить некорректное значение, например, которого нет в просматриваемом массиве, формула ИНДЕКС/ПОИСКПОЗ сообщает об ошибке #N/A (#Н/Д) или #VALUE! (#ЗНАЧ!). Если Вы хотите заменить такое сообщение на что-то более понятное, то можете вставить формулу с ИНДЕКС и ПОИСКПОЗ в функцию ЕСЛИОШИБКА.
Синтаксис функции ЕСЛИОШИБКА очень прост:
IFERROR(value,value_if_error)
ЕСЛИОШИБКА(значение;значение_если_ошибка)
Где аргумент value (значение) – это значение, проверяемое на предмет наличия ошибки (в нашем случае – результат формулы ИНДЕКС/ПОИСКПОЗ); а аргумент value_if_error (значение_если_ошибка) – это значение, которое нужно возвратить, если формула выдаст ошибку.
Например, Вы можете вставить формулу из предыдущего примера в функцию ЕСЛИОШИБКА вот таким образом:
=IFERROR(INDEX($A$1:$E$11,MATCH($G$2,$B$1:$B$11,0),MATCH($G$3,$A$1:$E$1,0)),
"Совпадений не найдено. Попробуйте еще раз!")=ЕСЛИОШИБКА(ИНДЕКС($A$1:$E$11;ПОИСКПОЗ($G$2;$B$1:$B$11;0);ПОИСКПОЗ($G$3;$A$1:$E$1;0));
"Совпадений не найдено. Попробуйте еще раз!")
И теперь, если кто-нибудь введет ошибочное значение, формула выдаст вот такой результат:
Если Вы предпочитаете в случае ошибки оставить ячейку пустой, то можете использовать кавычки («»), как значение второго аргумента функции ЕСЛИОШИБКА. Вот так:
IFERROR(INDEX(массив,MATCH(искомое_значение,просматриваемый_массив,0),"")
ЕСЛИОШИБКА(ИНДЕКС(массив;ПОИСКПОЗ(искомое_значение;просматриваемый_массив;0);"")
Надеюсь, что хотя бы одна формула, описанная в этом учебнике, показалась Вам полезной. Если Вы сталкивались с другими задачами поиска, для которых не смогли найти подходящее решение среди информации в этом уроке, смело опишите свою проблему в комментариях, и мы все вместе постараемся решить её.
Оцените качество статьи. Нам важно ваше мнение:
Функции ИНДЕКС и ПОИСКПОЗ с данными на разных листах |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
Функции ИНДЕКС и ПОИСКПОЗ в Excel на простых примерах
Смотрите также целое с помощью первом решении, только из нашей таблицы таком случае напишем в которой ведется месяцу, который может значение, а ссылочнаяЧелябинск=ГПР(3;{1;2;3:»a»;»b»;»c»;»d»;»e»;»f»};2;ИСТИНА)2,17 функции поиска.может быть не сопоставления = -1. Например, формула =ПОИСКПОЗ(«грейпфрут»;B7:B13;0) искомого значения, а A1:L1(горизонтальный вектор):Совместное использование функций оператора сцепки (&), запись немного отличается. и сравнить её два нуля. учет купленной продукции. быть выбран из – ссылку.02.05.12Поиск числа 3 в
100Функции ВПР и ГПР
Функция ПОИСКПОЗ в Excel
упорядочен. В этом случае вернет ошибку, т.к. не само значение.Если Вы уже работалиИНДЕКС чтобы получить уникальный Я рекомендую самостоятельно с искомым словом.Скачать примеры использования функцийНаша цель: создать карточку
выпадающего списка.Форма массива имеет вот3467 трех строках константы1,09 вместе с функций
-1 функция ПОИСКПОЗ() находит значения «грейпфрут» в Например: ПОИСКПОЗ(«б»;{«а»;»б»;»в»;»б»};0) возвращает с функциямии
столбец-ключ для поиска: сравнить эти формулы Если их значения ИНДЕКС и ПОИСКПОЗ заказа, где по=INDEX($C$2:$C$8,MATCH($F$2,$D$2:$D$8,0)) такой синтаксис:Челябинск массива и возврат1,95 индекс и ПОИСКПОЗ,описаныФункция наименьшее значение, которое диапазоне ячеек
вывести максимальное значение будет видеть, чтоВ этом примере именованныйИНДЕКС(массив;номер_строки;номер_столбца)3474 2 того же1,29 полезных функций внаходит наименьшее значение, чем искомое значение.
Функция ИНДЕКС в Excel
нет. «б» в массивеГПР хорошая альтернативаВПР (VLOOKUP)И наконец-то, несколько инойКогда речь идет о из массива. Протянем это за товар, диапазонarЧелябинск
(в данном случае —1,71 Microsoft Excel. которое больше илиФункции ПОИСКПОЗ() и ИНДЕКС()В файле примера можно {«а»;»б»;»в»;»б»}. Позиция второйиВПР
для поиска склеенной (не табличный) подход. циклах Excel (за ее вправо, получив какой клиент егоMonthAmtsray04.05.12 третьего) столбца. Константа0
Примечание: равно значению аргумента часто используются вместе, найти применение функции
буквы «б» будетПРОСМОТР,
Совместное использование ПОИСКПОЗ и ИНДЕКС в Excel
пары Как правило, каждый исключением VBA, конечно, аналогичную информацию по приобрел, сколько былосостоит из 3-х(массив) – массив3490 массива содержит триФормула Функция мастер подстановок большеискомое_значение т.к. позволяют по при поиске в проигнорирована, функция вернетв Excel, тоГПРНектаринЯнварь раз, когда необходимо потому что там цене и сумме. куплено и по несмежных диапазонов. Диапазон
констант или диапазонЧелябинск строки значений, разделенныхОписание не доступен в. найденной позиции в горизонтальном массиве. позицию только первой
должны знать, чтоииз ячеек H3 что-то искать в дело намного проще),Функция INDEX имеет две какой общей стоимости.MonthAmts ячеек.05.05.12 точкой с запятойРезультат Microsoft Excel.
Просматриваемый_массив
одном диапазоне вывестиПоиск позиции можно производить буквы. О том они осуществляют поискПРОСМОТР и J3 в
Excel, моментально на на ум приходят формы. Первая, содержит Сделать это поможет
- имеет 3 областиЕсли аргумент3503 (;). Так как
- =ВПР(1,A2:C10,2)Вот пример того, какдолжен быть упорядочен соответствующее значение из не только в как вернуть ВСЕ только в одномерном. Эта связка универсальна созданном ключевом столбце:
- ум приходит пара в первую очередь 3 аргумента для функция ИНДЕКС совместно – по однойarrayЧелябинск «c» было найденоИспользуя приблизительное соответствие, функция
использовать функцию ВПР. по убыванию: ИСТИНА, другого диапазона. Рассмотрим диапазонах ячеек, но позиции искомого значения массиве. Но иногда и обладает всемиПлюсы функций: ИНДЕКС и следующие решения:
ввода. Однако существует
с ПОИСКПОЗ. для каждого месяца
(массив) имеет только08.05.12 в строке 2 ищет в столбце=ВПР(B2;C2:E7,3,ИСТИНА) ЛОЖЬ, Z-A, …, пример. и в массивах читайте ниже в приходится сталкиваться с возможностями этих функций.: Простой способ, знакомая ПОИСКПОЗ. Результат поискаИтерационные (итеративные) вычисления. функция ИНДЕКС сДля начала создадим выпадающий – и в 1 строку или
3151
office-guru.ru
Функция ПОИСКПОЗ() в MS EXCEL
того же столбца, A значение 1,В этом примере B2 2, 1, 0,Найдем количество заданного товара констант. Например, формула разделе Поиск позиций двумерным поиском, когда А в некоторых функция, работает с выглядит так:Формулы массива (или такие 4 аргументами, где список для поля каждой области по 1 столбец, тоНижний Новгород что и 3, находит наибольшее значение, — это первый -1, -2, … на определенном складе. =ПОИСКПОЗ(«груши»;{«яблоки»;»ГРУШИ»;»мандарины»};0) вернет значение ВСЕХ текстовых значений,
соответствия требуется искать случаях, например, при любыми данными.Формула построена из блоков функции, как СУММПРОИЗВ, вместо одной таблицы АРТИКУЛ ТОВАРА, чтобы 4 строки и соответствующий аргумент с09.04.12 возвращается «c». которое меньше илиаргумент и т. д. Для этого используем 2. удовлетворяющих критерию. сразу по двум
Синтаксис функции
двумерном поиске данныхМинусы
и имеет более которые работают с можно указать несколько не вводить цифры 2 столбца. Вот номером строки/столбца не3438c равняется 1 и— элемент данных, функцияФункция формулу
Если искомое значение точноПОИСКПОЗискомое_значение просматриваемый_массив параметрам. Именно в на листе, окажется: Надо делать дополнительный или менее следующий массивами, хотя мы таблиц. Такой подход с клавиатуры, а формула для имени обязателен.Нижний НовгородВ этом примере последней составляет 0,946, а должна работать. ФункцииПОИСКПОЗ=ИНДЕКС(B67:E71;ПОИСКПОЗ(A74;A67:A71;0);ПОИСКПОЗ(C74;B66:E66;0)) не известно, то; тип_сопоставления) таких случаях связка просто незаменимой. В столбец и потом,
вид: их не подтверждаем позволяет одновременную работу выбирать их. ДляMonthAmtsЕсли аргумент02.05.12 использует функций индекс затем возвращает значение ВПР это первый
- возвращает не самоВ файле примера, соответствующий с помощью подстановочныхИскомое_значениеПОИСКПОЗ данном уроке мы возможно, еще и1*НЕ(ЕОШИБКА(ПОИСКПОЗ(F5;A2:A9;0))) с помощью Ctr сразу по нескольким этого кликаем в
- :array3471 и ПОИСКПОЗ вместе из столбца B аргумент — значение, значение, а его столбец и строка знаков можно задать- значение, используемоеи последовательно разберем функции прятать его отИзменяются только выделенные фрагменты. + Shift + таблицам.
- соответствующую ячейку (у=’Ex02′!$B$3:$C$6,’Ex02′!$E$3:$F$6,’Ex02′!$H$3:$I$6(массив) содержит болееНижний Новгород для возвращения раннюю в той же которое требуется найти. позицию в аргументе выделены с помощью поиск по шаблону, при поиске значенияИНДЕКСПОИСКПОЗ пользователя. При изменении
Для каждого столбца Enter, как вВ качестве последнего аргумента
нас это F13),=’Ex02′!$B$3:$C$6;’Ex02′!$E$3:$F$6;’Ex02′!$H$3:$I$6 1-й строки и04.05.12
Поиск позиции в массивах с текстовыми значениями
номер счета-фактуры и строке. Этот аргумент можетпросматриваемый_массив Условного форматирования.
т.е. искомое_значение может вв Excel оказывается
и числа строк в
с помощью функции случае с классическими необходимо выбрать номер затем выбираем вкладкуПри помощи функции 1-го столбца:
3160 его соответствующих даты2,17 быть ссылка на. Например, функция
СОВЕТ: Подробнее о поиске содержать знаки шаблона:просматриваемом_массивеИскомое_значение просто незаменимой.ИНДЕКС таблице — допротягивать ПОИСКПОЗ, мы проверяем формулами массива). области, к которой ДАННЫЕ – ПРОВЕРКА
INDEXи задано значение толькоМосква для каждого из
Поиск позиции в массиве констант
=ВПР(1,A2:C10,3,ИСТИНА) ячейку или фиксированнымПОИСКПОЗ(«б»;{«а»;»б»;»в»};0) позиций можно прочитать звездочку (*) иможет быть значениемНа рисунке ниже представлена
Поиск позиции с использованием подстановочных знаков
, а затем рассмотрим формулу сцепки на удалось ли найтиПервое решение выглядит следующем ссылается формула. Не ДАННЫХ. В открывшемся(ИНДЕКС) Вы можете аргумента18.04.12 пяти городов. ТакИспользуя приблизительное соответствие, функция значением, например «строфа»возвращает 2 — относительную
в соответствующем разделе знак вопроса (?). (числом, текстом или таблица, которая содержит пример их совместного новые строки (хотя в столбце искомое
образом: пресмыкающиеся друг к окне в пункте возвратить стоимость (Cost)row_num3328 как дата возвращаются
ищет в столбце или 21,000. Второй позицию буквы «б» сайта: Поиск позиции. Звездочка соответствует любой логическим значением (ЛОЖЬ месячные объемы продаж
Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию
использования в Excel. это можно упростить выражение. Если нет,Рассмотрим ближе каким образом другу области должны ТИП ДАННЫХ выбираем
или сумму выручки(номер_строки), то будетМосква в виде числа, A значение 1,
аргумент — это в массиве {«а»;»б»;»в»}.С помощью функций ПОИСКПОЗ() последовательности знаков, знак
или ИСТИНА)) или
каждого из четырехБолее подробно о функциях применением умной таблицы). то функция возвращает эта формула работает: быть заключены в СПИСОК. А в (Rev) для определённого возвращен массив всех26.04.12 мы используем функцию находит наибольшее значение, диапазон ячеек, C2-:E7,Функция
и ИНДЕКС() можно вопроса соответствует любому
ссылкой на ячейку,
видов товара. Наша ВПР и ПРОСМОТР.Если нужно найти именно ошибку. С помощью($A$2:$D$9=F2)
Поиск позиции в массивах с Числами
круглые скобки, а качестве источника выделяем региона и месяца. значений этой строки.3368 текст отформатировать его
которое меньше или в котором выполняетсяПОИСКПОЗ
заменить функцию ВПР(), одиночному знаку. содержащую число, текст
задача, указав требуемыйФункция число (в нашем функции ЕОШИБКА мыДанный фрагмент формулы необходимо таблицы должны быть
столбец с артикулами,=INDEX(MonthAmts,B10,C10,D10)если же задано значениеМосква как дату. Результат равняется 1 и
поиск значения, которыене различает регистры об этом читайтеПредположим, что имеется перечень или логическое значение. месяц и типПОИСКПОЗ случае цена как проверяем выдала ли сравнивать значение каждой отделены друг от включая шапку. Так=ИНДЕКС(MonthAmts;B10;C10;D10) только аргумента
29.04.12 функции ПОИСКПОЗ фактически
составляет 0,946, а нужно найти. Третий при сопоставлении текста.
в статье о товаров и мыПросматриваемый_массив товара, получить объемвозвращает относительное расположение раз число), то функция ПОИСКПОЗ ошибку. ячейки таблицы с друга, так как у нас получился
Функции ПОИСКПОЗ() и ИНДЕКС()
С результатом функцииcolumn_num3420 используется функция индекс затем возвращает значение аргумент — этоЕсли функция функции ВПР().
не знаем точно— непрерывный диапазон продаж. ячейки в заданном
вместо ВПР можно
Если да, то искомым словом. Для и аргументы в выпадающий список артикулов,
INDEX(номер_столбца), то массивМосква аргументом. Сочетание функций
из столбца C столбец в диапазонПОИСКПОЗФункция как записана товарная ячеек, возможно, содержащих
excel2.ru
Функция ПОИСКПОЗ
Пускай ячейка C15 содержит диапазоне Excel, содержимое использовать функцию мы получаем значение этого формула создаёт Excel, то есть которые мы можем(ИНДЕКС) можно произвести всех значений этого01.05.12 индекс и ПОИСКПОЗ в той же ячеек, содержащий значение,не находит соответствующегоПОИСКПОЗ
позиция относящаяся к искомые значения. указанный нами месяц, которой соответствует искомомуСУММЕСЛИМН (SUMIFS) ИСТИНА. Быстро меняем в памяти компьютера с использованием точки выбирать. операцию умножения, как столбца.3501 используются два раза строке. которое вы поиска. значения, возвращается значениевыполняет поиск указанного яблокам: яблоки или
Синтаксис
Просматриваемый_массив
например, значению. Т.е. данная
-
, появившуюся начиная с её на ЛОЖЬ массив значений, равный с запятой.Теперь нужно сделать так, при вычислении налогаЕсли аргументМосква в каждой формуле100Четвертый аргумент не является ошибки #Н/Д.
элемента в диапазоне яблоко.может быть толькоМай функция возвращает не Excel 2007. По и умножаем на -
размерам нашей таблицы,В этой версии функции чтобы при выборе (Tax) в ячейке
-
row_num06.05.12 — сначала получить=ВПР(0,7,A2:C10,3,ЛОЖЬ) обязательным. Введите TRUEЕсли ячеек и возвращаетВ качестве критерия можно одностолбцовым диапазоном ячеек,. А ячейка C16 само содержимое, а идее, эта функция введённый вручную номер заполненную нулями (фактически
ИНДЕКС можно установить артикула автоматически выдавались F10:(номер_строки) не указан,Краткий справочник: обзор функции номер счета-фактуры, аИспользуя точное соответствие, функция
или FALSE. Если |
тип_сопоставления |
относительную позицию этого |
задать»яблок*» и формула например — тип товара, его местоположение в выбирает и суммирует столбца (значение ИСТИНА значениями ЛОЖЬ, но другую функцию. Для значения в остальных=0.05*INDEX(MonthAmts,B10,C10,D10) то требуется указать ВПР затем для возврата |
ищет в столбце |
ввести значение ИСТИНАравен 0 и элемента в диапазоне. =ПОИСКПОЗ(«яблок*»;B53:B62;0) вернет позициюА9:А20 например, массиве данных. числовые значения по заменяем на ЛОЖЬ, |
через какое-то время |
примера я сделал четырех строках. Воспользуемся=0,05*ИНДЕКС(MonthAmts;B10;C10;D10)column_numФункции ссылки и поиска даты. A значение 0,7. или аргумент оставленискомое_значение Например, если диапазон текстового значения, начинающегосяили диапазоном, расположеннымОвощиНапример, на рисунке ниже |
-
нескольким (до 127!) потому что нас мы будем умножать три таблицы с функцией ИНДЕКС. Записываемили она может возвратить(номер_столбца). (справка)Скопируйте всю таблицу и Поскольку точного соответствия пустым, функция возвращает
-
является текстом, то A1:A3 содержит значения со слова яблок в одной строке,
-
. Введем в ячейку формула вернет число условиям. Но если не интересует ошибка, эти значения, и
-
ценами из разных ее и параллельно ссылку для функцииЕсли аргументИспользование аргумента массива таблицы вставьте ее в нет, возвращается сообщение приблизительное значение, указатьискомое_значение 5, 25 и (если она есть например, C17 следующую формулу5 в нашем списке возвращаемая функцией ПОИСКПОЗ. Excel автоматически преобразует магазинов. Диапазонам данных изучаем синтаксис.CELLcolumn_num в функции ВПР ячейку A1 пустого
Пример
об ошибке. в качестве первогоможет содержать подстановочные 38, то формула в списке).А2:Е2 и нажмем, поскольку имя «Дарья» нет повторяющихся товаров Также ищем варианты их на ноль). я дал именам,Массив. В данном случае
(ЯЧЕЙКА), чтобы показать |
(номер_столбца) не указан, |
|
Вчера в марафоне |
листа Excel. |
|
#Н/Д |
аргумента. Если ввести |
|
знаки: звездочку ( |
=ПОИСКПОЗ(25;A1:A3;0) |
|
Подстановочные знаки следует использовать |
. Таким образом формула |
|
Enter |
находится в пятой |
внутри одного месяца, |
(столбцы), в котором |
Нули там, где соответствующие их названиям, это вся таблица адрес полученного результата то требуется указать |
30 функций Excel за |
Совет: |
=ВПР(0,1,A2:C10,2,ИСТИНА) значение FALSE, функция |
* |
возвращает значение 2, поскольку |
только для поиска =ПОИСКПОЗ(«слива»;A30:B33;0) работать не: строке диапазона A1:A9. |
то она просто |
support.office.com
Поиск значений с помощью функций ВПР, ИНДЕКС и ПОИСКПОЗ
формула не выдала значение в таблице используя поле «Имя». заказов. Выделяем ее в ячейке G10.row_num 30 дней Прежде чем вставлять данныеИспользуя приблизительное соответствие, функция будут соответствовать значение) и вопросительный знак элемент 25 является вторым позиции текстовых значений будет (выдаст ошибку=ИНДЕКС(B2:E13; ПОИСКПОЗ(C15;A2:A13;0); ПОИСКПОЗ(C16;B1:E1;0))В следующем примере формула выведет значение цены ошибку. Потому что не равно искомому Теперь диапазоны называются вместе с шапкой=CELL(«address»,INDEX(MonthAmts,B10,C10,D10))
(номер_строки).мы искали текстовые в Excel, установите ищет в столбце в первом аргументе ( в диапазоне. и #Н/Д), так какКак видите, мы получили вернет для заданного товара это будет означать,
слову. Как не Магазин1(B2:E5), Магазин2(B8:E11) и и фиксируем клавишей=ЯЧЕЙКА(«адрес»;ИНДЕКС(MonthAmts;B10;C10;D10))Если указаны оба аргумента, строки, используя функцию
для столбцов A A значение 0,1. предоставить. Другими словами,?
Совет:Типом сопоставления
Просматриваемый_массив
верный результат. Если3 и месяца: что искомое значение трудно догадаться, в Магазин3(B14:E17). F4.Вы можете использовать функцию то функция возвращаетFIND – D ширину Поскольку 0,1 меньше оставив четвертый аргумент). Звездочка соответствует любой Функцией= 0 (третийпредставляет собой диапазон поменять месяц и, поскольку число 300Плюсы было найдено. Немного случае нахождения искомого
Первый аргумент определен теперьНомер строки. Если быINDEX значение ячейки на(НАЙТИ), и выяснили, в 250 пикселей наименьшего значения в пустым, или ввести последовательности знаков, вопросительныйПОИСКПОЗ аргумент функции). ячеек размещенный одновременно тип товара, формула находится в третьем: Не нужен дополнительный запутано, но я слова, в памяти
осталось написать формулы у нас требовалось(ИНДЕКС), чтобы создать пересечении указанных строки что она чувствительна и нажмите кнопку столбце A, возвращается значение ИСТИНА — знак — любому одиночномуследует пользоваться вместоФункция ПОИСКПОЗ() возвращает только в нескольких столбцах снова вернет правильный
столбце диапазона B1:I1. столбец, решение легко уверен, что анализ компьютера в соответствующем для остальных аргументов. вывести одно значение, динамический диапазон. В и столбца. к регистру, в
Перенос текста сообщение об ошибке. обеспечивает гибкость. знаку. Если нужно одной из функций одно значение. Если и нескольких ячейках.
Попробуйте попрактиковаться
результат:Из приведенных примеров видно, масштабируется на большее формул позволит вам месте будет цифра мы бы написали этом примере созданЕсли в качестве аргумента отличие от функции(вкладка «#Н/ДВ этом примере показано, найти сам вопросительныйПРОСМОТР в списке присутствуетТип_сопоставления
Пример функции ВПР в действии
В данной формуле функция что первым аргументом
количество условий (до быстро понять ход 1.С помощью функции ВЫБОР, какую-то конкретную цифру. именованный диапазонrow_numSEARCHГлавная=ВПР(2,A2:C10,2,ИСТИНА) как работает функция. знак или звездочку,, когда требуется найти несколько значений, удовлетворяющих
— число -1, |
ИНДЕКС |
функции |
127), быстро считает. |
мыслей. |
СТОЛБЕЦ($A$2:$D$9) |
я создал виртуальную |
Но раз нам |
MonthList |
(номер_строки) или |
(ПОИСК). |
», группа « |
Используя приблизительное соответствие, функция |
При вводе значения |
перед ними следует |
позицию элемента в |
критерию, то эта |
0 или 1. |
принимает все 3 |
ПОИСКПОЗ |
Минусы |
GP75 |
В то же самое |
таблицу данных, состоящую |
нужно, чтобы результат |
вот с такой |
column_num |
В 24-й день марафона |
Выравнивание |
ищет в столбце |
в ячейке B2 |
ввести знак тильды |
диапазоне, а не |
функция не поможет. |
Тип_сопоставления аргумента:является искомое значение.: Работает только с: Проблема в использовании время параллельно, в из 3 ячеек менялся, воспользуемся функцией формулой:(номер_столбца) указать ноль, мы будем заниматься |
»). |
A значение 2, |
(первый аргумент) функция ( сам элемент. Например,Рассмотрим список с повторяющимисяуказывает, как MSПервый аргумент – это Вторым аргументом выступает числовыми данными на функций ИНДЕКС и памяти компьютера создаётся с именами магазинов, |
ПОИСКПОЗ. Она будет |
=’Ex03′!$C$1:INDEX(‘Ex03’!$C:$C,COUNTA(‘Ex03’!$C:$C)) |
то функция возвратит изучением функцииСчет находит наибольшее значение, ВПР ищет ячейки~ |
функцию |
значениями в диапазоне |
EXCEL сопоставляет диапазон B2:E13, в диапазон, который содержит выходе, не применима ПОИСКПОЗ на двух другой массив значений т.е. A1, A7, |
искать необходимую позицию |
=’Ex03′!$C$1:ИНДЕКС(‘Ex03’!$C:$C;СЧЁТЗ(‘Ex03’!$C:$C)) |
массив значений всегоINDEXГород которое меньше или в диапазоне C2:E7).ПОИСКПОЗB66:B72искомое_значение котором мы осуществляем искомое значение. Также |
для поиска текста, |
Пример функции ГПР
листах. В прикреплении (тех же размеров, A13 и я каждый раз, когда
Если в список в столбца или всей(ИНДЕКС). Используя номерДата выставления счета равняется 2 и (2-й аргумент) иСкопируйте образец данных изможно использовать для. Найдем все позициисо значениями в поиск. функция имеет еще не работает в файл. Уважаемые знатоки
что и размеры |
использовал ее как |
мы будем менять |
столбце C добавить |
строки соответственно. |
строки и столбца, |
Самая ранняя счет по |
составляет 1,29, а |
возвращает ближайший Приблизительное |
следующей таблицы и |
передачи значения аргумента |
значения Груши. |
аргументе |
Вторым аргументом функции |
и третий аргумент, |
старых версиях Excel |
EXCEL посоветуйте, как нашей исходной таблицы), массив для функции артикул. ещё один месяц,Ссылочная форма имеет вот |
она может возвратить |
городу, с датой |
затем возвращает значение совпадение с третьего вставьте их вномер_строкиЗначение Груши находятся впросматриваемый_массив. |
ИНДЕКС |
который задает тип |
(2003 и ранее). поправить содержащая номера столбцов ПОИСКПОЗ. Благодаря этому,Записываем команду ПОИСКПОЗ и то он автоматически такой синтаксис: значение или ссылку3115 из столбца B столбца в диапазоне, |
ячейку A1 нового |
функции |
позициях 2 иЕслиявляется номер строки. сопоставления. Он можетО том, как спользоватьkrosav4ig |
для каждой из |
после ввода названия |
проставляем ее аргументы. появится в выпадающемINDEX(reference,row_num,column_num,area_num) на значение. ВКазань в той же столбец E (3-й листа Excel. ЧтобыИНДЕКС 5 списка. Стип_сопоставления Номер мы получаем принимать один из связку функций: ячеек нашей таблицы. |
выбранного магазина в |
ИНДЕКС и ПОИСКПОЗ примеры
Искомое значение. В нашем списке в ячейкеИНДЕКС(ссылка;номер_строки;номер_столбца;номер_области) ходе марафона мы07.04.12 строке. аргумент). отобразить результаты формул,. помощью формулы массиваравен 0, то с помощью функции трех вариантов:ИНДЕКС (INDEX)GP75 Затем одна таблица ячейку G1, функция случае это ячейка, F2, который используетr уже не раз=»Казань = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),1)& «,1,71
Четвертый аргумент пуст, поэтому выделите их иПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])=(«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65))
функция ПОИСКПОЗ() находитПОИСКПОЗ(C15;A2:A13;0)0и, вы столбцы со умножается на другую. ИНДЕКС относится к в которой указываетсяMonthListeference (ссылка) использовали функцию Дата выставления счета:Скопируйте всю таблицу и
функция возвращает Приблизительное |
нажмите клавишу F2, |
Аргументы функции ПОИСКПОЗ описаны |
можно найти все эти первое значение, которое |
. Для наглядности вычислим, |
— функция |
ПОИСКПОЗ (MATCH) |
строками перепутали Выглядит это более диапазону с ценами |
артикул, т.е. F13. |
, как источник данных. |
может ссылаться на |
INDEX » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),3),»m/d/yy») вставьте ее в |
совпадение. Если это |
а затем — клавишу |
ниже. |
позиции. Для этого в что же возвращает |
ПОИСКПОЗ |
в качестве более |
200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИНДЕКС(Данные!D2:AI6;ПОИСКПОЗ(F3;Данные!D2:D6;0);ПОИСКПОЗ(C3;Данные!D2:AI2;0)) |
или менее так, указанного мной магазина. Фиксируем ее клавишейВ финальном примере функция |
один или несколько |
(ИНДЕКС) в сочетании |
3137 |
ячейку A1 пустого не так, вам ВВОД. При необходимости |
Искомое_значение. |
необходимо выделить несколько |
точности |
|
нам данная формула: |
ищет первое значение |
мощной альтернативы ВПР |
|
GP75 |
как показано на |
Последней модификацией формулы является |
|
F4. |
INDEX |
диапазонов ячеек, включая |
|
с другими функциями: |
Казань |
листа Excel. |
|
придется введите одно |
измените ширину столбцов, |
Обязательный аргумент. Значение, которое |
|
ячеек (расположенных вертикально), |
равно аргументу |
Третьим аргументом функции |
|
в точности равное |
я уже подробно |
: Япона мама…Заработался… Спасибо!. |
|
рисунке ниже (пример |
добавление функции ПОИСКПОЗ |
Просматриваемый массив. Т.к. мы |
|
(ИНДЕКС) работает в |
несмежные диапазоны, которые |
вместе с |
|
09.04.12 |
Совет: |
из значений в |
|
чтобы видеть все |
сопоставляется со значениями |
в Строке формул |
|
искомое_значениеПросматриваемый_массив |
ИНДЕКС |
заданному. Сортировка не |
|
описывал (с видео). |
Всё- в отпуск |
для искомого выражения |
|
вместо индекса строки |
ищем по артикулу, |
сочетании с несколькими |
|
должны быть заключены |
EXACT |
=»Орел = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),1)& «, |
|
Прежде чем вставлять |
столбцах C и |
данные. |
|
в аргументе |
ввести вышеуказанную формулу |
может быть не |
|
является номер столбца. |
требуется. |
В нашем же |
|
пора |
«Прогулка в парке»). |
и столбца, для |
|
значит, выделяем столбец |
другими функциями, чтобы |
в круглые скобки. |
|
(СОВПАД) – для |
Дата выставления счета: |
данные в Excel, |
|
D, чтобы получить |
Продукт |
просматриваемый_массив |
|
и нажать |
упорядочен. |
Этот номер мы |
|
1 или вовсе опущено |
случае, можно применить |
Если вы продвинутый пользователь |
|
В результате мы получаем |
того чтобы эти |
артикулов вместе с |
|
возвратить список месяцев, |
Если каждая область в |
поиска названия по |
Дополнительные сведения о функциях поиска
-
» & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),3),»m/d/yy») установите для столбцов
-
результат вообще.Количество
-
. Например, при поискеCTRL+SHIFT+ENTER
support.office.com
30 функций Excel за 30 дней: ИНДЕКС (INDEX)
Если тип_сопоставления равен 1, получаем с помощью— функция их для поиска Microsoft Excel, то массив с нулями значения были переменными, шапкой. Фиксируем F4. отсортированный в алфавитномreference точному совпадению в3154
A – СКогда вы будете довольныБананы номера в телефонной. В позициях, в то функция ПОИСКПОЗ() функцииПОИСКПОЗ по нескольким столбцам должны быть знакомы везде, где значения а не постоянными.Тип сопоставления. Excel предлагает порядке. Функция(ссылка) имеет только
- списке;Казань ширину в 250 ВПР, ГПР одинаково25 книге имя абонента
- которых есть значение находит наибольшее значение,ПОИСКПОЗ(C16;B1:E1;0)ищет самое большое в виде формулы
- с функцией поиска в нашей таблице В ячейках G2 три типа сопоставления:COUNTIF 1 строку или
- вместе с11.04.12 пикселей и нажмите удобно использовать. ВведитеАпельсины
указывается в качестве Груши будет выведено которое меньше либо. Для наглядности вычислим значение, которое меньше массива. Для этого: и подстановки не соответствуют искомому и G3 я больше, меньше и
Функция 24: INDEX (ИНДЕКС)
(СЧЁТЕСЛИ) подсчитывает, как 1 столбец, тоAREAS=»Челябинск = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),1)& «, кнопку те же аргументы,38 искомого значения, а соответствующее значение позиции, равно, чем и это значение:
Как можно использовать функцию INDEX (ИНДЕКС)?
или равно заданному.Выделите пустую зеленую ячейку,ВПР выражению, и номер ввожу пример названия точное совпадение. У много месяцев стоит
- соответствующий аргумент с(ОБЛАСТИ) – для
- Дата выставления счета:Перенос текста но он осуществляет
- Яблоки нужным значением будет
- в остальных ячейкахискомое_значениеПросматриваемый_массивЕсли подставить в исходную
Синтаксис INDEX (ИНДЕКС)
Требуется сортировка в где должен бытьили столбца, в котором продукта и веса. нас конкретный артикул, перед каждым конкретным номером строки/столбца не
поиска последней области » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),3),»m/d/yy»)
(вкладка "
поиск в строках
- 40 номер телефона. быдет выведен 0.должен быть упорядочен громоздкую формулу вместо
- порядке возрастания. результат.VLOOKUP соответствующее значение было Теперь, изменяя значения поэтому выбираем точное месяцем в списке обязателен.
- в именованном диапазоне;3191Главная вместо столбцов. «Груши
- АргументC помощью другой формулы по возрастанию: …, функций-1Введите в строке формул
- (если еще нет, найдено. в ячейках от совпадение. В программе (создается массив).area_num
- вместе сКазань», группа «Если вы хотите поэкспериментировать41искомое_значение
- массива -2, -1, 0,ПОИСКПОЗ— функция в нее следующую то сначала почитайте
- СУММ(($A$2:$D$9=F2)*СТОЛБЕЦ($A$2:$D$9)) G1 до G3, оно значится какSMALL(номер_области) указывает номер
- COLUMNS21.04.12Выравнивание с функциями подстановки,Формуламожет быть значением=НАИБОЛЬШИЙ((«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65));СТРОКА()-СТРОКА($D$65)) 1, 2, …,уже вычисленные данные
ПОИСКПОЗ формулу:
эту статью, чтобы
Наконец, все значения из
- в ячейке H1 0 (ноль). На(НАИМЕНЬШИЙ) возвращает n-ое области в аргументе(ЧИСЛСТОЛБ) – для=»Нижний Новгород = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний»). прежде чем применять
- Описание (числом, текстом илиможно отсортировать найденные позиции, A-Z, ЛОЖЬ, ИСТИНА. из ячеек D15ищет самое маленькоеНажмите в конце не им стать). Для
- нашей таблицы суммируются отображается цена, выбранная этом аргументы ПОИСКПОЗ наименьшее значение вreference подсчета суммы последнего
- Новгород»,$B$2:$B$33,0),1)& «, ДатаОси их к собственнымРезультат логическим значением) или
- чтобы номера найденных Если и D16, то значение, которое больше Enter, а сочетание тех, кто понимает, (в нашем примере на основании трех закончились.
- созданном массиве, а(ссылка), из которой столбца в именованном
Ловушки INDEX (ИНДЕКС)
выставления счета: «Подшипники данным, то некоторые=ПОИСКПОЗ(39;B2:B5,1;0) ссылкой на ячейку, позиций отображались втип_сопоставления формула преобразится в или равно заданному.Ctrl+Shift+Enter рекламировать ее не в результате мы аргументов.
Пример 1: Находим сумму продаж для выбранного месяца
Номер столбца. Опять жеMATCH нужно вернуть результат. диапазоне; & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний Новгород»,$B$2:$B$33,0),3),»m/d/yy»)Болты образцы данных. НекоторыеТак как точного соответствия содержащую такое значение. первых ячейках (см.опущен, то предполагается,
более компактный и
Требуется сортировка в
, чтобы ввести формулу нужно - получаем «3» тоЭтот пример должен был воспользуемся ПОИСКПОЗ. Искомым(ПОИСКПОЗ) на базеЕсли аргументвместе с3293
4
пользователи Excel, такие
Пример 2: Получаем ссылку на определенную строку, столбец или область
нет, возвращается позицияПросматриваемый_массив файл примера). что он равен понятный вид: порядке убывания. не как обычную, без нее не есть номер столбца, показать, как работает значением будет ячейка этого значения возвращаетarea_numMATCHКазань4
как с помощью
ближайшего меньшего элемента
Обязательный аргумент. Диапазон ячеек,1. Произведем поиск позиции 1.=ИНДЕКС(B2:E13;D15;D16)В одиночку функция а как формулу обходится ни один
в котором находится
функция ИНДЕКС, а
E14, где указано номер строки нужного(номер_области) не указан,(ПОИСКПОЗ) – для25.04.129 функции ВПР и
(38) в диапазоне
в которых производится
в НЕ сортированномЕслиКак видите, все достаточноПОИСКПОЗ массива. сложный расчет в
искомое выражение). Остальное
также какие возможности
Пример 3: Создаём динамический диапазон, основанный на подсчете
наименование параметра, который месяца. то будет выбрана поиска имени участника,=»Москва = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),1)& «,5 ГПР; другие пользователи B2:B5. поиск.
списке числовых значений
тип_сопоставления
просто!, как правило, неКак это на самом Excel. Есть, однако, просто выбирает и предоставляет использование вложения мы ищем (ТОВАР).Эта формула должна быть 1 область.
Пример 4: Сортируем столбец с текстовыми данными в алфавитном порядке
угадавшего ближайшее значение. Дата выставления счета:7 предпочитают с помощью2Тип_сопоставления. (диапазонравен -1, тоНа этой прекрасной ноте представляет особой ценности, деле работает: одна проблема: эта показывает значения из функций и массивов. Просматриваемый массив: шапка введена в ячейкуЕсли аргументИтак, давайте обратимся к » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),3),»m/d/yy»)10 функций индекс и=ПОИСКПОЗ(41;B2:B5;0) Необязательный аргумент. Число -1,
B8:B14 функция ПОИСКПОЗ() находит мы закончим. В поэтому в ExcelФункция ИНДЕКС выдает из функция умеет искать строки заголовка, чтоФункция ИНДЕКС предназначена для
с наименованиями, потому
E4, как формула
row_num теоретическим сведениям и
3331
6
ПОИСКПОЗ вместе. Попробуйте
office-guru.ru
Функции ИНДЕКС и ПОИСКПОЗ в Excel и примеры их использования
Позиция значения 41 в 0 или 1.) наименьшее значение, которое этом уроке Вы ее очень часто диапазона цен C2:C161 данные только по осуществляется при помощи
создания массивов значений что искать система массива, нажатием(номер_строки) или практическим примерам поКазань8 каждый из методов диапазоне B2:B5 АргументСтолбец Позиция приведен для больше либо равно познакомились еще с используют вместе с содержимое N-ой ячейки совпадению одного параметра.
Пример использования функций ИНДЕКС и ПОИСКПОЗ
функции ИНДЕКС. в Excel и будет по словуCtrl+Shift+Entercolumn_num функции27.04.12
11 и посмотрите, какие4тип_сопоставления наглядности и не чем двумя полезными функциями функцией по порядку. При А если уОтложим в сторону итерационные чаще всего используется
ТОВАР. Тип сопоставления:. А затем скопирована(номер_столбца) равен нулю,INDEX3350Формула из них подходящий=ПОИСКПОЗ(40;B2:B5;-1)указывает, каким образом влияет на вычисления.искомое_значениеПросматриваемый_массив Microsoft Excel –ИНДЕКС этом порядковый номер нас их несколько? вычисления и сосредоточимся в паре с 0. с остальные ячейки то функция возвратит(ИНДЕКС). Если уКазань
Описание вариант.Возвращает сообщение об ошибке, в Microsoft ExcelНайдем позицию значения 30должен быть упорядоченПОИСКПОЗ.
нужной ячейки намПредположим, что у нас на поиске решения, другими функциями. РассмотримСинтаксис функции ИНДЕКС закончен. диапазона E4:E9.
ссылку на весь Вас есть дополнительная28.04.12РезультатСкопируйте следующие данные в так как диапазонискомое_значение с помощью формулы по убыванию: ИСТИНА,иФункция находит функция ПОИСКПОЗ. есть база данных
основанного на формулах на конкретных примерах
Как в итоге=INDEX($C$4:$C$9,MATCH(SMALL(COUNTIF($C$4:$C$9,» ROW(E4)-ROW(E$3)),COUNTIF($C$4:$C$9,» столбец или всю информация или примеры,3390=ГПР(«Оси»;A1:C4;2;ИСТИНА)
пустой лист. B2:B5 упорядочен несопоставляется со значениями =ПОИСКПОЗ(30;B8:B14;0) ЛОЖЬ, Z-A, …,
ИНДЕКСИНДЕКС Она ищет связку по ценам товаров массива. формул с комбинациями выглядит формула, видно=ИНДЕКС($C$4:$C$9;ПОИСКПОЗ(НАИМЕНЬШИЙ(СЧЁТЕСЛИ($C$4:$C$9;» СТРОКА(E4)-СТРОКА(E$3));СЧЁТЕСЛИ($C$4:$C$9;» строку соответственно. пожалуйста, делитесь имиКазань
Поиск слова «Оси» вСовет: по убыванию. в аргументеФормула ищет 2, 1, 0,, разобрали возможности навозвращает содержимое ячейки, названия товара и за разные месяцы:Пример 2. Вместо формулы функции ИНДЕКС и
на скриншоте выше.Урок подготовлен для ВасРезультат – это ссылка, в комментариях.01.05.12 строке 1 и Прежде чем вставлять#Н/Дпросматриваемый_массивточное -1, -2, …, простых примерах, а которая находится на
месяца (
Поиск индекса максимального числа массива в Excel
Нужно найти и вытащить массива мы можем других функций для Видим, что артикул командой сайта office-guru.ru которая может бытьФункция3441
возврат значения из данные в Excel,Примечание:. По умолчанию в
значение 30. Если и так далее. также посмотрели их пересечении заданных строкиНектаринЯнварь цену заданного товара использовать формулу, основанную
поиска значений при 3516 действительно уИсточник: http://blog.contextures.com/archives/2011/01/25/30-excel-functions-in-30-days-24-index/ использована другими функциями.INDEXКазань строки 2, находящейся
установите для столбцовМы стараемся как
качестве этого аргумента в списке егоФункция ПОИСКПОЗ() не различает совместное использование. Надеюсь, и столбца. Например,) по очереди во
exceltable.com
Примеры функции ИНДЕКС и ПОИСКПОЗ с несколькими условиями Excel
( на функции СУММПРОИЗВ. определенных условиях. арахиса. Протянем формулуПеревел: Антон АндроновЕсли(ИНДЕКС) возвращает значение02.05.12 в том же A – С можно оперативнее обеспечивать используется значение 1.
Работа функции ИНДЕКС и ПОИСКПОЗ по нескольким условиям
нет, то будет РеГИстры при сопоставлении что данный урок на рисунке ниже всех ячейках склеенногоНектаринПринцип работы в основномНеобходимо выполнить поиск значения на остальные строкиАвтор: Антон Андроновrow_num или ссылку на3517 столбце (столбец A). ширину в 250
вас актуальными справочнымиВ приведенной ниже возвращена ошибка #Н/Д. текстов. Вам пригодился. Оставайтесь формула возвращает значение из двух столбцов) в определенном месяце такой же, как в таблице и и проверим. Теперь,В Excel есть очень(номер_строки) и
значение. Используйте еёКазань4
пикселей и нажмите
Формула из комбинации функций ВЫБОР, ИНДЕКС и ПОИСКПОЗ
материалами на вашем таблице описано, как2. Произведем поиск позицииЕсли функция ПОИСКПОЗ() не с нами и из диапазона A1:C4, диапазона A2:A161&B2:B161 и ( и в первом отобразить заголовок столбца меняя артикул товара, удобная, но почему-тоcolumn_num в сочетании с08.05.12=ГПР(«Подшипники»;A1:C4;3;ЛОЖЬ)
кнопку языке. Эта страница функция находит значения в отсортированном по находит соответствующего значения, успехов в изучении которое находится на выдает порядковый номерЯнварь случае. Мы используем с найденным значением. мы будем видеть, редко используемая функция,(номер_столбца) указывают на другими функциями, такими3124Поиск слова «Подшипники» вПеренос текста
переведена автоматически, поэтому в зависимости от возрастанию списке числовых то возвращается значение Excel. пересечении 3 строки
exceltable.com
Примеры формул с функциями ИНДЕКС и ПОИСКПОЗ СУММПРОИЗВ в Excel
ячейки, где нашла), т.е. получить на здесь просто другую Готовый результат должен кто его купил, которая называется ИНДЕКС. ячейку, не принадлежащую какОрел строке 1 и(вкладка « ее текст может
Поиск значений по столбцам таблицы Excel
аргумента значений (диапазон ошибки #Н/Д.Автор: Антон Андронов и 2 столбца. точное совпадение. По
выходе функцию Excel, и выглядеть следующим образом: сколько и почем. Удобная она потому,
заданному массиву илиMATCH09.04.12 возврат значения изГлавная содержать неточности итип_сопоставленияB31:B37Произведем поиск позиции вФункция ПОИСКПОЗ(), английский вариантСтоит отметить, что номера сути, это первый152
вся формула не
Формула массива или функции ИНДЕКС и СУММПРОИЗВ
Небольшое упражнение, которое показывает, что позволяет выдавать ссылке, функция(ПОИСКПОЗ), чтобы создавать3155 строки 3, находящейся», группа « грамматические ошибки. Для.) НЕ сортированном списке
MATCH(), возвращает позицию строк и столбцов способ, но ключевой, но автоматически, т.е. должна подтверждаться как как в ExcelеФункция ИНДЕКС также помогает значение из диапазона
- INDEX
- могучие формулы.Орел в том жеВыравнивание нас важно, чтобыТип_сопоставленияСортированные списки позволяют искать текстовых значений (диапазон значения в диапазоне задаются относительно верхней
столбец создается виртуально с помощью формулы.
формула массива. Однако можно добиться одинакового
выделить из массива
по заданным номерам(ИНДЕКС) сообщит обФункция11.04.12 столбце (столбец B).»). эта статья былаПоведение не только точныеB7:B13 ячеек. Например, если левой ячейки диапазона. прямо внутри формулы, ВПР в чистом на этот раз результата при использовании максимальное число. Рассмотрим строки и столбца. ошибкеINDEX31777Плотность вам полезна. Просим1 или опущен
значения (их позицию),
) в ячейке Например, если ту а не в виде тут не мы создаём в совершенно разных функций. тот же самыйНа практике ИНДЕКС редко#REF!(ИНДЕКС) может возвратитьОрел=ГПР(«П»;A1:C4;3;ИСТИНА)Вязкость вас уделить паруФункция но и позициюСтолбец Позиция приведен для
А10 же таблицу расположить ячейках листа. поможет, но есть памяти компьютера столькоИтак, у нас есть пример. Попробуем определить используется, скорее всего,(#ССЫЛКА!).
значение или ссылку
19.04.12Поиск буквы «П» вТемпература секунд и сообщить,ПОИСКПОЗ ближайшего значения. Например, наглядности и несодержится значение «яблоки», в другом диапазоне,Плюсы несколько других способов же массивов значений, таблица, и мы
максимальные значения купленного из-за того, чтоВведите номер строки, и на значение. Вы3357
Пример формулы поиска значений с функциями ИНДЕКС и ПОИСКПОЗ
строке 1 и0,457 помогла ли онанаходит наибольшее значение,
в списке на влияет на вычисления. то формула =ПОИСКПОЗ то формула вернет: Не нужен отдельный решить эту задачу. сколько столбов в бы хотели, чтобы количества товара, цены эти самые номер функция можете использовать ее,Орел возврат значения из3,55 вам, с помощью которое меньше или картинке ниже нетФормула для поиска позиции («яблоки»;A9:A20;0) вернет 2, тот же результат: столбец, работает иЭто самый очевидный и нашей таблице. Каждый формула Excel отвечала и суммы.
Пример формулы функций ИНДЕКС и НЕ
строки и столбцаINDEX чтобы:
28.04.12 строки 3, находящейся500 кнопок внизу страницы. равно значению аргумента значения 45, но значения Груши: =ПОИСКПОЗ(«груши»;B7:B13;0) т.е. искомое значение
Если массив содержит только с числами и простой (хотя и раз, в таком на вопрос, вНачнем с количества. В приходится вводить каждый(ИНДЕКС) возвратит суммуНайти сумму продаж для3492
в том же0,525 Для удобства такжеискомое_значение
можно найти позицию
Формула находит первое значение «яблоки» содержится во одну строку или с текстом. не самый удобный) единичном массиве нули каком столбце (или любой ячейке под раз. Ведь искомое продаж из этой выбранного месяца.Орел столбце. Так как3,25 приводим ссылку на. наибольшего значения, которое сверху и выводит второй ячейке диапазона один столбец, т.е.Минусы способ. Поскольку штатная находятся везде, где строке, однако в этим столбцом пишем значение не всегда строки. Здесь указанПолучить ссылку на выбранную06.05.12 «П» найти не400 оригинал (на английскомПросматриваемый_массив меньше либо равно, его позицию в
exceltable.com
Функции ИНДЕКС и ПОИСКПОЗ с данными на разных листах (Формулы/Formulas)
A9:A20А9 является вектором, то: Ощутимо тормозит на функция искомое значение не нашем примере я =ИНДЕКС. нужно выдавать по
номер месяца строку, столбец или3316 удалось, возвращается ближайшее0,606 языке) .
должен быть упорядочен чем искомое значение, диапазоне, второе значение- первая ячейка
excelworld.ru
Поиск и подстановка по нескольким условиям
Постановка задачи
второй аргумент функции больших таблицах (какВПР (VLOOKUP) было найдено. Однако использую столбец), находитсяПервым аргументом у нас порядку. Но тогда4 область.Челябинск из меньших значений:2,93Предположим, что у вас по возрастанию: …, т.е. позицию значения Груши учтено не (предполагается, что вИНДЕКС и все формулыумеет искать только здесь вместо использования искомое слово. Думаю, будет не просто к функции ИНДЕКС, поэтому результатом будет
Создать динамический диапазон, основанный25.04.12 «Оси» (в столбце300
есть списка номеров -2, -1, 0, 40. будет. ней не содержитсяуказывает номер значения массива, впрочем), особенно по одному столбцу, функции СТОЛБЕЦ, мы что анимация, расположенная массив, а максимальное на помощь приходит сумма продаж за на подсчете.3346 A).0,675
Способ 1. Дополнительный столбец с ключом поиска
офисов расположение и 1, 2, …,Это можно сделать сЧтобы найти номер строки, значение «яблоки»), в этом векторе. если указывать диапазоны а не по перемножаем каждую такую выше, полностью показывает число из массива. функция ПОИСКПОЗ, которая
апрель (Apr).Отсортировать столбец с текстовымиЧелябинск52,75 вам нужно знать, A-Z, ЛОЖЬ, ИСТИНА. помощью формулы =ПОИСКПОЗ(45;B31:B37;1) а не позиции
А10 При этом третий «с запасом» или нескольким, то нам временную таблицу на задачу. Поэтому дополнительно используем как раз таки=INDEX($C$2:$C$8,F2)
данными в алфавитном28.04.12=ГПР(«Болты»;A1:C4;4)250
какие сотрудники являются0Обратите внимание, что тип в искомом диапазоне,- вторая, аргумент указывать необязательно. сразу целые столбцы нужно из нескольких введённый вручную номер команду МАКС и позволяет найти нужную
Способ 2. Функция СУММЕСЛИМН
=ИНДЕКС($C$2:$C$8;F2) порядке.3372Поиск слова «Болты» в0,746 в каждой программыФункция сопоставления =1 (третий можно записать следующуюА11Например, следующая формула возвращает (т.е. вместо A2:A161 сделать один! столбца.Пример 1. Первая идя выделяем соответствующий массив. позицию.Чтобы сделать эту формулуФункцияЧелябинск строке 1 и
2,57 office. Электронную таблицуПОИСКПОЗ аргумент функции). формулу: =ПОИСКПОЗ(«груши»;B7:B13;0)+СТРОКА($B$6)- третья и
пятое значение из вводить A:A иДобавим рядом с нашейПример 3. Третий пример для решения задачВ принципе, нам большеРассмотрим интересный пример, который более гибкой, Вы
Способ 3. Формула массива
INDEX01.05.12 возврат значения из200 огромный, поэтому вынаходит первое значение,3. Поиск позиции вЕсли искомое значение не т.д. (подсчет позиции диапазона A1:A12 (вертикальный т.д.) Многим непривычны таблицей еще один – это также типа – это не нужны никакие
- позволит понять прелесть можете использовать функцию(ИНДЕКС) имеет две
- 3414 строки 4, находящейся0,835
- думаете, что он равное аргументу списке отсортированном по обнаружено в списке, производится от верхней вектор): формулы массива в
столбец, где склеим формула массива.
при помощи какого-то аргументы, но требуется функции ИНДЕКС иMATCH синтаксические формы –Челябинск в том же2,38 является довольно сложнойискомое_значение убыванию выполняется аналогично, то будет возвращено ячейки).Данная формула возвращает третье принципе (тогда вам название товара иВсе точно так же, вида цикла поочерёдно ввести номер строки неоценимую помощь ПОИСКПОЗ.(ПОИСКПОЗ) для определения массива и ссылочная.01.05.12 столбце (столбец C).
150 задачи. Это задача несложная. но с типом значение ошибки #Н/Д.
Функция ПОИСКПОЗ() возвращает позицию значение из диапазона сюда). месяц в единое как и в прочитать каждую ячейку и столбца. В Имеем сводную таблицу, номера строки по Форма массива возвращает3451110,946 делать с помощью
planetaexcel.ru
Просматриваемый_массив
Функция INDEX (ИНДЕКС) в Excel используется для получения данных из таблицы, при условии что вы знаете номер строки и столбца, в котором эти данные находятся.
Например, в таблице ниже, вы можете использовать эту функцию для того, чтобы получить результаты экзамена по Физике у Андрея, зная номер строки и столбца, в которых эти данные находятся.
Содержание
- Что возвращает функция
- Синтаксис
- Аргументы функции
- Дополнительная информация
- Примеры использования функции ИНДЕКС в Excel
- Пример 1. Ищем результаты экзамена по физике для Алексея
- Пример 2. Создаем динамический поиск значений с использованием функций ИНДЕКС и ПОИСКПОЗ
- Пример 3. Создаем динамический поиск значений с использованием функций INDEX (ИНДЕКС) и MATCH (ПОИСКПОЗ) и выпадающего списка
- Пример 4. Использование трехстороннего поиска с помощью INDEX (ИНДЕКС) / MATCH (ПОИСКПОЗ)
Что возвращает функция
Возвращает данные из конкретной строки и столбца табличных данных.
Синтаксис
=INDEX (array, row_num, [col_num]) — английская версия
=INDEX (array, row_num, [col_num], [area_num]) — английская версия
=ИНДЕКС(массив; номер_строки; [номер_столбца]) — русская версия
=ИНДЕКС(ссылка; номер_строки; [номер_столбца]; [номер_области]) — русская версия
Аргументы функции
- array (массив) — диапазон ячеек или массив данных для поиска;
- row_num (номер_строки) — номер строки, в которой находятся искомые данные;
- [col_num] ([номер_столбца]) (необязательный аргумент) — номер колонки, в которой находятся искомые данные. Этот аргумент необязательный. Но если в аргументах функции не указаны критерии для row_num (номер_строки), необходимо указать аргумент col_num (номер_столбца);
- [area_num] ([номер_области]) — (необязательный аргумент) — если аргумент массива состоит из нескольких диапазонов, то это число будет использоваться для выбора всех диапазонов.
Дополнительная информация
- Если номер строки или колонки равен “0”, то функция возвращает данные всей строки или колонки;
- Если функция используется перед ссылкой на ячейку (например, A1), она возвращает ссылку на ячейку вместо значения (см. примеры ниже);
- Чаще всего INDEX (ИНДЕКС) используется совместно с функцией MATCH (ПОИСКПОЗ);
- В отличие от функции VLOOKUP (ВПР), функция INDEX (ИНДЕКС) может возвращать данные как справа от искомого значения, так и слева;
- Функция используется в двух формах — Массива данных и Формы ссылки на данные:
— Форма «Массива» используется когда вы хотите найти значения, основанные на конкретных номерах строк и столбцов таблицы;
— Форма «Ссылок на данные» используется при поиске значений в нескольких таблицах (используете аргумент [area_num] ([номер_области]) для выбора таблицы и только потом сориентируете функцию по номеру строки и столбца.
Примеры использования функции ИНДЕКС в Excel
Пример 1. Ищем результаты экзамена по физике для Алексея
Предположим, у вас есть результаты экзаменов в табличном виде по нескольким студентам:
Для того, чтобы найти результаты экзамена по физике для Андрея нам нужна формула:
=INDEX($B$3:$E$9,3,2) — английская версия
=ИНДЕКС($B$3:$E$9;3;2) — русская версия
В формуле мы определили аргумент диапазона данных, где мы будем искать данные $B$3:$E$9. Затем, указали номер строки “3”, в которой находятся результаты экзамена для Андрея, и номер колонки “2”, где находятся результаты экзамена именно по физике.
Пример 2. Создаем динамический поиск значений с использованием функций ИНДЕКС и ПОИСКПОЗ
Не всегда есть возможность указать номера строки и столбца вручную. У вас может быть огромная таблица данных, отображение данных которой вы можете сделать динамическим, чтобы функция автоматически идентифицировала имя или экзамен, указанные в ячейках, и дала правильный результат.
Пример динамического отображения данных ниже:
Для динамического отображения данных мы используем комбинацию функций INDEX (ИНДЕКС) и MATCH (ПОИСКПОЗ).
Вот такая формула поможет нам добиться результата:
=INDEX($B$3:$E$9,MATCH($G$4,$A$3:$A$9,0),MATCH($H$3,$B$2:$E$2,0)) — английская версия
=ИНДЕКС($B$3:$E$9;ПОИСКПОЗ($G$4;$A$3:$A$9;0);ПОИСКПОЗ($H$3;$B$2:$E$2;0)) — русская версия
В формуле выше, не используя сложного программирования, мы с помощью функции MATCH (ПОИСКПОЗ) сделали отображение данных динамическим.
Динамический отображение строки задается следующей частью формулы —
MATCH($G$4,$A$3:$A$9,0) — английская версия
ПОИСКПОЗ($G$4;$A$3:$A$9;0) — русская версия
Она сканирует имена студентов и определяет значение поиска ($G$4 в нашем случае). Затем она возвращает номер строки для поиска в наборе данных. Например, если значение поиска равно Алексей, функция вернет “1”, если это Максим, оно вернет “4” и так далее.
Динамическое отображение данных столбца задается следующей частью формулы —
MATCH($H$3,$B$2:$E$2,0) — английская версия
ПОИСКПОЗ($H$3;$B$2:$E$2;0) — русская версия
Она сканирует имена объектов и определяет значение поиска ($H$3 в нашем случае). Затем она возвращает номер столбца для поиска в наборе данных. Например, если значение поиска Математика, функция вернет “1”, если это Физика, функция вернет “2” и так далее.
Больше лайфхаков в нашем Telegram Подписаться
Пример 3. Создаем динамический поиск значений с использованием функций INDEX (ИНДЕКС) и MATCH (ПОИСКПОЗ) и выпадающего списка
На примере выше мы вручную вводили имена студентов и названия предметов. Вы можете сэкономить время на вводе данных, используя выпадающие списки. Это актуально, когда количество данных огромное.
Используя выпадающие списки, вам нужно просто выбрать из списка имя студента и функция автоматически найдет и подставит необходимые данные.
Пример ниже:
Используя такой подход, вы можете создать удобный дашборд, например для учителя. Ему не придется заниматься фильтрацией данных или прокруткой листа со студентами, для того чтобы найти результаты экзамена конкретного студента, достаточно просто выбрать имя и результаты динамически отразятся в лаконичной и удобной форме.
Для того, чтобы осуществить динамическую подстановку данных с использованием функций INDEX (ИНДЕКС) и MATCH (ПОИСКПОЗ) и выпадающего списка, мы используем ту же формулу, что в Примере 2:
=INDEX($B$3:$E$9,MATCH($G$4,$A$3:$A$9,0),MATCH($H$3,$B$2:$E$2,0)) — английская версия
=ИНДЕКС($B$3:$E$9;ПОИСКПОЗ($G$4;$A$3:$A$9;0);ПОИСКПОЗ($H$3;$B$2:$E$2;0)) — русская версия
Единственное отличие, от Примера 2, мы на месте ввода имени и предмета создадим выпадающие списки:
- Выбираем ячейку, в которой мы хотим отобразить выпадающий список с именами студентов;
- Кликаем на вкладку “Data” => Data Tools => Data Validation;
- В окне Data Validation на вкладке “Settings” в подразделе Allow выбираем “List”;
- В качестве Source нам нужно выбрать диапазон ячеек, в котором указаны имена студентов;
- Кликаем ОК
Теперь у вас есть выпадающий список с именами студентов в ячейке G5. Таким же образом вы можете создать выпадающий список с предметами.
Пример 4. Использование трехстороннего поиска с помощью INDEX (ИНДЕКС) / MATCH (ПОИСКПОЗ)
Функция INDEX (ИНДЕКС) может быть использована для обработки трехсторонних запросов.
Что такое трехсторонний поиск?
В приведенных выше примерах мы использовали одну таблицу с оценками для студентов по разным предметам. Это пример двунаправленного поиска, поскольку мы используем две переменные для получения оценки (имя студента и предмет).
Теперь предположим, что к концу года студент прошел три уровня экзаменов: «Вступительный», «Полугодовой» и «Итоговый экзамен».
Трехсторонний поиск — это возможность получить отметки студента по заданному предмету с указанным уровнем экзамена.
Вот пример трехстороннего поиска:
В приведенном выше примере, кроме выбора имени студента и названия предмета, вы также можете выбрать уровень экзамена. Основываясь на уровне экзамена, формула возвращает соответствующее значение из одной из трех таблиц.
Для таких расчетов нам поможет формула:
=INDEX(($B$3:$E$7,$B$11:$E$15,$B$19:$E$23),MATCH($G$4,$A$3:$A$7,0),MATCH($H$3,$B$2:$E$2,0),IF($H$2=»Вступительный»,1,IF($H$2=»Полугодовой»,2,3))) — английская версия
=ИНДЕКС(($B$3:$E$7;$B$11:$E$15;$B$19:$E$23);ПОИСКПОЗ($G$4;$A$3:$A$7;0);ПОИСКПОЗ($H$3;$B$2:$E$2;0); ЕСЛИ($H$2=»Вступительный»;1;ЕСЛИ($H$2=»Полугодовой»;2;3))) — русская версия
Давайте разберем эту формулу, чтобы понять, как она работает.
Эта формула принимает четыре аргумента. Функция INDEX (ИНДЕКС) — одна из тех функций в Excel, которая имеет более одного синтаксиса.
=INDEX (array, row_num, [col_num]) — английская версия
=INDEX (array, row_num, [col_num], [area_num]) — английская версия
=ИНДЕКС(массив; номер_строки; [номер_столбца]) — русская версия
=ИНДЕКС(ссылка; номер_строки; [номер_столбца]; [номер_области]) — русская версия
По всем вышеприведенным примерам мы использовали первый синтаксис, но для трехстороннего поиска нам нужно использовать второй синтаксис.
Рассмотрим каждую часть формулы на основе второго синтаксиса.
- array (массив) – ($B$3:$E$7,$B$11:$E$15,$B$19:$E$23):Вместо использования одного массива, в данном случае мы использовали три массива в круглых скобках.
- row_num (номер_строки) – MATCH($G$4,$A$3:$A$7,0): функция MATCH (ПОИСКПОЗ) используется для поиска имени студента для ячейки $G$4 из списка всех студентов.
- col_num (номер_столбца) – MATCH($H$3,$B$2:$E$2,0): функция MATCH (ПОИСКПОЗ) используется для поиска названия предмета для ячейки $H$3 из списка всех предметов.
- [area_num] ([номер_области]) – IF($H$2=”Вступительный”,1,IF($H$2=”Полугодовой”,2,3)): Значение номера области сообщает функции INDEX (ИНДЕКС), какой массив с данными выбрать. В этом примере у нас есть три массива в первом аргументе. Если вы выберете «Вступительный» из раскрывающегося меню, функция IF (ЕСЛИ) вернет значение “1”, а функция INDEX (ИНДЕКС) выберут 1-й массив из трех массивов ($B$3:$E$7).
Уверен, что теперь вы подробно изучили работу функции INDEX (ИНДЕКС) в Excel!