Progress-servis55.ru

Новости из мира ПК
5 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Index excel на русском

5 вариантов использования функции ИНДЕКС (INDEX)

Бывает у вас такое: смотришь на человека и думаешь «что за @#$%)(*?» А потом при близком знакомстве оказывается, что он знает пять языков, прыгает с парашютом, имеет семеро детей и черный пояс в шахматах, да и, вообще, добрейшей души человек и умница?

Так и в Microsoft Excel: есть несколько похожих функций, про которых фраза «внешность обманчива» работает на 100%. Одна из наиболее многогранных и полезных — функция ИНДЕКС (INDEX) . Далеко не все пользователи Excel про нее знают, и еще меньше используют все её возможности. Давайте разберем варианты ее применения, ибо их аж целых пять.

Вариант 1. Извлечение данных из столбца по номеру ячейки

Самый простой случай использования функции ИНДЕКС – это ситуация, когда нам нужно извлечь данные из одномерного диапазона-столбца, если мы знаем порядковый номер ячейки. Синтаксис в этом случае будет:

=ИНДЕКС( Диапазон_столбец ; Порядковый_номер_ячейки )

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

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

Вариант 2. Извлечение данных из двумерного диапазона

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

=ИНДЕКС( Диапазон ; Номер_строки ; Номер_столбца )

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

Легко сообразить, что с помощью такой вариации ИНДЕКС и двух функций ПОИСКПОЗ можно легко реализовать двумерный поиск:

Вариант 3. Несколько таблиц

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

=ИНДЕКС( (Диапазон1;Диапазон2;Диапазон3) ; Номер_строки ; Номер_столбца ; Номер_диапазона )

Обратите особое внимание, что в этом случае первый аргумент – список диапазонов — заключается в скобки, а сами диапазоны перечисляются через точку с запятой.

Вариант 4. Ссылка на столбец / строку

Если во втором варианте использования функции ИНДЕКС номер строки или столбца задать равным нулю (или просто не указать), то функция будет выдавать уже не значение, а ссылку на диапазон-столбец или диапазон-строку соответственно:

Обратите внимание, что поскольку ИНДЕКС выдает в этом варианте не конкретное значение ячейки, а ссылку на диапазон, то для подсчета потребуется заключить ее в дополнительную функцию, например СУММ (SUM) , СРЗНАЧ (AVERAGE) и т.п.

Вариант 5. Ссылка на ячейку

Общеизвестно, что стандартная ссылка на любой диапазон ячеек в Excel выглядит как Начало-Двоеточие-Конец, например A2:B5. Хитрость в том, что если взять функцию ИНДЕКС в первом или втором варианте и подставить ее после двоеточия, то наша функция будет выдавать уже не значение, а адрес, и на выходе мы получим полноценную ссылку на диапазон от начальной ячейки до той, которую нашла ИНДЕКС:

Нечто похожее можно реализовать функцией СМЕЩ (OFFSET) , но она, в отличие от ИНДЕКС, является волатильной, т.е. пересчитывается каждый раз при изменении любой ячейки листа. ИНДЕКС же работает более тонко и запускает пересчет только при изменении своих аргументов, что ощутимо ускоряет расчет в тяжелых книгах по сравнению со СМЕЩ.

Один из весьма распространенных на практике сценариев применения ИНДЕКС в таком варианте — это сочетание с функцией СЧЁТЗ (COUNTA) , чтобы получить автоматически растягивающиеся диапазоны для выпадающих списков, сводных таблиц и т.д.

Функция ИНДЕКС() в EXCEL

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

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

Массив — ссылка на диапазон ячеек.

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

Номер_столбца — номер столбца в массиве, из которого требуется возвратить значение. Если аргумент «номер_столбца» опущен, аргумент «номер_строки» является обязательным.

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

Значения аргументов «номер_строки» и «номер_столбца» должны указывать на ячейку внутри заданного массива; в противном случае функция ИНДЕКС() возвращает значение ошибки #ССЫЛКА! Например, формула =ИНДЕКС(A2:A13;22) вернет ошибку, т.к. в диапазоне А2:А13 только 12 строк.

Читать еще:  Значок градуса в excel

Значение из заданной строки диапазона

Пусть имеется одностолбцовый диапазон А6:А9.

Выведем значение из 2-й строки диапазона, т.е. значение Груши . Это можно сделать с помощью формулы =ИНДЕКС(A6:A9;2)

