Функция ИНДЕКС возвращает значение или ссылку на значение из таблицы или диапазона.
Функцию ИНДЕКС можно использовать двумя способами:
- Если вы хотите возвращать значение указанной ячейки или массива ячеек, см. раздел Форма массива.
- Если требуется возвращать ссылку на указанные ячейки, см. раздел Ссылочная форма.
Форма массива
Описание
Возвращает значение элемента в таблице или массиве, выбранное по индексам номеров строк и столбцов.
Если первый аргумент функции ИНДЕКС является константной массива, используйте форму массива.
Синтаксис
ИНДЕКС(массив; номер_строки; [номер_столбца])
Форма массива функции INDEX имеет следующие аргументы:
Массива Обязательно. Диапазон ячеек или константа массива.
- Если массив содержит только одну строку или столбец, соответствующий аргумент номер_строки или номер_столбца является необязательным.
- Если массив содержит более одной строки и более одного столбца и используется только номер_строки или номер_столбца, ИНДЕКС возвращает массив всей строки или столбца в массиве.
row_num Обязательный, если column_num отсутствует. Выбирает строку в массиве, из которой требуется возвратить значение. Если номер_строки опущен, требуется номер_столбца.
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 автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
| Формула | Описание | Результат |
|---|---|---|
| =INDEX({1;2;3;4};0;2) | Значение ячейки на пересечении первой строки и второго столбца в массиве. Массив содержит значения 1 и 2 в первой строке и значения 3 и 4 во второй строке. | 2 |
| Значение ячейки на пересечении второй строки и второго столбца в массиве, указанном выше. | 4 |
Ссылочная форма
Описание
Возвращает ссылку на ячейку, расположенную на пересечении указанной строки и указанного столбца. Если ссылка состоит из несмежных выборок, вы можете выбрать выборку для поиска.
Синтаксис
ИНДЕКС(ссылка; номер_строки; [номер_столбца]; [номер_области])
Справочная форма функции ИНДЕКС имеет следующие аргументы:
Ссылки Обязательно. Ссылка на один или несколько диапазонов ячеек.
- Если вы вводите несмежный диапазон для ссылки, заключите ссылку в круглые скобки.
- Если каждая область в ссылке содержит только одну строку или столбец, аргумент номер_строки или номер_столбца соответственно является необязательным. Например, для ссылки на единственную строку нужно использовать формулу ИНДЕКС(ссылка,,номер_столбца).
row_num Обязательно. Номер строки в диапазоне, заданном аргументом "ссылка", из которого требуется возвратить ссылку.
column_num Дополнительные. Номер столбца в диапазоне, заданном аргументом "ссылка", из которого требуется возвратить ссылку.
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, а затем — клавишу ВВОД.
| Фрукты | Цена | Количество |
|---|---|---|
| Яблоки | 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 |