Как найти порядковый номер в экселе

Перейти к содержимому

Нахождение номера позиции ячейки по ее значению.

Добрый день.

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

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

Для примера приведем таблицу с перечнем товаров и стоимости на них.

Перечень товаров
Товар Цена
Набор «Веселый повар».                        15,30р.
«Игрушка «Орангутанг»»                        22,00р.
«Игрушка «Синий трактор»»                        34,20р.
Набор «Лотос».                        40,00р.
«Конфеты «Икра лосося»»                        55,60р.
Набор «Бумажный цветок».                      180,00р.
Автомобиль детский                      215,40р.
«Конфеты «Красная книга»»                      220,00р.
Костюм новогодний «Анубис»                      348,00р.
Костюм новогодний «Русалка»                      448,30р.

Товары расположены по увеличению цены на них .

    Необходимо узнать на каком месте по стоимости находится товары под названием «Игрушка «Синий трактор»», «Конфеты «Красная книга»» и Набор «Бумажный цветок».

    Для нахождения порядкового номера перечисленных позиций следует воспользоваться функцией «ПОИСКПОЗ()»

    Для этого:Поиск позиции яччейки по ее значению

    Просмотров: 438

    Функция ИНДЕКС, ПОИСКПОЗ и СМЕЩ. Постановка задачи

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

    Функция ИНДЕКС. Получение данных из таблиц.

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

    Функция ПОИСКПОЗ.

    Данная функция позволяет найти порядковый номер элемента в списке. В ней по очереди, разделяя точкой с запятой в русской версии Windows или запятой в русифицированной версии, надо указать такие данные:

    • Искомое значение. Это значение, которое мы будем искать в списке. Значение должно быть уникальным, иначе Excel найдет только первое!
    • Диапазон списка. Может состоять только из одного столбца или одной сроки. Это важно! Если попробовать выделить две колонки или две строки, программа выдаст ошибку!
    • Способ поиска. Тут надо указать вариант, согласно которому приложение выполнит поиск позиции для нашего искомого значения. Тут возможны следующие типы.

    1  Будет найдено ближайшее к нашему значение, которое не превышает его, то есть НЕ БОЛЬШЕ нужного. Равным может быть, но не больше. Список должен располагаться ПО ВОЗРАСТАНИЮ.

    -1  Excel найдет значение, которое самое близкое к заданному нами, но НЕ МЕНЬШЕ ЕГО. Список должен быть ПО УБЫВАНИЮ.

    0   Запустится поиск ТОЧНОГО СООТВЕТСТВИЯ значения из списка заданному нами. Сортировка тут НЕ ТРЕБУЕТСЯ.

    Наглядное применение ПОИСКПОЗ.

    Посмотрите на скриншот.

    Функция ИНДЕКС. Получение данных из таблиц.

    Особое внимание обратите вот на что. Во второй и третьей формуле задан тип поиска равный 1 (единице). Однако если в первой из них Excel искал число, которое действительно присутствует в списке, то есть число 50, то он его порядковый номер и указал. А вот числа 68 в списке нет, поэтому он указал порядковый номер значения из списка, которое находится ближе всего к нужному нам, то есть к 68, но его не превышает. А это – число 60.

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

    Получение данных из таблиц

    Замечу, что для текстовых списков надо указывать максимально возможное ТЕКСТОВОЕ значение, например, так: «ЯЯЯ». В случае с числовыми данными указывает максимальное ЧИСЛОВОЕ значение, например, 99999999.

    Функция ИНДЕКС в Excel и ее особенности.

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

    Функция ИНДЕКС. Получение данных из таблиц.

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

    Получение данных из таблиц

    Стоит поменять в ней значение, и результат функции СУММ поменяется.

    Получение данных из таблиц

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

    1. Области, которые будут обработаны. Их пишут в отдельных скобках, разделяя точкой с запятой или запятой в зависимости от ваших настроек.
    2. Строка в выбранной области, которая интересует
    3. Столбец, на пересечении которого с указанной строкой надо взять значение
    4. Область из перечисленных в начале.

    Результат работы может выглядеть так, как на рисунке.

    Получение данных из таблиц

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

    Функция СМЕЩ в Excel и тонкости ее применения.

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

    СМЕЩ(1;2;3;4;5)

    1. Ссылка, от которой отсчитывается перемещение.
    2. На сколько строк надо переместиться.
    3. Сколько  столбцов надо отсчитать для перемещения.
    4. Объем строк в диапазоне, на которые перемещаемся. Указывать не обязательно.
    5. Количество столбцов, на которые перемещаемся. Тоже указывать не обязательно.

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

    Приведем пример.

    Функция ИНДЕКС. Получение данных из таблиц.

    В примере выше происходит перемещение от ячейки G11 сначала на 2 строчки вверх, затем на 4 колонки влево. В найденной ячейки находится число 10, которое и является результатом работы функции.

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

    Получение данных из таблиц

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

    Получение данных из таблиц

    Первый вариант создания “левого ВПР”. Комбинируем ИНДЕКС и ПОИСКПОЗ. 

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

    Функция ИНДЕКС. Получение данных из таблиц.

    Данные формулы конечно можно объединить в одну. Если в последней формуле вместо адреса К8 указать ее содержимое, то есть записать ПОИСКПОЗ(K6;C7:C86;0), то результат работы не изменится. Итоговая формула будет уже такой:

    Получение данных из таблиц

    Такую комбинацию ИНДЕКС и ПОИСКПОЗ часто называют ЛЕВЫМ ВПР. Полученная комбинация работает аналогично ВПР, но из-за алгоритма она, во-первых, работает быстрее, а во-вторых, поиск заданного значения не привязан только к первому столбцу, и формула получается более универсальной и гибкой.

    Второй вариант создания “левого ВПР”. Комбинируем СМЕЩ и ПОИСКПОЗ.

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

    Функция ИНДЕКС. Получение данных из таблиц.

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

    Получение данных из таблиц

    Особенности связки СМЕЩ и ПОИСКПОЗ

    Сразу хотелось бы отметить два обстоятельства, которые можно заметить в данном практическом примере использования функций. Если рассматривать функцию СМЕЩ, то видно, что при отсутствии перемещения по строкам, как и по столбцам, ноль писать не обязательно. Можно просто указать место для значения, отделив его точкой с запятой. Именно так сделано в данном примере после первого указания ячейки J2 внутри функции СМЕЩ. Что же касается функции ПОИСКПОЗ, то для указания списка вовсе не обязательно указывать диапазон с ним. Список можно указать и внутри функции в фигурных скобках. В свою очередь это снижает время на подготовку к работе.

    Делаем выводы.

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

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

    Как узнать порядковый номер ячейки в ряде?

    Vladlen

    Дата: Воскресенье, 05.04.2015, 01:47 |
    Сообщение № 1

    Группа: Пользователи

    Ранг: Новичок

    Сообщений: 31


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2007

    Всем доброго времени суток.
    Задача очень проста, но я не знаю формулы. Просьба помочь :)
    У меня есть ряд чисел. Каждое отдельное число — отдельная ячейка.
    Например, есть ряд: 1 3 5 7 15 26 37 48 59 210. Это отдельные 10 ячеек. Как мне узнать, какая по счёту первая ячейка в ряде, где число больше 4,5? Формула должна выдать «3». В 3-й ячейке находится цифра 5, а она больше 4,5.

    Файл во вложении. Спасибо.

    К сообщению приложен файл:

    -2-.xlsx
    (10.3 Kb)

     

    Ответить

    krosav4ig

    Дата: Воскресенье, 05.04.2015, 03:01 |
    Сообщение № 2

    Группа: Друзья

    Ранг: Старожил

    Сообщений: 2346


    Репутация:

    989

    ±

    Замечаний:
    0% ±


    Excel 2007,2010,2013

    если числа всегда будут сортированы по возрастанию, то
    , если в случайном порядке, то массивная формула (вводится комбинацией Ctrl+Shift+Enter)

    Код

    =МИН(ЕСЛИ(B3:K3>D1;B3:K3))


    email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

     

    Ответить

    _Boroda_

    Дата: Воскресенье, 05.04.2015, 05:44 |
    Сообщение № 3

    Группа: Модераторы

    Ранг: Местный житель

    Сообщений: 16620


    Репутация:

    6465

    ±

    Замечаний:
    0% ±


    2003; 2007; 2010; 2013 RUS

    Если

    какая по счёту первая ячейка в ряде

    , то, наверное, так тогда

    Код

    =МИН(ЕСЛИ(B3:K3>D1;СТОЛБЕЦ(A3:J3)))

    или тоже массивная формула

    Код

    =ПОИСКПОЗ(;-(B3:K3<D1);)

    или аналогичная

    Код

    =ПОИСКПОЗ(1=0;B3:K3<D1;)


    Скажи мне, кудесник, любимец ба’гов…
    Платная помощь:
    Boroda_Excel@mail.ru
    Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

     

    Ответить

    Leonid9156

    Дата: Вторник, 02.05.2023, 21:37 |
    Сообщение № 4

    Группа: Пользователи

    Ранг: Новичок

    Сообщений: 36

    [vba][code][/code][/vba] hands

     

    Ответить

     

    vimpel76

    Пользователь

    Сообщений: 241
    Регистрация: 31.12.2012

    Kuzmich

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

    Цитата
    применить его не возможно

    Да, но я не с полной информацией выложил файл. Столбцы A,G,M,W, тоже будут содержать формулы, но с другого листа. Иными словами в журнале отображаются база данных приход и база данных расход. С формулами БД приход, у меня решено, формулы те же, что и в расходе, но для расхода они не идут, и за того, что доход считается по всем позициям, т.е. суммируются все позиции за день, а расход по каждой позиции отдельно, вот и разница. Такую головоломку мне задала бухгалтер.
    Такая у меня ситуация.
    Я надеюсь, Вы войдете в мое положение.

    Skip to content

    Функция ИНДЕКС в Excel — 6 примеров использования

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

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

    Итак, что такое функция ИНДЕКС в Excel? По сути, формула ИНДЕКС (в английской версии – INDEX) возвращает ссылку на ячейку из заданного массива или диапазона. Другими словами, вы используете её, когда знаете (или можете определить) положение элемента в диапазоне и хотите затем получить значение этого элемента.

    • Синтаксис и способы использования
    • Получение N-го элемента из списка
    • Получение всех значений в строке или столбце
    • Использование ИНДЕКС с другими функциями (СУММ, СРЗНАЧ, МАКС, МИН)
    • Формула ИНДЕКС для создания динамических диапазонов и раскрывающихся списков
    • Мощный поиск с ИНДЕКС/ПОИСКПОЗ
    • Формула ИНДЕКС для получения одного диапазона из списка диапазонов

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

    Функция ИНДЕКС в Excel — синтаксис и основные способы использования

    В Excel есть две версии функции ИНДЕКС — форма массива и форма ссылки. Обе их можно использовать во всех версиях Microsoft Excel 365, 2019, 2016, 2013, 2010, 2007 и 2003.

    Форма массива ИНДЕКС

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

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

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

    Например, формула =ИНДЕКС(C2:F11;4;3)  возвращает значение на пересечении четвертой строки и третьего столбца в диапазоне C2:F11, что является значением в ячейке D4.

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

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

    =ИНДЕКС(C2:F11;I1;I2)

    Итак, эта формула ИНДЕКС возвращает количество товаров точно на пересечении номера товара, указанного в ячейке I1 (номер_строки), и номера недели, введенного в ячейке I2 (номер_столбца).

    Примечание. Использование абсолютных ссылок ($C$2:$F$11) вместо относительных ссылок (C2:F11) в аргументе массива упрощает копирование формулы в другие ячейки. Кроме того, вы можете преобразовать диапазон в таблицу (Ctrl + Т) и обращаться к нему по имени таблицы.

    Что нужно помнить

    1. Если аргумент массива состоит только из одной строки или столбца, вы можете указать или не указать соответствующий аргумент номер_строки или номер_столбца.
    2. Если аргумент массива включает более одной строки, а номер_строки опущен или равен 0, функция ИНДЕКС возвращает массив всего столбца. Точно так же, если массив включает более одного столбца, а аргумент номер_столбца опущен или равен 0, формула ИНДЕКС возвращает всю строку. Вот пример формулы, демонстрирующий такое поведение.
    3. Аргументы номер_строки и номер_столбца должны ссылаться на ячейку в массиве; в противном случае формула ИНДЕКС вернет ошибку #ССЫЛКА!.

    Форма ИНДЕКС в виде ссылки

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

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

    • ссылка — это один или несколько диапазонов.

    Если вы вводите более одного диапазона, разделите диапазоны точкой с запятой и заключите аргумент ссылки в круглые скобки, например (A1:B5; D1:F5).

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

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

    Например, формула =ИНДЕКС((B2:F4;B8:F11);3;2;2) возвращает значение ячейки С10, которая находится на пересечении 3-й строки и 2-го столбца во второй области (B8:F11).

    Что нужно помнить о функции ИНДЕКС в форме ссылки

    1. Если аргумент номер_строки или номер_столбца равен нулю (0), формула ИНДЕКС возвращает ссылку для всего столбца или строки соответственно.
    2. Если и номер_строки, и номер_столбца опущены, функция ИНДЕКС возвращает область, указанную в аргументе номер_области.
    3. Все аргументы  (номер_строки, номер_столбца и номер_области) должны ссылаться на ячейку в пределах заданного диапазона. В противном случае формула ИНДЕКС вернет ошибку #ССЫЛКА! 

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

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

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

    Далее во всех наших формулах ИНДЕКС (кроме последней) мы будем использовать приведенные ниже данные. 

    1. Получение N-го элемента из списка

    Это основное использование функции ИНДЕКС и простейшая её формула. Чтобы получить определенный элемент из списка, вы просто пишете:  =ИНДЕКС(диапазон; n),  где диапазон — это диапазон ячеек или именованный диапазон, а n — позиция элемента, который вы хотите из него получить.

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

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

    =ИНДЕКС(A5:E13;4;1)

    • A5:E13 — это ссылка на диапазон с данными.
    • Номер_строки равен 4, потому что вы ищете четвертый элемент в списке,
    • Номер_столбца равен 1, потому что мы хотим извлечь имя планеты.

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

    Кроме того, вы можете не сортировать таблицу вручную, а сделать это при помощи формулы.

    =ИНДЕКС(СОРТ(A5:E13;3;-1);B1;1)

    Функция СОРТ сортирует таблицу по третьему столбцу в порядке убывания. Ну а затем ИНДЕКС делает всё остальное.

    2. Получение всех значений в строке или столбце

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

    Такие формулы ИНДЕКС вряд ли можно использовать сами по себе, потому что Excel не может уместить массив значений, возвращаемых формулой, в одну ячейку, и вы получите ошибку #ЗНАЧ!. Однако, если вы используете ИНДЕКС в сочетании с другими функциями, такими как СУММ или СРЗНАЧ, вы получите отличные результаты.

    Например, вы можете использовать следующую формулу для расчета средней температуры планет в Солнечной системе:

    =СРЗНАЧ(ИНДЕКС(A4:E12;;4))

    В приведенной выше формуле аргумент номер_столбца равен 4, потому что температура находится в четвертом столбце нашей таблицы. Параметр номер_строки опущен.

    Аналогичным образом можно найти минимальную и максимальную температуры:

    =МИН(ИНДЕКС(A4:E12;;4))

    =МАКС(ИНДЕКС(A4:E12;;4))

    И посчитаем общую массу планет (масса – второй столбец в таблице):

    =СУММ(ИНДЕКС(A4:E12;;2))

    С практической точки зрения функция ИНДЕКС в приведенной выше формуле лишняя. Вы можете просто написать =СРЗНАЧ(D4:D12) и получить те же результаты.

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

    К примеру, формула =СУММ(ИНДЕКС(A4:E12;;С1)) позволит вам подсчитывать сумму в том столбце, номер которого вы укажете в ячейке C1.

    3. Использование ИНДЕКС с другими функциями (СУММ, СРЗНАЧ, МАКС, МИН)

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

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

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

    =СРЗНАЧ(D4 : ИНДЕКС(D1:D20,12))

    Обе приведенные выше формулы дадут один и тот же результат, поскольку функция ИНДЕКС также возвращает ссылку на ячейку В12 (номер строки равен 12, номер столбца опущен). Разница в том, что диапазон формулы СРЗНАЧ / ИНДЕКС является динамическим, и как только вы измените аргумент номер_строки в ИНДЕКС, то диапазон, обрабатываемый функцией СРЗНАЧ, также изменится, и формула вернет другой результат.

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

    Пример 1. Вычислить среднее значение первых N элементов в списке

    Допустим, вы хотите узнать средний диаметр N самых больших планет в солнечной системе. 

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

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

    =СРЗНАЧ(C5:ИНДЕКС(C5:C13;B1))

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

    Пример 2. Сумма элементов между указанными двумя элементами

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

    Например, следующая формула при помощи функции СУММ возвращает сумму значений в столбце Масса между двумя элементами, указанными в ячейках B1 и Е1:

    =СУММ(ИНДЕКС(B5:B13;B1):ИНДЕКС(B5:B13;E1))

    4. Формула ИНДЕКС для создания динамических диапазонов и раскрывающихся списков

    Как это часто бывает, когда вы начинаете упорядочивать данные на листе, вы можете не знать, сколько записей у вас в конечном итоге будет. Это не относится к нашей таблице планет, которая кажется полной, но кто знает…

    В любом случае, если у вас есть изменяющееся количество элементов в данном столбце, скажем, от A1 до An , вы можете создать динамический именованный диапазон , включающий все ячейки с данными. При этом вы хотите, чтобы диапазон корректировался автоматически по мере добавления новых элементов или удаления некоторых из существующих. Например, если у вас сейчас 10 элементов, ваш именованный диапазон будет A1:A10. Если вы добавите новую запись, именованный диапазон автоматически расширится до A1:A11, а если вы передумаете и удалите эти вновь добавленные данные, диапазон автоматически вернется к A1:A10.

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

    Одним из способов определения динамического диапазона является использование функции Excel СМЕЩ :

    =СМЕЩ($A$2; 0; 0; СЧЁТЗ($A1:$A100)-1; 1)

    Другим возможным решением является использование ИНДЕКС Excel вместе с СЧËТЗ:

    =$A$2:ИНДЕКС($A2:$A100; СЧЁТЗ($A2:$A100))

    В обеих формулах A2 — это ячейка, содержащая первый элемент списка. Динамический диапазон, создаваемый обеими формулами, будет идентичным.

    Разница заключается в подходах. В то время как функция СМЕЩ перемещается от начальной точки на определенное количество строк и/или столбцов, то ИНДЕКС находит ячейку на пересечении определенной строки и столбца. Функция СЧËТЗ, используемая в обеих формулах, получает количество непустых ячеек в интересующем нас столбце.

    В этом примере в столбце A 9 непустых ячеек, поэтому СЧËТЗ возвращает 9. Следовательно, ИНДЕКС возвращает $A$9, то есть последнюю использованную ячейку в столбце A (обычно ИНДЕКС возвращает значение, но в этой формуле оператор ссылки (:) заставляет его вернуть ссылку). И поскольку $A$1 является нашей отправной точкой, конечным результатом формулы будет диапазон $A$1:$A$9.

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

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

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

    5. Мощный поиск с ИНДЕКС/ПОИСКПОЗ

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

    Связка ИНДЕКС/ПОИСКПОЗ во многих отношениях превосходит ВПР:

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

    Вы используете ИНДЕКС / ПОИСКПОЗ следующим образом:

    =ИНДЕКС ( столбец для возврата значения , (ПОИСКПОЗ ( искомое значение , столбец для поиска , 0))

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

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

    Дополнительные советы и примеры формул см. в руководстве по Excel ИНДЕКС/ПОИСКПОЗ .

    6. Формула ИНДЕКС для получения одного диапазона из списка диапазонов

    Еще одно умное и эффективное использование функции ИНДЕКС в Excel — это возможность получить один диапазон из списка диапазонов.

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

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

    =СУММ(ИНДЕКС((C2:C11;D2:D11;E2:E11;F2:F11);;;I1))

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

    На скриншоте ниже для номера диапазона (ячейка I1) установлено значение 2. Поэтому формула вычисляет сумму продаж за вторую неделю. Выбран второй по счёту диапазон в списке – D2:D11.

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

    Вот несколько основных способов применения формулы ИНДЕКС в Excel. 

    Я надеюсь, что эти примеры показали вам, как использовать потенциал функции ИНДЕКС в ваших рабочих листах. Спасибо за чтение!

    Понравилась статья? Поделить с друзьями:
  • Как найти позвоночную артерию
  • Как найти концентрацию физика формулы
  • Капсульный отель внуково как найти
  • Rockstar games social club автономный режим как исправить
  • Как найти полный электрический заряд