Если диапазон горизонтальный (расположен в одной строке, например, А6:D6 ), то формула для вывода значения из 2-го столбца будет выглядеть так =ИНДЕКС(A6:D6;;2)

Значение из заданной строки и столбца таблицы

Пусть имеется таблица в диапазоне А6:B9.

Выведем значение, расположенное в 3-й строке и 2-м столбце таблицы, т.е. значение 200 . Это можно сделать с помощью формулы =ИНДЕКС(A6:B9;3;2)

Использование функции в формулах массива

Если задать для аргумента «номер_строки» или «номер_столбца» значение 0, функция ИНДЕКС() возвратит массив значений для целого столбца или, соответственно, целой строки (не всего столбца/строки листа, а только столбца/строки входящего в массив). Чтобы использовать массив значений, введите функцию ИНДЕКС() как формулу массива .

Пусть имеется одностолбцовый диапазон А6:А9. Выведем 3 первых значения из этого диапазона, т.е. на А6 , А7 , А8 . Для этого выделите 3 ячейки ( А21 , А22 , А23 ), в Строку формул введите формулу =ИНДЕКС(A6:A9;0) , затем нажмите CTRL+SHIFT+ENTER .

Зачем это нужно? Теперь удалить по отдельности значения из ячеек А21 , А22 , А23 не удастся, мы получим предупреждение «нельзя изменять часть массива».

Хотя можно просто ввести в этих 3-х ячейках ссылки на диапазон А6:А8. Выделите 3 ячейки и введите формулу =A6:A8. Затем нажмите CTRL+SHIFT+ENTER и получим тот же результат.

Использование массива констант

Вместо ссылки на диапазон можно использовать массив констант :

ПОИСКПОЗ() + ИНДЕКС()

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

Формула =ВПР(«яблоки»;A35:B38;2;0) аналогична формуле =ИНДЕКС(B35:B38;ПОИСКПОЗ(«яблоки»;A35:A38;0)) которая извлекает цену товара Яблоки из таблицы, размещенную в диапазоне A35:B38

Связка ПОИСКПОЗ() + ИНДЕКС() даже гибче, чем функция ВПР() , т.к. с помощью ее можно, например, определить товар с заданной ценой (обратная задача, так называемый «левый ВПР()»). Формула =ИНДЕКС(A35:A38;ПОИСКПОЗ(200;B35:B38;0)) определяет товар с ценой 200. Если товаров с такой ценой несколько, то будет выведен первый сверху.

Ссылочная форма

Функция ИНДЕКС() позволяет использовать так называемую ссылочную форму. Поясним на примере.

Пусть имеется диапазон с числами ( А2:А10 ) Необходимо найти сумму первых 2-х, 3-х, . 9 значений. Конечно, можно написать несколько формул =СУММ(А2:А3) , =СУММ(А2:А4) и т.д. Но, записав формулу ввиде:

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

Использование функции ИНДЕКС() в этом примере принципиально отличается от примеров рассмотренных выше, т.к. функция возвращает не само значение, а ссылку (адрес ячейки) на значение. Вышеуказанная формула =СУММ(A2:ИНДЕКС(A2:A10;4)) эквивалентна формуле =СУММ(A2:A5)

Аналогичный результат можно получить используя функцию СМЕЩ()

Теперь более сложный пример, с областями.

Пусть имеется таблица продаж нескольких товаров по полугодиям.

Задав Товар , год и полугодие , можно вывести соответствующий объем продаж с помощью формулы =ИНДЕКС((B9:C12;D9:E12;F9:G12);B15;A19;B17)

Вся таблица как бы разбита на 3 подтаблицы (области), соответствующие отдельным годам: B9:C12 ; D9:E12 ; F9:G12 . Задавая номер строки, столбца (в подтаблице) и номер области, можно вывести соответствующий объем продаж. В файле примера , выбранные строка и столбец выделены цветом с помощью Условного форматирования .

ИНДЕКС (функция ИНДЕКС)

Функция ИНДЕКС возвращает значение или ссылку на значение из таблицы или диапазона.

Функцию ИНДЕКС можно использовать двумя способами:

Если вы хотите возвращать значение указанной ячейки или массива ячеек, см. раздел Форма массива.

Если требуется возвращать ссылку на указанные ячейки, см. раздел Ссылочная форма.

Форма массива

Описание

Возвращает значение элемента в таблице или массиве, выбранном с помощью индексов строк и столбцов.

