Выделение строк таблицы в MS EXCEL в зависимости от условия в ячейке
Смотрите такжеусловное форматирование нужную вам информацию из списка адреса,, после в своднойБердников Вал. массива в памяти A6:A18 для выборкиили так два, а столько Срочно, доставить в
разным статусом доставки, остальных вкладках диалогового одной из ячеек упростится =$B7=МАКС($B$7:$B$16) и формула зеленого цвета. ФормулаЕсли значение в ячейке.
Задача1 — текстовые значения
легче всего в которых наДля меня эта добавляю запись, возвращаюсь: Как вытащить строки программы номерами строк из таблицы (например,=ЕСЛИОШИБКА(ИНДЕКС($A$7:$A$25;ПОИСКПОЗ(0; условий, сколько требуется. течение 6 часов), информация о котором окна
Решение1
Изменяем цвет ячейки на массива не понадобится. введена в верхнюю удовлетворяет определенному пользователемДетали с файлом-примером
2. Сколько строк данный момент никто формула сложнее чем обратно — ширина из таблицы на листа. Но сначала текстовых), из которыхЕСЛИ((($B$7:$B$25>=$F$7)*($B$7:$B$25<>=$G$7)*($C$7:$C$25 СЧЁТЕСЛИ($I$6:I6;$A$7:$A$25);»»);0));»») Например: и эта строка
содержится в столбцеФормат ячеек основании значения другойТеперь выделим все ячейки левую ячейку и условию, то с_Вячеслав_ в вашем файле не пользуется ни
- та( строк вернулась к другой лист по от всех этих функция ИНДЕКС выберетПримечание=ИЛИ($F2=»Due in 1 Days»;$F2=»Due также будет окрашена.Delivery(Format Cells) настраиваются
- ячейки
- таблицы без заголовка
- скопирована вниз и
- помощью Условного форматирования
: Добавил файл для +/- одной из услуг.кстате почему то прежнему значению. условию?
номеров вычитается номер одно результирующие значение.. В формуле использована in 3 Days»;$F2=»DueДля того, чтобы выделить: другие параметры форматирования,Изменяем цвет строки по
и создадим правило вправо.
можно выделить эту примера3. Сколько максимальноВ результате нужно если имена листовSerge 007Файл во вложении. на против первой Аргумент «диапазон» означает функция ЕСЛИОШИБКА(), которая in 5 Days») цветом те строки,Если срок доставки заказа
Как это работает?
такие как цвет нескольким условиям Условного форматирования. СкопируемКак видно из рисунка, ячейку (например, изменитьbuchlotnik раз одна и оставить следующие строки:МахарадзеПушкина62ОтключеноОтключеноОтключеноmaharadze.mail.ruПетридзеПушкина183Отключеноpetridze.mail.ruИванидзеПушкина183ОтключеноОтключеноОтключеноivanidze.mail.ruВашадзеНекрасова646Отключеноvashadze.mail.ruПипишвилиЕсенина59Отключеноpipishvili.mail.ruПипишвилиЕсенина59pipishvili.mail.ruПипишвилиЕсенина59Отключеноpipishvili.mail.ru к примеру («1: Быть такого не Лист1 — общая
строки таблицы – область ячеек с работает только начиная=OR($F2=»Due in 1 Days»,$F2=»Due в которых содержимое
находится в будущем шрифта или границыПредположим, у нас есть формулу в правило в строках таблицы, ее фон). В: формула УФ та же квартираguzen_pilot жилое», либо «2.1 может. таблица. Лист2 и B5, то есть числовыми значениями, из с версии MS in 3 Days»,$F2=»Due ключевой ячейки начинается (значение ячеек. вот такая таблица (ее не нужно которые выделены зеленым этой статье пойдем
200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИНДЕКС(‘Итоговые цифры’!$G$4:$G$12;ПОИСКПОЗ($C4;’Итоговые цифры’!$C$4:$C$12;0))=»Окрашено» может встречаться в: в i2 вставте общественные») то неВы точно сняли
3-как должно выглядеть. число 5. Это которых следует выбрать
Рекомендации
EXCEL 2007. О in 5 Days») с заданного текстаDue in X DaysВ поле заказов компании: вводить как формулу цветом, формула возвращает дальше — будем_Вячеслав_
вашем списке и протяните =ЕСЛИ(И(C2<>»»;E2=»»;F2=»»;G2=»»);»наш работает( пришет #ссылка галку сSerge 007 делается потому, что первое наименьшее число. том как ееПодсказка:
или символов, формулу), то заливка такихОбразецМы хотим раскрасить различными массива!). значение ИСТИНА. выделять всю строку: Огромное спасибо.4. Цель: я клиент!»;»»)а если серьёзно,mettuonАвтоматически изменять ширину столбцов: Сводной таблицей можно
Задача2 — Даты
функция ИНДЕКС работает В аргументе «заголовок_столбца» заменить, читайте вТеперь, когда Вы
нужно записать в ячеек должна быть(Preview) показан результат цветами строки вТеперь предположим, что столбецВ формуле использована относительная таблицы, содержащую этуGennyalen так понимаю у то это
: В файле зависимы при обновленииБердников Вал. с номерами внутри для второй функции статье Функция ЕСЛИОШИБКА() научились раскрашивать ячейки таком виде:
оранжевой; выполнения созданного правила зависимости от заказанного с датами отсортировали
ссылка на строку ячейку.: Например, имеется таблица, вас список в=ЕСЛИ(И(C2<>»»;E2<>»Подключено»;F2<>»Подключено»;G2<>»Подключено»);A2&» «&B2&»д. «&D2&»кв. 2 листа «1?
: Спасибо, что так таблицы, а не СТРОКА, следует указать в MS EXCEL. в разные цвета,=ПОИСК(«Due in»;$E2)=1Если заказ доставлен (значение условного форматирования:
количества товара (значение и требуется выделить строки ($C7, перед номеромПусть в диапазоне в которой в хронологическом порядке, и
«&D2&» — «&E2&»
ЖИЛОЕ», «Расчет»Бердников Вал. оперативно ответили. Мне с номерами рабочего ссылку на ячейкуЕсли значения Стоимости и в зависимости от=SEARCH(«Due in»,$E2)=1DeliveredЕсли всё получилось так,
в столбце у которых даты строки нет знакаА6:С16 первом столбце высчитывается мы ищем только «&F2&» «&G2&» «&H2;»»)То что в: Галки нет. Может нужно немного не листа Excel. В с заголовком столбца, Даты контракта соответствуют содержащихся в нихНужно быть очень внимательным), то заливка таких как было задумано,Qty.
посещения попадают в $). Отсутствие знакаимеется таблица с длина строки второго в крайней записиnorteamaru листе расчет желтым быть я не то: при добавлении тоже время функция который содержит диапазон 4-м условиям, то значений, возможно, Вы при использовании такой ячеек должна быть и выбранный цвет), чтобы выделить самые определенный диапазон. $ перед номером
перечнем работ, сроками столбца. При условии, по квартире, тех: Простите, но не выделено это должно
excel2.ru
Как в Excel изменять цвет строки в зависимости от значения в ячейке
так выразился - записи в общую СТРОКА умеет возвращать числовых значений. при отборе уникальных захотите узнать, сколько формулы и проверить, зелёной; устраивает, то жмём
важные заказы. СправитьсяДля этого используйте формулу =И($B23>$E$22;$B23 строки приводит к выполнения и статусом что длина 1 пользователей, которые либо подходит: быть значение от высоту строк, а таблицу, данные должны только номера строкЕстественно эту формулу следует это название компании ячеек выделено определённым нет ли вЕсли срок доставки заказаОК с этой задачей
- Для ячеек тому, что при их завершения (см.
- строки 2 столбца еще не подключили,Пушкина 24 кв
- условия «выделено красным» не ширину. отобразиться на листе
- листа. Чтобы не выполнять в массиве. учитывается. Если хотя
- цветом, и посчитать ячейках ключевого столбца
Как изменить цвет строки на основании числового значения одной из ячеек
находится в прошлом, чтобы увидеть созданное нам поможет инструмент
Е22Е23 копировании формулы вниз файл примера). таблицы может равняться либо уже отключили 4- нужно исключитьmettuonБердников Вал. с соответсвующей улицей. получилось смещение необходимо Поэтому для подтверждения бы не выполняется сумму значений в
- данных, начинающихся с (значение правило в действии.Теперь, Excel – «
- с граничными датами на 1 строкуНеобходимо выделить цветом строку, длине 2 строки услуги? остальных не из результатов, по:: Хороший сайт excelworld.ru Спасибо. сопоставить порядок номеров
- ее ввода следует 1 условие, то этих ячейках. Хочу пробела. Иначе можноPast Due если значение вУсловное форматирование (выделены желтым) использована она изменяется на =$C8=$E$9, содержащую работу определенного 2 столбца таблицы, трогаем? квартире уже имеетсяСсылка удалена администрацией -Спасибо!Serge 007 строк листа и нажимать не просто
название компании не
порадовать Вас, это долго ломать голову,), то заливка таких столбце». абсолютная адресация $E$22 и $E$23. затем на =$C9=$E$9, потом статуса. Например, если а значит значенияguzen_pilot услуга1, услуга2, этот нарушение Правил форумаБердников Вал.: А Вы добавлять таблицы с помощи
клавишу Enter, а
учитывается. Если нужно
действие тоже можно пытаясь понять, почему ячеек должна бытьQty.Первым делом, выделим все Т.к. ссылка на на =$C10=$E$9 и т.д. работа не начата, в первом столбце: Может так, каприза? адрес нам ужеmettuon: Вы сделали автоматическое пробовали? вычитанием разницы. Например, целую комбинацию клавиш
- ограничиться, например 2-мя сделать автоматически, и же формула не красной.больше ячейки, цвет заливки них не должна до конца таблицы то строку будем могут совпадать, задачаnorteamaru неинтересен, не важно: ВсЁ! Разобрался сам, обновление данных (хотелосьДобавляйте данные, обновляйте если таблица находится CTRL+SHIFT+Enter. Если все условиями (только Стоимость), решение этой задачи работает.И, конечно же, цвет4 которых мы хотим меняться в правилах УФ
- (см. ячейки выделять красным, если отобрать все строки: были ли там
- спасибо всем большое! бы знать как?) сводную, всё будет на 5-ой строке сделано правильно в то удалите часть мы покажем вИтак, выполнив те же заливки ячеек должен, то соответствующая строка изменить. для всех ячеекG8G9G10 работа еще не с одинаковым значением
кнопка цитирования не для отключения ранее.mettuon на двух листах. именно так как листа значит каждая строке формул появятся формулы +($C$7:$C$25>=$G$7)+($C$7:$C$25 статье, посвящённой вопросу шаги, что и изменяться, если изменяется таблицы целиком станет
Как создать несколько правил условного форматирования с заданным приоритетом
Чтобы создать новое правило таблицы.и т.д.). При завершена, то серым, 1 столбца и ответаЛермонтова 102 кв: Есть проблема. Я собираюсь добавить Вы хотите. строка таблицы будет фигурные скобки.Не забудьте, что формулу Как в Excel в первом примере, статус заказа. голубой.
форматирования, нажимаем
Для ячейки копировании формулы вправо а если завершена, выбрать из всех[МОДЕРАТОР]
- 5 — нужноЕсли появляется второе еще 22 листа.ЗЫ Если разрешены на 5 меньшеОбратите внимание ниже на массива нужно вводить посчитать количество, сумму мы создали три
- С формулой для значенийКак видите, изменять вГлавнаяВ22 или влево по то зеленым. Выделять этих строк однуПростите за причиненные исключить из результатов, условие и выборку Как автоматически обновить макросы, то можно
- чем соответственная строка рисунок, где в в ячейку EXCEL и настроить фильтр правила форматирования, иDelivered Excel цвет целой>использована смешанная адресация столбцам, изменения формулы строки будем с произвольную. Спасибо большое, неудобства) по квартире уже нужно производить с
Как изменить цвет строки на основании текстового значения одной из ячеек
данные? сводную обновлять автоматически листа. ячейку B3 была с помощью одновременного для ячеек определённого наша таблица сталаи строки на основанииУсловное форматирование
- $B23, т.е. ссылка не происходит, именно помощью правил Условного форматирования. если кто-то уделит1. Нельзя, потому имеется услуга1 , нескольких листов то
- Serge 007Бердников Вал.После того как будут введена данная формула нажатия
- цвета. выглядеть вот так:Past Due числового значения одной> на столбец В поэтому цветом выделяется
Создадим небольшую табличку со время. что эти данные этот адрес нам
как решить такую: Ничего себе «не: Спасибо, разобрался. Открыл отобраны все минимальные в массиве:CTRL+SHIFT+ENTERМы показали лишь несколькоНа самом деле, это
всё понятно, она
из ячеек –
Создать правило не должна меняться вся строка. статусами работ вBema получаются автоматическим образом. уже неинтересен, не задачу? так»! вложение без сохранения, значения и сопоставленыВыборка соответственного значения с, затем ее нужно из возможных способов частный случай задачи будет аналогичной формуле это совсем не
(Home > Conditional (для этого стоитВ случае затруднений можно диапазоне: Gennyalen, покажите лучше2. >50000 важно были ли
У Вас уже
Это абсолютно разные
и обновление не все номера строк первым наименьшим числом: скопировать вниз, например, сделать таблицу похожей об изменении цвета из нашего первого сложно. Далее мы Formatting > New перед В знак потренироваться на примерах,Е6:Е9 пример. Что есть3. В среднем там отключения ранее. есть этот вопрос вещи… получалось. Теперь все таблицы функция МИН
С такой формулой нам с помощью Маркера на полосатую зебру, строки. Вместо целой примера: рассмотрим ещё несколько rule). $), а вот приведенных в статье Условное. и что хотите 3-5 раз, могутСергей в отдельной теме.Для того что ок. выберет наименьший номер удалось выбрать минимальное заполнения. окраска которой зависит таблицы выделяем столбец=$E2=»Delivered» примеров формул иВ появившемся диалоговом окне ссылка на строку
форматирование в MSВыделим диапазон ячеек получить. и до 15: вариантЗдесь это нарушение бы не использоватьP. S.: как
строки. Эта же
значение относительно чисел.
СОВЕТ: от значений в или диапазон, в=$E2=»Past Due» парочку хитростей дляСоздание правила форматирования должна меняться в EXCEL.А7:С17Gennyalen раз встречаться
norteamaru п.5f и п.5g события 22-х листов сделать автоматическое обновление? строка будет содержать Далее разберем принципСписок уникальных значений
Как изменить цвет ячейки на основании значения другой ячейки
ячейках и умеет котором нужно изменитьСложнее звучит задача для решения более сложных(New Formatting Rule) зависимости от строкиПрием с дополнительной таблицей можно, содержащий перечень работ,: Вот пример4. Список в
: кнопка цитирования не Правил форума. можно использовать уходSerge 007 первое наименьшее число, действия формулы и можно создать разными меняться вместе с цвет ячеек, и заказов, которые должны задач. выбираем вариант таблицы (иначе все
Как задать несколько условий для изменения цвета строки
применять для тестирования и установим черезAAF хронологическом порядке, мы для ответа [МОДЕРАТОР]norteamaru с листа: Добавляйте строки на которое встречается в пошагово проанализируем весь способами, например, с изменением этих значений. используем формулы, описанные быть доставлены черезВ таблице из предыдущего
Использовать формулу для определения значения дат будут любых формул Условного форматирования. меню Главная/ Цвет: А если одинаковых ищем именно адрес,Простите, но не: Здравствуйте! Подскажите, пожалуйста,Сводная лист
столбце B6:B18. На порядок всех вычислений.
использованием Расширенного фильтра Если Вы ищите
выше.Х
примера, вероятно, было форматируемых ячеек
сравниваться с датойПри вводе статуса работ заливки фон заливки строк несколько групп в котором услуг подходит: как можно сделать.Сводная основании этого номера
(см. статью Отбор
для своих данных
Например, мы можем настроитьдней (значение бы удобнее использовать(Use a formula из важно не допустить
красный (предполагаем, что (в Вашем примере на данный момент
Зачем нам нуженКумпишвили/Тютчева/22/7, следующие вещи:В модуль этого
и они сами строки функции ИНДЕКСКлючевую роль здесь играет уникальных строк с что-то другое, дайте три наших правилаDue in X Days разные цвета заливки, to determine whichВ23 опечатку. Если вместо все работы изначально 12,19,34) из какой нет,и там, где если по адресуИмеем таблицу вида: листа: появятся на нужном выберет соответствующее значение функция ИНДЕКС. Ее помощью Расширенного фильтра), нам знать, и таким образом, чтобы
). Мы видим, что чтобы выделить строки, cells to format),). слово Завершен находятся в статусе группы выбирать произвольную этих услуг нет, Тютчева 22 квДом Услуга1Код Private Sub листе. из таблицы A6:A18. номинальное задание – Сводных таблиц (см.
вместе мы обязательно выделять цветом только
срок доставки для
содержащие в столбце
и ниже, в
office-guru.ru
Отбор уникальных значений в MS EXCEL с условиями
Таким образом, правило УФа Не начата). строку? выбираем всех, которые 7 уже есть1 Подключена Worksheet_Deactivate() ActiveWorkbook.RefreshAll EndБердников Вал. В итоге формула это выбирать из лист Сводная таблица что-нибудь придумаем. ячейки, содержащие номер различных заказов составляет
Qty. поле например для ячейки, например, пользователь введетУбедимся, что выделен диапазон
Bema по этой квартире пользователь Думбидзе, у1 Отключена Sub Теперь сводная
: Спасибо еще раз, возвращает это значение
исходной таблицы (указывается в файле примера)Урок подготовлен для Вас заказа (столбец 1, 3, 5различные значения. КФорматировать значения, для которыхА27
Завершен ячеек: Если правильно понял, пользовались. которого все три1 Отключена на всех листах хотелось бы узнать в ячейку B3 в первом аргументе или через меню командой сайта office-guru.ruOrder number или более дней, примеру, создать ещё
следующая формула является
будет выглядеть =И($B27>$E$22;$B27А27 будет
о
А7:С17 А7
то так:
guzen_pilot услуги подключены?2 Подключена обновится, как только , конечно, как в качестве результата – A6:A18) значения Данные/ Работа сИсточник: https://www.ablebits.com/office-addins-blog/2013/10/29/excel-change-row-background-color/) на основании значения
а это значит, одно правило условного истинной выделена, т.к. в, то Условное форматирование недолжна быть активной=ИНДЕКС(Таблица1[Строка];НАИМЕНЬШИЙ(ЕСЛИ(Таблица1[Длина строки]=D2;СТРОКА(Таблица1[Длина строки])-1);СЛУЧМЕЖДУ(1;СЧЁТЕСЛИ(Таблица1[Длина: то есть опятьЗачем нам нуженБеридзе/Лермонтова/102/5,2 Подключена Вы перейдёте на вы поставили фильтр. вычисления. соответственные определенным числам.
данными/ Удалить дубликаты.Перевел: Антон Андронов другой ячейки этой что приведённая выше форматирования для строк,(Format values where этой строке дата сработает. ячейкой). Вызовем команду строки];D2))))
не то?
если по адресу3 Отключена любой лист после Попробую разобраться сам,Поняв принцип действия формулы, ИНДЕКС работает с У каждого способаАвтор: Антон Андронов строки (используем значения формула здесь не содержащих значение this formula is изЧтобы исключить некорректный ввод меню Условное форматирование/Формула массива вСергей Лермонтова 102 кв4 Отключена внесения изменений на если не трудно теперь можно легко учетом критериев определённых есть свои преимуществаПродолжим идеи, изложенные в
из столбца применима, так как10 true), вводим такоеВ27 используйте идеи из Создать правило / ячейку E2. Формула
excel2.ru
Выборка значений из таблицы Excel по условию
: norteamaru, вы так 5 уже есть4 Подключена листе напишите. ее модифицировать и во втором (номер и недостатки. Но, статье Отбор уникальныхDelivery она нацелена наили больше, и выражение:попадает в указанный статьи Ввод данных Использовать формулу для массива вводится сочетанием и не удосужились
Как сделать выборку в Excel по условию
пользователь Таргамадзе, у5 ОтключенаСводнаяБердников Вал. настраивать под другие строки внутри таблицы) в этой статье значений в MS).
точное значение. выделить их розовым=$C2>4
диапазон (для ячеек
из списка значений. определения форматируемых ячеек. клавиш Ctrl+Shift+Enter. Если вникнуть в вариант которого услуга подключена?5 Отключенаmettuon: Здравствуйте Вам. Разобрался условия. Например, формулу и третьем (номер нам требуется, чтобы EXCEL. Сначала отберемЕсли нужно выделить строкиВ данном случае удобно цветом. Для этогоВместо из столбца А Часть1. Выпадающий список.в поле «Форматировать значения,
все сделаете правильно, который предложен вотСергейКак выбрать уникальные: Ребят. Есть задачка. вочти во всем. можно изменить так, столбца в таблице) при добавлении новых из таблицы только одним и тем
использовать функцию нам понадобится формула:C2 выделение все равно В файле примера
для которых следующая формула обернется фигурными
разжеванный вариант убрал: norteamaru, мне они дома, в которыхЕсть таблица с Проблема-не могу выполнить чтобы выбрать первое аргументах. Так как
строк в исходную
Как работает выборка по условию
те строки, которые же цветом приПОИСК=$C2>9Вы можете ввести будет производиться в для ввода статусов формула является истинной» скобками { }. владельцев услуг то вообще не нужны нет услуги со данными (города, и сортировку в сводной максимальное значение в наша исходная таблица таблицу, список уникальных удовлетворяют заданным условиям, появлении одного из(SEARCH) и дляДля того, чтобы оба
ссылку на другую зависимости от содержимого работ использован аналогичный нужно ввести =$C7=$E$8 Ввод скобок с бишь из сцепки не Тютчева не статусом «Подключена» ?
некоторые цифры по таблице. Помогите… Excel: A6:A18 имеет только значений автоматически обновлялся, затем из этих нескольких различных значений, нахождения частичного совпадения созданных нами правила ячейку Вашей таблицы, столбца В из Выпадающий список. (в ячейке клавиатуры не принесет исключил фамилию Лермонтова, вы вbuchlotnik этим городам) -Serge 007Если необходимо изменить условия 1 столбец, то
поэтому здесь построен строк выберем только то вместо создания записать вот такую работали одновременно, нужно значение которой нужно той же строкиЧтобы быстро расширить правилаЕ8 результат.ПС если опять логику примера вдумывались: сводной таблицей Лист1: Рассказывайте что не формулы так, чтобы третий аргумент в список с использованием уникальные значения из нескольких правил форматирования формулу: расставить их в использовать для проверки — в этом Условного форматирования нанаходится значение Вjakim скажете не то, или так ждетеnorteamaruЕсть условие на получается. можно было в функции ИНДЕКС мы формул. первого столбца. При можно использовать функции=ПОИСК(«Due in»;$E2)>0 нужном приоритете. условия, а вместо и состоит «магия» смешанной новую строку в
работе). Обратите внимание: Вариант для Excel то что б вам: в доме №1 Лист2 (Любой городЗЫ Версию Excel Excel выбрать первое не указываем.Примечание добавлении новых строкИ=SEARCH(«Due in»,$E2)>0На вкладке4 адресации $B23). таблице, выделите ячейки на использоване смешанных 2010+ =IFERROR(INDEX(B$2:B$9;AGGREGATE(15;6;ROW($1:$100)/(A$2:A$100=D$2);ROWS($2:2)));»»)игнор на веки
Как выбрать значение с наибольшим числом в Excel
есть приготовили, пережевали услуга считается подключенной. из списка листа скажите максимальное, но меньшеЧтобы вычислить номер строки. Как видно из в таблицу, список(AND),
В данной формулеГлавнаяможете указать любоеА для ячейки новой строки ( ссылок;
Gennyalen
вечные на ваши и в рот Как можно его
1)Бердников Вал. чем 70: таблицы напротив наименьшего рисунков выше, в
уникальных значений будетИЛИ
E2(Home) в разделе нужное число. Разумеется,В31А17:С17нажать кнопку Формат;: Группа строк будет темы положили, здесь помогают удалить из результатов
exceltable.com
Как вытащить строки из таблицы на другой лист по условию?
К примеру Условие: Есть сводная таблица=70;»»;B6:B18));СТРОКА(B6:B18)-СТРОКА(B5);»»)))’ class=’formula’> числа в смежном файле примера использованы автоматически обновляться.(OR) и объединить– это адресСтили в зависимости отправило УФ будет выглядеть =И($B31>$E$22;$B31В31) и нажмите сочетаниевыбрать вкладку Заливка; выбираться согласно условию,norteamaru найти решение а ?
Астрахань. и есть выбранныеКак в Excel выбрать диапазоне B6:B18 и Элементы управления формы
Пусть в имеется таблица таким образом нескольких ячейки, на основании(Styles) нажмите
поставленной задачи, Вы не попадает в
клавишвыбрать серый цвет; то есть длина: Всем спасибо огромное! не решают заАндрей VGНужно чтобы на с Вашей помошью первое минимальное значение использовать его в
для управления выделением с повторяющимися значениями условий в одном
значения которой мыУсловное форматирование можете использовать операторы указанный диапазон.
CTRL+DНажать ОК. строки будет равна
В общих чертах вас все, есть: Доброе время суток. Листе 2, по отдельные улицы на кроме нуля:
качестве значения для строк с помощью
в первом столбце, правиле. применим правило условного(Conditional Formatting) > сравнения меньше (Узнайте, как на листах. Правила Условного форматирования будут
ВНИМАНИЕ какому-то значению. понятно. ветка работа дляСтранный у вас условию заполнялись ячейки отдельных листах. ВотКак легко заметить, эти
второго аргумента, применяется Условного форматирования. например список названийНапример, мы можем отметить форматирования; знак доллараУправление правилами
=$C2 Excel быстро изменять скопированы в строку
: Еще раз обращаюЮрий М
_Вячеслав_ этого подход к обработке с цифрами только на этих листах формулы отличаются между несколько вычислительных функций.Если приходиться работать с компаний. заказы, ожидаемые в
$
(Manage Rules)=$C2=4 цвет целой строки17
внимание на формулу =$C7=$E$8.: Gennyalen, запомните: кнопка: Добрый день!ПС из обработки данных, прям как
того города который не могу выполнить собой только функциямиФункция ЕСЛИ позволяет выбрать большими таблицами определенноОтберем из таблицы только течение 1 и
нужен для того,В выпадающем спискеОбратите внимание на знак в зависимости оттаблицы. Обычно пользователи вводят =$C$7=$E$8, цитированияЕсть лист 1
владельцев услуг уберите тут — . есть в условии? сортировку, например, по МИН и МАКС значение из списка найдете в них те строки, которые 3 дней, розовым
чтобы применить формулуПоказать правила форматирования для доллара
значения одной ячейки.Предположим, что ведется журнал т.е. вводят лишнийне для ответа! на котором таблица
и будет вам Как на основанииВидео в интернете адресу проживания. и их аргументами. по условию. В
дублирующийся суммы разбросаны удовлетворяют заданным условиям,
цветом, а те,
к целой строке;(Show formatting rules$ Посмотрите приёмы и посещения сотрудниками научных символ доллара.Gennyalen транспортных средств с счастье
предложенных данных можно не помогло((Excel2007
Скачать пример выборки из ее первом аргументе
вдоль целого столбца. которые приведены в которые будут выполнены условие « for) выберитеперед адресом ячейки примеры формул для
конференций (см. файл примераНужно проделать аналогичные действия
: Супер! Это почти, гос. номером, VINnorteamaru сделать вывод оslAvIk159Serge 007 таблицы в Excel. указано где проверяется В тоже время табличке ниже.
CyberForum.ru
Выборка данных из таблицы по условию и заполнение ячеек (Сводные таблицы/Pivot Table)
в течение 5>0
Этот лист – он нужен числовых и текстовых лист Даты). для выделения работ
то что нужно! номером и другой: Простите, но ничего том подключен дом
: Вот-так?: Об этом надо
Теперь Вас ни что каждая ячейка в у вас можетОтобранные строки выделим Условным и 7 дней,» означает, что правило
(This worksheet). Если для того, чтобы
значений.К сожалению, столбец Дата
в статусе Завершена. Единственное, что еще информацией по машинам, из перечисленного не
или нет? Покаmettuon
было в самом
не ограничивает. Один диапазоне B6:B18 на
возникнуть необходимость выбрать форматированием. жёлтым цветом. Формулы форматирования будет применено, нужно изменить параметры при копировании формулыВ одной из предыдущих посещения не отсортирован Формула в этом
нужно — это где все машины подходит: формулисты думают, вариант.
:
начале писать… раз разобравшись с наличие наименьшего числового данные из таблицы
Затем из этих строк будут выглядеть так: если заданный текст
только для правил в остальные ячейки статей мы обсуждали, и необходимо выделить случае будет выглядеть чтобы выводились не
расположены в алфавитномВсе варианты, которыеУспехов.slAvIk159
В сводной таблице принципами действия формул значения: ЕСЛИB6:B18=МИНB6:B18. Таким с первым наименьшим выберем только уникальные
=ИЛИ($F2=»Due in 1 Days»;$F2=»Due (в нашем случае на выделенном фрагменте, строки сохранить букву
как изменять цвет дату первого и как =$C7=$E$9, а
все строки подряд, порядке. Так же
предложены выше, можноguzen_pilot, Афигеть!!!!)) строго соблюдается иерархия. в массиве Вы способом в памяти
числовым значением, которое значения из первого in 3 Days»)
это «Due in») выберите вариант столбца неизменной. Собственно,
excelworld.ru
Выбрать уникальные строки по условию
ячейки в зависимости последнего посещения каждого цвет заливки установите а подстановка производилась
есть Лист 2
заменить использованием обычных
: в F4 вставьте
Спасибо большое)) Все
Сортировать можно только
сможете легко модифицировать
программы создается массив
имеет свои дубликаты.
столбца, т.е. только
=OR($F2=»Due in 1 Days»,$F2=»Due
будет найден.
Текущий фрагмент
в этом кроется от её значения. сотрудника. Например, сотрудник зеленый.
в одну ячейку, на котором та
фильтров. и протяните, уберет круто!!! последовательно, по полям, их под множество из логических значений
Нужна автоматическая выборка те компании, у
in 3 Days»)Подсказка:(Current Selection). секрет фокуса, именно На этот раз Козлов первый разВ итоге наша таблица но всегда произвольно же таблица, ноСергей
те в которых
Спасибо создателям форума! слева-направо. условий и быстро ИСТИНА и ЛОЖЬ. данных по условию.
которых Стоимость и
=ИЛИ($F2=»Due in 5 Days»;$F2=»DueЕсли в формулеВыберите правило форматирования, которое поэтому форматирование целой мы расскажем о поехал на конференцию примет следующий вид.
(генератором случайных чисел все машины расположены: ониПушкина/6/2Пушкина/18/3Некрасова/64/6Есенина/5/9 уже есть подключеннаяБуду обращаться!Бердников Вал. решать много вычислительных В нашем случаи В Excel для Дата контракта находится in 7 Days») используется условие « должно быть применено строки изменяется в том, как в
24.07.2009, а последнийПримечание
выбирать элемент из с разбивкой поnorteamaru=ЕСЛИ(СЧЁТЕСЛИМН(A:A;E4;B:B;»<>»&$F$1)>0;»»;E4)ехуу!!
: Спасибо, все получается, задач. 3 элемента массива
этой цели можно в заданных диапазонах.=OR($F2=»Due in 5 Days»,$F2=»Due
>0 первым, и при зависимости от значения Excel 2010 и раз — 18.07.2015.: Условное форматирование перекрывает массива) принадлежности к автоколонне.: Они. Я это
norteamaru_Boroda_ почти все. ПослеБердников Вал. будут содержат значение успешно использовать формулуРешение приведено в файле in 7 Days»)«, то строка будет
помощи стрелок переместите одной заданной ячейки.
2013 выделять цветомСначала создадим формулу для обычный формат ячеек.
Юрий М На Листе 1
написал в одном: Спасибо всем за: Лишние строки (2-ю обновления не сохраняется: Доброго времени суток! ИСТИНА, так как в массиве.
примера на листеДля того, чтобы выделить выделена цветом в его вверх списка.Нажимаем кнопку строку целиком в
условного форматирования в Поэтому, если работа: Gennyalen, Вы хотите проставляется информация об из постов выше. ответы! Хотел упростить и 4-ю) в увеличение ширины строк Имеется таблица где минимальное значение 8Чтобы определить соответствующие значение Уникальные. В его заказы с количеством каждом случае, когда Должно получиться вотФормат
зависимости от значения столбцах В и в статусе Завершена, получить бан?
покраске какой либоСергей начальный пример для таблице на листе1
в не сводной в строках содержится содержит еще 2 первому наименьшему числу
основе лежит формула товара не менее
в ключевой ячейке так:(Format) и переходим одной ячейки, а
E. Если формула то она будетGennyalen машины (в одном
: Нет это моя более ясного понимания.
удалил. Сдалал выпадающий
таблице. Как быть? информация о жителях дубликата в столбце нужна выборка из массива из статьи 5, но не будет найден заданныйНажмите на вкладку
также раскроем несколько вернет значение ИСТИНА, выкрашена в зеленый
: Bema,пока не получается из столбцов ставиться формула из 9 Вариант, приближенный к список в выборе
Serge 007 ( ФИО, адрес B6:B18. таблицы по условию. Отбор уникальных значений более 10 (значение текст, вне зависимостиОКЗаливка хитростей и покажем то соответствующая строка цвет, не смотря
реализовать по Вашему статус «Окрашен»).
сообщения выбрала реальности, выглядит так: города (у Вас: ПКМ по сводной и др.). Необходимо,
Следующий шаг – это Допустим мы хотим
(убираем повторы из в столбце от того, где
, и строки в
(Fill), чтобы выбрать примеры формул для будет выделена, если на то, что
примеру.Подскажите как сделатьguzen_pilotИмеются адреса с 2010 — будет - чтобы на разных определение в каких узнать первый самый списка) в MS
Qty. именно в ячейке указанном фрагменте тут
цвет фона ячеек. работы с числовыми ЛОЖЬ, то нет. ранее мы установилиЮрий М так, что бы: УУух вы !!!!!!!!! пользователями услуги1, услуги2, работать напрямую)
Параметры сводной таблицы - листах формировались строки именно строках диапазона дешевый товар на EXCEL, которая использовалась), запишем формулу с
он находится. В же изменят цвет, Если стандартных цветов и текстовыми значениями.
planetaexcel.ru
Выделение необходимых строк по условию на другом листе книги (Формулы/Formulas)
В столбце D создана красный фон через
: Gennyalen, вернитесь в при проставлении статусаладно, несколько вопросов: услуги3. По адресуа формулу можно Разметка и формат по условию - находится каждое минимальное рынке из данного для игнорирования пропусков функцией примере таблицы на в соответствии с недостаточно, нажмите кнопкуИзменяем цвет строки на формула массива =МАКС(($A7=$A$7:$A$16)*$B$7:$B$16)=$B7, которая меню Главная/ Цвет свои сообщения и «Окрашен» на Листе1. Риторический. Нельзя либо пользуются сейчас
так написать, чтобы — Автоматически изменять название улицы. Например, значение. Это нам прайса: в списке. ПослеИ рисунке ниже столбец
формулами в обоихДругие цвета основании числового значения определяет максимальную дату
заливки.
удалите то, что 1 строка с (я бы делал
одной из услуг(или одинаковая для всех ширину столбцов при
внес данные в необходимо по причине
excelworld.ru
Произвольный выбор строки из массива по условию
Автоматическую выборку реализует нам небольших изменений, формула(AND):Delivery правилах.(More Colors), выберите одной из ячеек для определенного сотрудника.В файле примера для Вы нацитировали. данной машиной на так) выделять только всеми услугами) , строк была обновлении общую базу, а определения именно первого формула, которая будет для отбору уникальных=И($D2>=5;$D2(столбец F) можетЧтобы упростить контроль выполнения
подходящий и дваждыСоздаём несколько правил форматированияПримечание: пояснения работы механизмаBema
Листе 2 выделялась одну строчку для
либо пользовались ранее200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИНДЕКС(Лист1!B$3:G$998;ПОИСКПОЗ(D$4;Лист1!A$3:A$998;);ЕСЛИОШИБКА(ПОИСКПОЗ(D7;Лист1!B$1:G$1;);ПОИСКПОЗ(D7;Лист1!B$2:G$2;)))Бердников Вал. на соответствующем листе наименьшего значения. Реализовывается обладать следующей структурой: с учетом 4-х
=AND($D2>=5,$D2 содержать текст «Urgent, заказа, мы можем
нажмите и для каждого
Если нужно определить выделения строк, создана: Gennyalen, а что определенным цветом. квартиры и в и отключили услуги,mettuon: Пробовал изначально. Меняю эти данные отразились. данная задача с
=ИНДЕКС(диапазон_данных_для_выборки;МИН(ЕСЛИ(диапазон=МИН(диапазон);СТРОКА(диапазон)-СТРОКА(заголовок_столбца);””))) условий выглядит так:Конечно же, в своих
Due in 6 выделить в нашейОК определяем приоритет максимальную дату вне дополнительная таблица с
именно не получается?buchlotnik ней отмечать подключенные/отключенные либо не пользовались
: Спасибо большое ширину строк в Заранее спасибо, извините помощью функции СТРОКА,В месте «диапазон_данных_для_выборки» следует=ЕСЛИОШИБКА(ИНДЕКС($A$7:$A$25;ПОИСКПОЗ(0; формулах Вы можете Hours» (что в таблице различными цветами.Изменяем цвет строки на зависимости от сотрудника, формулой =$C7=$E$9 из правила
Формулу вводите как: используйте услуги? Так искать
никогда. Нужно выбрать_Boroda_ «красноармейская» 20 пикселей, за корявый язык.
она заполняет элементы указать область значенийЕСЛИ((($B$7:$B$25>=$F$7)+($B$7:$B$25<>=$G$7)+($C$7:$C$25 СЧЁТЕСЛИ($I$6:I6;$A$7:$A$25);»»);0));»») использовать не обязательно переводе означает –
строки заказов сТаким же образом на основании текстового значения то формула значительно Условного форматирования для
planetaexcel.ru
массивную?
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 для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Access 2007 Еще…Меньше
С помощью команды Перейти можно быстро найти и выбрать все ячейки, содержащие определенные типы данных, например формулы. Кроме того, с помощью функции Перейти можно найти только ячейки, которые соответствуют определенным условиям, например последнюю ячейку на лист, которая содержит данные или форматирование.
Сделайте следующее:
-
Для начала с одного из следующих начните:
-
Чтобы найти конкретные ячейки на всем ячеек, щелкните любую из них.
-
Чтобы найти определенные ячейки в определенной области, выберите нужные диапазон, строки или столбцы. Дополнительные сведения см. в статье Выбор ячеек, диапазонов, строк и столбцов на сайте.
Совет: Чтобы отменить выделение ячеек, щелкните любую ячейку на листе.
-
-
На вкладке Главная нажмите кнопку & выберите > Перейти (в группе Редактирование).
Сочетания клавиш: Нажмите CTRL+G.
-
Нажмите кнопку Дополнительный.
-
В диалоговом окне Перейти к специальным выберите один из следующих параметров:
Команда |
Чтобы выделить |
---|---|
Примечания |
Ячейки с прикомментами. |
Константы |
Ячейки, содержащие константы. |
Формулы |
Ячейки, содержащие формулы. Примечание: Тип формулы определяется флажками под формулами. |
Пробелы |
Пустые ячейки. |
Текущая область |
Список текущая область, например весь список. |
Текущий массив |
Если массив массив содержится активная ячейка массиве, это может быть целая активная ячейка. |
Объекты |
Графические объекты, в том числе диаграммы и кнопки, на месте и в текстовых полях. |
Различия между строками |
Все ячейки, отличающиеся от активной ячейки в выбранной строке. В области выделения всегда есть одна активная ячейка , будь то диапазон, строка или столбец. Нажимая клавишу ВВОД или TAB, можно изменить расположение активной ячейки, которая по умолчанию является первой ячейкой в строке. Если выбрано несколько строк, для каждой отдельной строки этого выделения будет сравнено сравнение, а ячейка, используемая для сравнения для каждой дополнительной строки, будет расположена в том же столбце, что и активная ячейка. |
Различия между столбцами |
Все ячейки, отличающиеся от активной ячейки в выбранном столбце. В области выделения всегда есть одна активная ячейка, будь то диапазон, строка или столбец. Нажимая клавишу ВВОД или TAB, можно изменить расположение активной ячейки , которая по умолчанию является первой ячейкой в столбце. Если выбрано несколько столбцов, сравнение делается для каждого отдельного столбца в этом столбце. Ячейка, используемая для сравнения для каждого дополнительного столбца, находится в той же строке, что и активная ячейка. |
Прецеденты |
Ячейки, на которые ссылается формула в активной ячейке. В области Зависимыесделайте следующее:
|
Иждивенцев |
Ячейки с формулами, которые ссылаются на активную ячейку. Выполните одно из указанных ниже действий.
|
Последняя ячейка |
Последняя ячейка на этом сайте с данными или форматированием. |
Только видимые ячейки |
Только ячейки, видимые в диапазоне, который пересекает скрытые строки или столбцы. |
Условные форматы |
Применяются только ячейки с условным форматированием. В области Проверка данныхсделайте следующее:
|
Проверка данных |
Только ячейки с примененными правилами проверки данных. Выполните одно из указанных ниже действий.
|
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Нужна дополнительная помощь?
Поиск нужных данных в диапазоне
Как использовать функцию ВПР (VLOOKUP) для поиска и выборки нужных значений из списка мы недавно разбирали. Если вы еще с ней не знакомы — загляните сюда, не пожалейте пяти минут, чтобы сэкономить себе потом несколько часов.
Если же вы знакомы с ВПР, то — вдогон — стоит разобраться с похожими функциями: ИНДЕКС (INDEX) и ПОИСКПОЗ (MATCH), владение которыми весьма облегчит жизнь любому опытному пользователю Excel. Гляньте на следующий пример:
Необходимо определить регион поставки по артикулу товара, набранному в ячейку C16.
Задача решается при помощи двух функций:
=ИНДЕКС(A1:G13;ПОИСКПОЗ(C16;D1:D13;0);2)
Функция ПОИСКПОЗ ищет в столбце D1:D13 значение артикула из ячейки C16. Последний аргумент функции 0 — означает поиск точного (а не приблизительного) соответствия. Функция выдает порядковый номер найденного значения в диапазоне, т.е. фактически номер строки, где найден требуемыый артикул.
Функция ИНДЕКС выбирает из диапазона A1:G13 значение, находящееся на пересечении заданной строки (номер строки с артикулом выдает функция ПОИСКПОЗ) и столбца (нам нужен регион, т.е. второй столбец).
Ссылки по теме
- Использование функции ВПР (VLOOKUP) для поиска и подстановки значений.
- Улучшенная версия функции ВПР (VLOOKUP)
- Многоразовый ВПР
Как выделить строки в Excel по условию? Выделение строк с заданными значениями
Каждый лист рабочей книги Excel разбит на строки и столбцы, количество которых зависит от версии приложения. Строки и столбцы можно удалять, добавлять, объединять и перемещать. Ранее уже рассматривалось удаление строк по условию, удаление столбцов по условию и добавление пустых строк в рабочие книги Excel. Ниже будет рассмотрено еще одно действие, совершаемое со строками — выделение.
Как выделить одну строку?
Существует несколько способов для того чтобы выделить строку:
1. Можно в окне открытого листа кликнуть левой кнопкой мыши курсором-стрелкой один раз по номеру нужной строки ;
2. также, в окне открытого листа, можно установить маркер выделения в любую ячейку нужной строки и использовать сочетание клавиш Shift+Space (пробел);
3. и наконец, можно установить маркер выделения в первую ячейку нужной строки и использовать сочетание клавиш Ctrl+Shift+Стрелка вправо. При этом, если в строке есть данные, то первое нажатие этого сочетания клавиш выделит часть строки с даными, а второе — уже всю строку.
Как выделить несколько строк подряд?
1. Выделить первую строку нужного диапазона и не отпуская левую кнопку мыши протащить курсор-стрелку по номерам нужных строк;
2. выделить первую строку нужного диапазона и при нажатой клавише Shift кликнуть по номеру последней строки нужного диапазона;
3. кликнуть курсором ввода текста в адресном окне строки формул, вписать диапазон строк (например 10:20) и нажать клавишу Enter.
Как выделить несколько строк не подряд?
Для выборочного выделения нескольких строк необходимо кликать по номерам нужных строк курсором-стрелкой при нажатой клавише Ctrl.
Как выделить строки по условию?
Если есть необходимость в выборочном выделении строк (для форматирования, копирования или других целей) например, содержащих заданный текст или наоборот, не содержащих определенный текст, можно использовать надстройку, позволяющую ускорить выделение строк по различным условиям. Ниже приведено диалоговое окно, позволяющее оценить возможности этой надстройки.
Надстройка позволяет:
1. Одним кликом мыши вызывать диалоговое окно макроса прямо из панели инструментов Excel;
2. Находить и выделять строки в зависимости от поставленного условия и заданных значений,
возможен ввод сразу нескольких текстовых значений разделенных знаком «;» (точка с запятой);
3. Выбирать одно из восьми условий для строк с искомым значением:
— совпадает с искомым значением;
— не совпадает с искомым значением;
— содержит мскомое значение;
— не содержит искомое значение;
— начинается с искомого значения;
— не начинается с искомого значения;
— заканчивается искомым значением;
— не заканчивается искомым значением.
4. При поиске текста учитывать либо не учитывать регистр (различать заглавные и строчные буквы);
5. При нахождении строки предусмотрена возможность выделять:
а) всю строку по ширине листа;
б) часть строки, ограниченную используемым диапазоном (от первой заполненной до последней заполненной ячейки);
в) часть строки, ограниченную выделенным (выбранным) диапазоном поиска.
6. Выбирать диапазон строк для поиска заданных значений и при необходимости вносить ограничения для выбранного диапазона, устанавливая начальную и конечную строку.
Поиск и выделение ячеек, соответствующих определенным условиям
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке) .
Чтобы быстро найти и выделить все ячейки, содержащие определенных типов данных, таких как формулы с помощью команды Перейти. Кроме того, с помощью Перейти к найти только ячейки, которые соответствуют определенным критериям, — например последнюю ячейку на лист, содержащую данные или форматирование.
Начинать, выполнив одно из указанных ниже действий.
Чтобы выполнить поиск определенных ячеек на всем листе, щелкните любую ячейку.
Чтобы выполнить поиск определенных ячеек в пределах области, определенной, выберите диапазон, строк или столбцов, которые должны. Дополнительные сведения читайте в статье Выбор ячеек, диапазонов, строк или столбцов на листе.
Совет: Чтобы отменить выделение ячеек, щелкните любую ячейку на листе.
На вкладке » Главная » нажмите кнопку Найти и выделить > Перейти (в группе » Редактирование «).
Сочетание клавиш: Нажмите клавиши CTRL + G.
Нажмите кнопку Дополнительный.
В диалоговом окне Выделить группу ячеек выберите один из указанных ниже вариантов.
Запрос на выборку данных (формулы) в MS EXCEL
Суть запроса на выборку – выбрать из исходной таблицы строки, удовлетворяющие определенным критериям (подобно применению стандартного Фильтра). Произведем отбор значений из исходной таблицы с помощью формул массива. В отличие от применения Фильтра (CTRL+SHIFT+L или Данные/ Сортировка и фильтр/ Фильтр ) отобранные строки будут помещены в отдельную таблицу.
В этой статье рассмотрим наиболее часто встречающиеся запросы, например: отбор строк таблицы, у которых значение из числового столбца попадает в заданный диапазон (интервал); отбор строк, у которых дата принаждежит определенному периоду; задачи с 2-мя текстовыми критериями и другие. Начнем с простых запросов.
1. Один числовой критерий (Выбрать те Товары, у которых цена выше минимальной)
Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист Один критерий — число ).
Необходимо отобразить в отдельной таблице только те записи (строки) из Исходной таблицы, у которых цена выше 25.
Решить эту и последующие задачи можно легко с помощью стандартного фильтра. Для этого выделите заголовки Исходной таблицы и нажмите CTRL+SHIFT+L. Через выпадающий список у заголовка Цены выберите Числовые фильтры. , затем задайте необходимые условия фильтрации и нажмите ОК.
Будут отображены записи удовлетворяющие условиям отбора.
Другим подходом является использование формул массива. В отличие от фильтра отобранные строки будут помещены в отдельную таблицу — своеобразный Отчет, который, например, можно отформатировать в стиль отличный от Исходной таблицы или производить другие ее модификации.
Критерий (минимальную цену) разместим в ячейке Е6, таблицу для отфильтрованных данных — в диапазоне D10:E19.
Теперь выделим диапазон D11:D19 (столбец Товар) и в Строке формул введем формулу массива:
Вместо ENTER нажмите сочетание клавиш CTRL+SHIFT+ENTER.
Те же манипуляции произведем с диапазоном E11:E19 куда и введем аналогичную формулу массива:
В результате получим новую таблицу, которая будет содержать только товары, у которых цены попадают в интервал, указанный в ячейках Е5 и Е6.
Чтобы показать динамизм полученного Отчета (Запроса на выборку) введем в Е6 значение 65. В новую таблицу будет добавлена еще одна запись из Исходной таблицы, удовлетворяющая новому критерию.
Если в Исходную таблицу добавить новый товар с Ценой в диапазоне от 25 до 65, то в новую таблицу будет добавлена новая запись.
В файле примера также содержатся формулы массива с обработкой ошибок, когда в столбце Цена содержится значение ошибки, например #ДЕЛ/0! (см. лист Обработка ошибок).
Следующие задачи решаются аналогичным образом, поэтому не будем их рассматривать так детально.
3. Один критерий Дата (Выбрать те Товары, у которых Дата поставки совпадает заданной)
Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист Один критерий — Дата).
Для отбора строк используются формулы массива, аналогичные Задаче1 (вместо критерия =$B$12:$B$20)*(СТРОКА($B$12:$B$20)-СТРОКА($B$11));
$J$12-СТРОКА(A12)+СТРОКА($B$11)+1))
Примечание: После ввода формулы вместо клавиши ENTER (ВВОД) нужно нажать сочетание клавиш CTRL+SHIFT+ENTER. Это сочетание клавиш используется для ввода формул массива.
Скопируйте формулу массива вниз на нужное количество ячеек. Формула вернет только те значения Товаров, которые были поставлены в диапазоне указанных дат. В остальных ячейках будут содержаться ошибки #ЧИСЛО! Ошибки в файле примера (Лист 4.Диапазон Дат) скрыты с помощью Условного форматирования.
Аналогичную формулу нужно ввести и для дат в столбец E.
В ячейке J12 вычислено количество строк исходной таблицы, удовлетворяющих критериям:
Для ввода первой формулы выделите диапазон ячеек G12:G20. После ввода формулы вместо клавиши ENTER (ВВОД) нужно нажать сочетание клавиш CTRL+SHIFT+ENTER.
Решение3: Если столбец Дат СОРТИРОВАН, то можно не использовать формулы массива.
Сначала необходимо вычислить первую и последнюю позиции строк, которые удовлетворяют критериям. Затем вывести строки с помощью функции СМЕЩ().
Этот пример еще раз наглядно демонстрирует насколько предварительная сортировка данных облегчает написание формул.
5. Один критерий Дата (Выбрать те Товары, у которых Дата поставки не раньше/ не позже заданной)
Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист Один критерий — Дата (не позже) ).
Для отбора строк, дата которых не раньше (включая саму дату), используется формула массива:
= ИНДЕКС(A12:A20;НАИМЕНЬШИЙ(ЕСЛИ($E$7 C15;И($B$7>=B15;$B$7 =$B$13:$B$21)*($B$13:$B$21>0);СТРОКА($B$13:$B$21);»»);СТРОКА($B$13:$B$21)-СТРОКА($B$12))
-СТРОКА($B$12))
Условие $E$7=$A$13:$A$21 гарантирует, что будут отобраны товары только определенного типа. Условие $E$8>=$B$13:$B$21 гарантирует, что будут отобраны даты не позже заданной (включая). Условие $B$13:$B$21>0 необходимо, если в диапазоне дат имеются пустые ячейки. Знак * (умножение) используется для задания Условия И (все 3 критерия должны выполняться для строки одновременно).
7. Один Текстовый критерий (Выбрать Товары определенного вида)
Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист Один критерий — Текст).
Задача решается аналогично Задачам 1 и 3. Более подробное решение см. в статье Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть1. Обычный поиск.
8. Два Текстовых критерия (Выбрать Товары определенного вида, поставленные в заданный месяц)
Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист 2 критерия — текст (И) ).
Для отбора строк используется формула массива:
Выражение ($F$6=$A$11:$A$19)*($F$7=$B$11:$B$19) задает оба условия (Товар и Месяц).
Выражение СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК($A$11:$A$19))) формирует массив последовательных чисел <1:2:3:4:5:6:7:8:9>, т.е. номера строк в таблице.
9. Два Текстовых критерия (Выбрать Товары определенных видов)
Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист 2 критерия — текст (ИЛИ)).
В отличие от Задачи 7 отберем строки с товарами 2-х видов (Условие ИЛИ).
Для отбора строк используется формула массива:
= ИНДЕКС(A$11:A$19;
НАИБОЛЬШИЙ((($E$6=$A$11:$A$19)+($E$7=$A$11:$A$19))*(СТРОКА($A$11:$A$19)-СТРОКА($A$10)); СЧЁТЕСЛИ($A$11:$A$19;$E$6)+СЧЁТЕСЛИ($A$11:$A$19;$E$7)-ЧСТРОК($A$11:A11)+1))
Условие ($E$6=$A$11:$A$19)+($E$7=$A$11:$A$19) гарантирует, что будут отобраны товары только заданных видов из желтых ячеек (Товар2 и Товар3). Знак + (сложение) используется для задания Условие ИЛИ (должен быть выполнен хотя бы 1 критерий).
Вышеуказанное выражение вернет массив <0:0:0:0:1:1:1:0:0>. Умножив его на выражение СТРОКА($A$11:$A$19)-СТРОКА($A$10) , т.е. на массив последовательных чисел <1:2:3:4:5:6:7:8:9>, получим массив позиций (номеров строк таблицы), удовлетворяющих критериям. В нашем случае это будет массив <0:0:0:0:5:6:7:0:0>.
С помощью функции НАИБОЛЬШИЙ() выведем 3 значения из позиции 5 (строка 15 листа), 6 (16) и 7 (17), т.е. значения Товар2, Товар2 и Товар3. Для этого используем выражение СЧЁТЕСЛИ($A$11:$A$19;$E$6)+СЧЁТЕСЛИ($A$11:$A$19;$E$7)-ЧСТРОК($A$11:A11)+1 , которое последовательно (начиная со строки 11) будет возвращать числа 3; 2; 1; 0; -1; -2; . Формула НАИБОЛЬШИЙ(. ;3) вернет число 5, НАИБОЛЬШИЙ(. ;2) вернет число 6, НАИБОЛЬШИЙ(. ;1) вернет число 7, а НАИБОЛЬШИЙ(. ;0) и далее вернет ошибку, которую мы скроем условным форматированием.
И наконец, с помощью функции ИНДЕКС() последовательно выведем наши значения из соответствующих позиций: = ИНДЕКС(A$11:A$19;5) вернет Товар2, = ИНДЕКС(A$11:A$19;6) вернет Товар2, = ИНДЕКС(A$11:A$19;7) вернет Товар3.
10. Отбор значений с учетом повторов
В разделе Отбор на основании повторяемости собраны статьи о запросах с группировкой данных. Из повторяющихся данных сначала отбираются уникальные значения, а соответствующие им значения в других столбцах — группируются (складываются, усредняются и пр.).
Наиболее популярные статьи из этого раздела:
В качестве примера приведем решения следующей задачи: Выбрать Товары, цена которых лежит в определенном диапазоне и повторяется заданное количество раз или более.
В качестве исходной возьмем таблицу партий товаров.
Предположим, что нас интересует сколько и каких партий товаров поставлялось по цене от 1000р. до 2000р. (критерий 1). Причем, партий с одинаковой ценой должно быть минимум 3 (критерий 2).
Решением является формула массива:
Эта формула возвращает номера строк, которые удовлетворяют обоим критериям.
Формула =СУММПРОИЗВ(($C$14:$C$27>=$B$7)*($C$14:$C$27 =$B$10)) подсчитывает количество строк, которые удовлетворяют критериям.
В файле примера на листе «10.Критерий — колич-во повторов» настроено Условное форматирование, которое позволяет визуально определить строки удовлетворяющие критериям, а также скрыть ячейки, в которых формула массива возвращает ошибку #ЧИСЛО!
11. Используем значение критерия (Любой) или (Все)
В фильтре Сводных таблиц MS EXCEL используется значение (Все), чтобы вывести все значения столбца. Другими словами, в выпадающем списке значений критерия содержится особое значение, которое отменяет сам критерий (см. статью Отчеты в MS EXCEL, Отчет №3).
В файле примера на листе «11. Критерий Любой или (Все)» реализован данный вариант критерия.
Формула в этом случае должна содержать функцию ЕСЛИ() . Если выбрано значение (Все), то используется формула для вывода значений без учета данного критерия. Если выбрано любое другое значение, то критерий работает обычным образом.
Остальная часть формулы аналогична рассмотренным выше.
Выделить строки в Excel по условию
Условное форматирование в Excel позволяет делать формат ячеек меняющимся в зависимости от их содержания. Например, Вы можете заставить ячейку изменять цвет, если в ней содержится значение меньше 100, или, если в этой ячейке находится определённый текст. Но как сделать так, чтобы выделенной стала не только одна ячейка, а вся строка, которая ее содержит?
Как же быть, если необходимо выделить другие ячейки в зависимости от значения какой-то одной? На скриншоте, расположенном чуть выше, видно таблицу с кодовыми наименованиями различных версий Ubuntu. Один из них — выдуманный. Когда я ввёл No в столбце Really?, вся строка изменила цвет фона и шрифта. Читайте дальше, и Вы узнаете, как это делается.
Создаём таблицу
Первым делом, создаём простую таблицу и наполняем её данными. Позже мы эти данные отформатируем. Данные могут быть любого типа: текст, числа или формулы. На этом этапе таблица вовсе не имеет никакого форматирования:
Придаём таблице более приятный вид
Следующий этап — делаем формат таблицы более лёгким для восприятия информации, используя простые инструменты форматирования Excel. Настройте формат только тех областей таблицы, которые не будут затронуты условным форматированием. В нашем случае мы нарисуем рамку таблицы и отформатируем строку, содержащую заголовки. Думаю, с этой частью Вы справитесь самостоятельно. В итоге у Вас должно получиться что-то подобное (или, возможно, немного посимпатичнее):
Создаём правила условного форматирования в Excel
Выберите начальную ячейку в первой из тех строк, которые Вы планируете форматировать. Кликните Conditional Formatting (Условное Форматирование) на вкладке Home (Главная) и выберите Manage Rules (Управление Правилами).
В открывшемся диалоговом окне Conditional Formatting Rules Manager (Диспетчер правил условного форматирования) нажмите New Rule (Создать правило).
В диалоговом окне New Formatting Rule (Создание правила форматирования) выберите последний вариант из списка — Use a formula to determine which cells to format (Использовать формулу для определения форматируемых ячеек). А сейчас — главный секрет! Ваша формула должна выдавать значение TRUE (ИСТИНА), чтобы правило сработало, и должна быть достаточно гибкой, чтобы Вы могли использовать эту же формулу для дальнейшей работы с Вашей таблицей.
Давайте проанализируем формулу, которую я сделал в своём примере:
G — это столбец, который управляет работой правила (столбец Really? в таблице). Заметили знак доллара перед G? Если не поставить этот символ и скопировать правило в следующую ячейку, то в правиле адрес ячейки сдвинется. Таким образом, правило будет искать значение Yes, в какой-то другой ячейке, например, H15 вместо G15. В нашем же случае надо зафиксировать в формуле ссылку на столбец ($G), при этом позволив изменяться строке (15), поскольку мы собираемся применить это правило для нескольких строк.
=»Yes» — это значение ячейки, которое мы ищем. В нашем случае условие проще не придумаешь, ячейка должна говорить Yes. Условия можно создавать любые, какие подскажет Вам Ваша фантазия!
Говоря человеческим языком, выражение, записанное в нашей формуле, принимает значение TRUE (ИСТИНА), если ячейка, расположенная на пересечении заданной строки и столбца G, содержит слово Yes.
Теперь давайте займёмся форматированием. Нажмите кнопку Format (Формат). В открывшемся окне Format Cells (Формат ячеек) полистайте вкладки и настройте все параметры так, как Вы желаете. Мы в своём примере просто изменим цвет фона ячеек.
Когда Вы настроили желаемый вид ячейки, нажмите ОК. То, как будет выглядеть отформатированная ячейка, можно увидеть в окошке Preview (Образец) диалогового окна New Formatting Rule (Создание правила форматирования).
Нажмите ОК снова, чтобы вернуться в диалоговое окно Conditional Formatting Rules Manager (Диспетчер правил условного форматирования), и нажмите Apply (Применить). Если выбранная ячейка изменила свой формат, значит Ваша формула верна. Если форматирование не изменилось, вернитесь на несколько шагов назад и проверьте настройки формулы.
Теперь, когда у нас есть работающая формула в одной ячейке, давайте применим её ко всей таблице. Как Вы заметили, форматирование изменилось только в той ячейке, с которой мы начали работу. Нажмите на иконку справа от поля Applies to (Применяется к), чтобы свернуть диалоговое окно, и, нажав левую кнопку мыши, протяните выделение на всю Вашу таблицу.
Когда сделаете это, нажмите иконку справа от поля с адресом, чтобы вернуться к диалоговому окну. Область, которую Вы выделили, должна остаться обозначенной пунктиром, а в поле Applies to (Применяется к) теперь содержится адрес не одной ячейки, а целого диапазона. Нажмите Apply (Применить).
Теперь формат каждой строки Вашей таблицы должен измениться в соответствии с созданным правилом.
Вот и всё! Теперь осталось таким же образом создать правило форматирования для строк, в которых содержится ячейка со значением No (ведь версии Ubuntu с кодовым именем Chipper Chameleon на самом деле никогда не существовало). Если же в Вашей таблице данные сложнее, чем в этом примере, то вероятно придётся создать большее количество правил. Пользуясь этим методом, Вы легко будете создавать сложные наглядные таблицы, информация в которых буквально бросается в глаза.
Урок подготовлен для Вас командой сайта office-guru.ru Источник: http://www.howtogeek.com/howto/45670/how-to-highlight-a-row-in-excel-using-conditional-formatting/ Перевел: Андрей Антонов Правила перепечатки Еще больше уроков по Microsoft Excel
Выборка значений из таблицы Excel по условию
Если приходиться работать с большими таблицами определенно найдете в них дублирующийся суммы разбросаны вдоль целого столбца. В тоже время у вас может возникнуть необходимость выбрать данные из таблицы с первым наименьшим числовым значением, которое имеет свои дубликаты. Нужна автоматическая выборка данных по условию. В Excel для этой цели можно успешно использовать формулу в массиве.
Как сделать выборку в Excel по условию
Чтобы определить соответствующие значение первому наименьшему числу нужна выборка из таблицы по условию. Допустим мы хотим узнать первый самый дешевый товар на рынке из данного прайса:
Автоматическую выборку реализует нам формула, которая будет обладать следующей структурой:
В месте «диапазон_данных_для_выборки» следует указать область значений A6:A18 для выборки из таблицы (например, текстовых), из которых функция ИНДЕКС выберет одно результирующие значение. Аргумент «диапазон» означает область ячеек с числовыми значениями, из которых следует выбрать первое наименьшее число. В аргументе «заголовок_столбца» для второй функции СТРОКА, следует указать ссылку на ячейку с заголовком столбца, который содержит диапазон числовых значений.
Естественно эту формулу следует выполнять в массиве. Поэтому для подтверждения ее ввода следует нажимать не просто клавишу Enter, а целую комбинацию клавиш CTRL+SHIFT+Enter. Если все сделано правильно в строке формул появятся фигурные скобки.
Обратите внимание ниже на рисунок, где в ячейку B3 была введена данная формула в массиве:
Выборка соответственного значения с первым наименьшим числом:
С такой формулой нам удалось выбрать минимальное значение относительно чисел. Далее разберем принцип действия формулы и пошагово проанализируем весь порядок всех вычислений.
Как работает выборка по условию
Ключевую роль здесь играет функция ИНДЕКС. Ее номинальное задание – это выбирать из исходной таблицы (указывается в первом аргументе – A6:A18) значения соответственные определенным числам. ИНДЕКС работает с учетом критериев определённых во втором (номер строки внутри таблицы) и третьем (номер столбца в таблице) аргументах. Так как наша исходная таблица A6:A18 имеет только 1 столбец, то третий аргумент в функции ИНДЕКС мы не указываем.
Чтобы вычислить номер строки таблицы напротив наименьшего числа в смежном диапазоне B6:B18 и использовать его в качестве значения для второго аргумента, применяется несколько вычислительных функций.
Функция ЕСЛИ позволяет выбрать значение из списка по условию. В ее первом аргументе указано где проверяется каждая ячейка в диапазоне B6:B18 на наличие наименьшего числового значения: ЕСЛИB6:B18=МИНB6:B18. Таким способом в памяти программы создается массив из логических значений ИСТИНА и ЛОЖЬ. В нашем случаи 3 элемента массива будут содержат значение ИСТИНА, так как минимальное значение 8 содержит еще 2 дубликата в столбце B6:B18.
Следующий шаг – это определение в каких именно строках диапазона находится каждое минимальное значение. Это нам необходимо по причине определения именно первого наименьшего значения. Реализовывается данная задача с помощью функции СТРОКА, она заполняет элементы массива в памяти программы номерами строк листа. Но сначала от всех этих номеров вычитается номер на против первой строки таблицы – B5, то есть число 5. Это делается потому, что функция ИНДЕКС работает с номерами внутри таблицы, а не с номерами рабочего листа Excel. В тоже время функция СТРОКА умеет возвращать только номера строк листа. Чтобы не получилось смещение необходимо сопоставить порядок номеров строк листа и таблицы с помощи вычитанием разницы. Например, если таблица находится на 5-ой строке листа значит каждая строка таблицы будет на 5 меньше чем соответственная строка листа.
После того как будут отобраны все минимальные значения и сопоставлены все номера строк таблицы функция МИН выберет наименьший номер строки. Эта же строка будет содержать первое наименьшее число, которое встречается в столбце B6:B18. На основании этого номера строки функции ИНДЕКС выберет соответствующее значение из таблицы A6:A18. В итоге формула возвращает это значение в ячейку B3 в качестве результата вычисления.
Как выбрать значение с наибольшим числом в Excel
Поняв принцип действия формулы, теперь можно легко ее модифицировать и настраивать под другие условия. Например, формулу можно изменить так, чтобы выбрать первое максимальное значение в Excel:
Если необходимо изменить условия формулы так, чтобы можно было в Excel выбрать первое максимальное, но меньше чем 70:
=70;»»;B6:B18));СТРОКА(B6:B18)-СТРОКА(B5);»»)))’ class=’formula’>
Как в Excel выбрать первое минимальное значение кроме нуля:
Как легко заметить, эти формулы отличаются между собой только функциями МИН и МАКС и их аргументами.
Теперь Вас ни что не ограничивает. Один раз разобравшись с принципами действия формул в массиве Вы сможете легко модифицировать их под множество условий и быстро решать много вычислительных задач.
Conditional Formatting generally checks the value in one cell and applies formatting over the other cells. A great application of conditional formatting is highlighting the entire row or multiple rows based on a cell value and condition provided in the formula.
It is very helpful because for a data set with tons of value in it becomes cumbersome to analyze just by reading the data. So, if we highlight a few rows based on some conditions, it becomes easier for the user to infer from the data set. For example, in a college, some students have been blacklisted due to some illegal activities. So, in the Excel record the administrator can highlight the rows where these students records are present.
In this article we are going to see how to highlight row(s) based on cell value(s) using a suitable real time example shown below :
Example : Consider a company’s employees data is present. The following table consists of data about the project(s) which has been assigned to employees, their ages and ID. An employee can work on multiple projects. The blank cell in project denotes that no project has been assigned to that employee.
Highlighting the Rows
1. On the basis of text match :
Aim : Highlight all the rows where Employee name is “Srishti”.
Steps :
1. Select the entire dataset from A3 to D14 in our case.
2. In the Home Tab select Conditional Formatting. A drop-down menu opens.
3. Select New Rule from the drop-down. The dialog box opens.
4. In the New Formatting Rule dialog box select “Use a Formula to determine which cells to format” in the Select a Rule Type option.
5. In the formula box, write the formula :
=$B2="Srishti" $ is used to lock the column B, so that only the cell B is looked starting from Row 2
The formula will initially check if the name “Srishti” is present or not in the cell B2. Now, since cell B is locked and next time checking will be done from cell B3 and so on until the condition gets matched.
6. In the Preview field, select Format and then go to Fill and then select an appropriate color for highlighting and click OK
7. Now click OK and the rows will be highlighted.
Highlighted Rows
2. Non-text matching based on number :
Aim : Highlight all the rows having age less than 25.
Approach :
Repeat the above steps as discussed and in the formula write :
=$C3<25
Highlighted Rows
3. On the basis of OR/AND condition :
OR, AND are used when we have multiple conditions. These are logical operators which work on True value.
AND : If all conditions are TRUE, AND returns TRUE.
OR : At least one of the conditions needs to be TRUE to return TRUE value.
Aim : Highlight all the rows of employees who are either working on Project 1 or Project 4.
The project details are in column D. So, the formula will be :
=OR($D3="P-1",$D3="P-4")
Aim : Suppose employee Rishabh has completed the project P-3. The administrator is asked to highlight the row and keep a record of projects which are finished.
The name is in column B and the project details is in column D. The formula will be :
=AND($B3="Rishabh",$D3="P-3")
Highlighted Row
4. On the basis of any blank row :
Aim : Check if there is/are any blank row(s). If exist(s), then highlight it.
The project details is in column D. We will use the COUNTIF( ) function to check for the number of blank records. The formula will be :
=COUNTIF($A3:$D3,"")>0 "" : Denotes blank
The above formula checks all the columns one by one and sees if there is at least one blank row. If the formula value is greater than zero then highlighting will be done else COUNTIF will return FALSE value and no highlighting will be done.
5. On the basis of multiple conditions and each condition having different color :
Aim : Suppose the company wants to distinguish the employees based on their ages. The employees whose age is more than 25 are senior employees and whose age is more than 20 but less than or equal to 25 are junior developers or trainees. So, the administrator is asked to highlight these two categories with different colors.
Implementation :
In the Formula Field write the formula :
=$C3>25
This will highlight all the rows where age is more than 25.
Again in the Formula Field write the formula :
=$C3>20
This will highlight all the rows greater than 20. It will in fact change the color of the rows where age is greater than 25. Since, if a number is greater than 20 then definitely it is greater than 25. So, all the cells having age more than 20 will be highlighted to the same color.
This creates a problem as our goal is to make two separate groups. In order to resolve this we need to change the priority of highlighting the rows. The steps are :
- Undo the previous steps using CTRL+Z.
- Select the entire dataset.
- Go to Conditional Formatting followed by Manage Rules.
- In the Manage Rule dialog box :
The order of the condition needs to be changed. The condition at the top will have more priority than the lower one. So, we need to move the second condition to the top of the first one using the up icon after selecting the condition.
- Now click on Apply and then OK.
It can be observed that the rows are now divided into two categories : The yellow color is for the senior level employees and the green color is for junior employees and trainees in the company on the basis of their ages.
Этот учебник рассказывает о главных преимуществах функций ИНДЕКС и ПОИСКПОЗ в 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 для этой цели можно успешно использовать формулу в массиве.
Как сделать выборку в Excel по условию
Чтобы определить соответствующие значение первому наименьшему числу нужна выборка из таблицы по условию. Допустим мы хотим узнать первый самый дешевый товар на рынке из данного прайса:
Автоматическую выборку реализует нам формула, которая будет обладать следующей структурой:
=ИНДЕКС(диапазон_данных_для_выборки;МИН(ЕСЛИ(диапазон=МИН(диапазон);СТРОКА(диапазон)-СТРОКА(заголовок_столбца);””)))
В месте «диапазон_данных_для_выборки» следует указать область значений A6:A18 для выборки из таблицы (например, текстовых), из которых функция ИНДЕКС выберет одно результирующие значение. Аргумент «диапазон» означает область ячеек с числовыми значениями, из которых следует выбрать первое наименьшее число. В аргументе «заголовок_столбца» для второй функции СТРОКА, следует указать ссылку на ячейку с заголовком столбца, который содержит диапазон числовых значений.
Естественно эту формулу следует выполнять в массиве. Поэтому для подтверждения ее ввода следует нажимать не просто клавишу Enter, а целую комбинацию клавиш CTRL+SHIFT+Enter. Если все сделано правильно в строке формул появятся фигурные скобки.
Обратите внимание ниже на рисунок, где в ячейку B3 была введена данная формула в массиве:
Выборка соответственного значения с первым наименьшим числом:
С такой формулой нам удалось выбрать минимальное значение относительно чисел. Далее разберем принцип действия формулы и пошагово проанализируем весь порядок всех вычислений.
Как работает выборка по условию
Ключевую роль здесь играет функция ИНДЕКС. Ее номинальное задание – это выбирать из исходной таблицы (указывается в первом аргументе – A6:A18) значения соответственные определенным числам. ИНДЕКС работает с учетом критериев определённых во втором (номер строки внутри таблицы) и третьем (номер столбца в таблице) аргументах. Так как наша исходная таблица A6:A18 имеет только 1 столбец, то третий аргумент в функции ИНДЕКС мы не указываем.
Чтобы вычислить номер строки таблицы напротив наименьшего числа в смежном диапазоне B6:B18 и использовать его в качестве значения для второго аргумента, применяется несколько вычислительных функций.
Функция ЕСЛИ позволяет выбрать значение из списка по условию. В ее первом аргументе указано где проверяется каждая ячейка в диапазоне B6:B18 на наличие наименьшего числового значения: ЕСЛИB6:B18=МИНB6:B18. Таким способом в памяти программы создается массив из логических значений ИСТИНА и ЛОЖЬ. В нашем случаи 3 элемента массива будут содержат значение ИСТИНА, так как минимальное значение 8 содержит еще 2 дубликата в столбце B6:B18.
Следующий шаг – это определение в каких именно строках диапазона находится каждое минимальное значение. Это нам необходимо по причине определения именно первого наименьшего значения. Реализовывается данная задача с помощью функции СТРОКА, она заполняет элементы массива в памяти программы номерами строк листа. Но сначала от всех этих номеров вычитается номер на против первой строки таблицы – B5, то есть число 5. Это делается потому, что функция ИНДЕКС работает с номерами внутри таблицы, а не с номерами рабочего листа Excel. В тоже время функция СТРОКА умеет возвращать только номера строк листа. Чтобы не получилось смещение необходимо сопоставить порядок номеров строк листа и таблицы с помощи вычитанием разницы. Например, если таблица находится на 5-ой строке листа значит каждая строка таблицы будет на 5 меньше чем соответственная строка листа.
После того как будут отобраны все минимальные значения и сопоставлены все номера строк таблицы функция МИН выберет наименьший номер строки. Эта же строка будет содержать первое наименьшее число, которое встречается в столбце B6:B18. На основании этого номера строки функции ИНДЕКС выберет соответствующее значение из таблицы A6:A18. В итоге формула возвращает это значение в ячейку B3 в качестве результата вычисления.
Как выбрать значение с наибольшим числом в Excel
Поняв принцип действия формулы, теперь можно легко ее модифицировать и настраивать под другие условия. Например, формулу можно изменить так, чтобы выбрать первое максимальное значение в Excel:
Если необходимо изменить условия формулы так, чтобы можно было в Excel выбрать первое максимальное, но меньше чем 70:
Как в Excel выбрать первое минимальное значение кроме нуля:
Как легко заметить, эти формулы отличаются между собой только функциями МИН и МАКС и их аргументами.
Скачать пример выборки из таблицы в Excel.
Теперь Вас ни что не ограничивает. Один раз разобравшись с принципами действия формул в массиве Вы сможете легко модифицировать их под множество условий и быстро решать много вычислительных задач.