Если первый аргумент функции ИНДЕКС является константной массива, используйте форму массива.

Синтаксис

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

Форма массива функции индекс имеет следующие аргументы:

IsArray — обязательный аргумент. Диапазон ячеек или константа массива.

Если массив содержит только одну строку или один столбец, соответствующий аргумент «номер_строки» или «номер_столбца» является необязательным.

Если массив содержит более одной строки и несколько столбцов и используется только аргумент «номер_строки» или «номер_столбца», функция индекс возвращает массив всей строки или столбца в массиве.

Читать еще:  Hlookup excel на русском

Номер_строки — обязательный аргумент. Выбирает строку в массиве, из которой требуется возвратить значение. Если аргумент «номер_строки» опущен, требуется номер_столбца.

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

Замечания

Если используются оба аргумента «номер_строки» и «номер_столбца», функция индекс возвращает значение в ячейке на пересечении номер_строки и номер_столбца.

аргумент «номер_строки» и «номер_столбца» должен указывать на ячейку в массиве; в противном случае функция индекс возвращает значение #REF! ошибка #ЧИСЛО!.

Если для аргумента «номер_строки» или «номер_столбца» установлено значение 0 (ноль), функция индекс возвращает массив значений для всего столбца или строки соответственно. Чтобы использовать значения, возвращаемые в виде массива, введите в качестве формулы массива функцию индекс.

Примечание: Если у вас установлена текущая версия Office 365, вы можете ввести формулу в левую верхнюю ячейку диапазона вывода, а затем нажмите клавишу Ввод , чтобы подтвердить формулу как формулу динамических массивов. В противном случае необходимо ввести формулу в качестве устаревшей формулы массива, сначала выделив диапазон вывода, введите формулу в верхнюю левую ячейку выходного диапазона, а затем нажмите клавиши CTRL + SHIFT + ВВОД , чтобы подтвердить его. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.

Примеры

Пример 1

В этих примерах функция ИНДЕКС используется для поиска значения ячейки, находящейся на пересечении заданных строки и столбца.

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

Значение ячейки на пересечении второй строки и второго столбца в диапазоне A2:B3.

Значение ячейки на пересечении второй строки и первого столбца в диапазоне A2:B3.

Пример 2

В этом примере функция ИНДЕКС используется в формуле массива для поиска значений двух заданных ячеек в массиве с диапазоном 2 x 2.

Примечание: Если у вас установлена текущая версия Office 365, вы можете ввести формулу в левую верхнюю ячейку диапазона вывода, а затем нажмите клавишу Ввод , чтобы подтвердить формулу как формулу динамических массивов. В противном случае формула должна быть введена как устаревшая формула массива, если сначала выбрать две пустые ячейки, ввести формулу в верхнюю левую ячейку выходного диапазона, а затем нажать клавиши CTRL + SHIFT + ВВОД , чтобы подтвердить его. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.

Значение ячейки на пересечении первой строки и второго столбца в массиве. Массив содержит значения 1 и 2 в первой строке и значения 3 и 4 во второй строке.

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

Справочная форма

Описание

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

Синтаксис

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

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

справки Обязательный. Ссылка на один или несколько диапазонов ячеек.

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

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

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

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

номер_области — необязательный аргумент. Выделяет диапазон в ссылке, из которого нужно вернуть пересечение номер_строки и номер_столбца. Первая выделенная или введенная область имеет номер 1, второй — 2 и т. д. Если аргумент номер_области опущен, то функция индекс использует область 1. Все перечисленные здесь области должны располагаться на одном листе. Если вы указали области, которые не находятся на одном листе, это вызовет #VALUE! ошибка #ЧИСЛО!. Если необходимо использовать диапазоны, расположенные на разных листах, рекомендуется использовать форму массива функции индекс и использовать другую функцию для вычисления диапазона, который составляет массив. Например, чтобы вычислить диапазон, который будет использоваться, можно использовать функцию выбор.

Читать еще:  Excel if and

Например, если в ссылке описаны ячейки (a1: B4, D1: E4, G1: H4), то функция номер_области 1 — это диапазон a1: B4, номер_области 2 — диапазон D1: E4, а номер_области 3 — диапазон G1: H4.

Замечания

После того, как ссылка и номер_области выделены определенный диапазон, выбери ячейку и номер_столбца, выделив одну из них: номер_строки 1 — это первая строка диапазона, номер_столбца 1 — первый столбец, и т. д. Ссылка, возвращаемая функцией индекс, — это пересечение с номер_строки и номер_столбца.

Если для аргумента «номер_строки» или «номер_столбца» установлено значение 0 (ноль), функция индекс возвращает ссылку на весь столбец или строку соответственно.

номер_строки, номер_столбца и номер_области должны указывать на ячейку в ссылке. в противном случае функция индекс возвращает значение #REF! ошибка #ЧИСЛО!. Если аргумент «номер_строки» и «номер_столбца» опущен, функция индекс возвращает область в ссылке, указанную с помощью номер_области.

Результатом вычисления функции ИНДЕКС является ссылка, которая интерпретируется в качестве таковой другими функциями. В зависимости от формулы значение, возвращаемое функцией ИНДЕКС, может использоваться как ссылка или как значение. Например, формула ЯЧЕЙКА(«ширина»;ИНДЕКС(A1:B2;1;2)) эквивалентна формуле ЯЧЕЙКА(«ширина»;B1). Функция ЯЧЕЙКА использует значение, возвращаемое функцией ИНДЕКС, как ссылку. С другой стороны, такая формула, как 2*ИНДЕКС(A1:B2;1;2), преобразует значение, возвращаемое функцией ИНДЕКС, в число в ячейке B1.

Примеры

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

Функция ИНДЕКС в Excel

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

Описание функции ИНДЕКС

Функция ИНДЕКС имеет 2 формы записи: форму массива и ссылочную. Давайте разберем в чем особенности каждой из них.

Форма массива

ИНДЕКС(массив; номер_строки; [номер_столбца])
Возвращает значение элемента таблицы или массива на пересечении конкретных строки и столбца, в данном диапазоне.

  • Массив(обязательный аргумент) — диапазон ячеек;
  • Номер строки(обязательный аргумент) — выбирает строку в массиве из которой будет возвращаться значение;
  • Номер столбца(необязательный аргумент) — выбирает столбец в массиве из которой будет возвращаться значение.

Ссылочная форма

ИНДЕКС(ссылка; номер_строки; [номер_столбца]; [номер_области])
Возвращает ссылку на ячейку на пересечении конкретных строки и столбца, в данном диапазоне.

  • Ссылка(обязательный аргумент) — ссылка на один или несколько диапазонов ячеек;
  • Номер строки(обязательный аргумент) — выбирает строку в указанном аргументе «ссылка» из которой будет возвращаться ссылка;
  • Номер столбца(необязательный аргумент) — выбирает столбец в указанном аргументе «ссылка» из которой будет возвращаться ссылка;
  • Номер области(необязательный аргумент) — номер диапазона в аргументе «ссылка».

Пример использования функции ИНДЕКС

Предположим у нас есть таблица данных с продуктами:


Например, мы хотим получить значение из таблицы на пересечении строки №2 и столбца №3 (критерий 1 в нашем примере).
В качестве массива выбираем диапазон ячеек A2:C5, задаем номер строки как ячейку F3 (строка №2) и номер столбца как ячейку F4 (столбец №3), в качестве результата получаем «Груши»:

Пример №1 использования функции ИНДЕКС

Также представим, что наша таблица состоит из областей и мы хотим получить значение из таблицы на пересечении строки №2 и столбца №1 из определенной области (критерий 2 в нашем примере).
В качестве ссылки выбираем 2 диапазона ячеек A2:C3 и A4:C5, задаем номер строки как ячейку F10 (строка №2), номер столбца как ячейку F11 (столбец №1) и номер области как ячейку F12 (область №1, т.е. диапазон A2:C3),в качестве результата получаем «Яблоки»:

Пример №2 использования функции ИНДЕКС

Особенности функции ИНДЕКС

В качестве результата функции ИНДЕКС в Excel можно получить ссылку:

  • Если параметр номер_строки или номер_столбца равен 0 или отсутствует, то, например, результатом выполнения функции «=ИНДЕКС(A1:C6;0;2)» будет диапазон B2:B6, т.е. столбец №2 в диапазоне A1:C6.
  • Результат функции ИНДЕКС можно использовать в качестве ссылкы в других функциях. Например, результатов выполнения функции «=СУММ(C3:ИНДЕКС(A1:C6;6;3))» будет сумма значений из диапазона C3:C6, т.е. строка №6 и столбец №3 в диапазоне A1:C6 будет ячейка С6.
Ссылка на основную публикацию
Adblock
detector