Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Описание
В этой статье приведены пошаговые инструкции по поиску данных в таблице (или диапазоне ячеек) с помощью различных встроенных функций Microsoft Excel. Для получения одного и того же результата можно использовать разные формулы.
Создание образца листа
В этой статье используется образец листа для иллюстрации встроенных функций Excel. Рассматривайте пример ссылки на имя из столбца A и возвращает возраст этого человека из столбца C. Чтобы создать этот лист, введите указанные ниже данные в пустой лист Excel.
Введите значение, которое вы хотите найти, в ячейку E2. Вы можете ввести формулу в любую пустую ячейку на том же листе.
A |
B |
C |
D |
E |
||
1 |
Имя |
Правитель |
Возраст |
Поиск значения |
||
2 |
Анри |
501 |
Плот |
Иванов |
||
3 |
Стэн |
201 |
19 |
|||
4 |
Иванов |
101 |
максималь |
|||
5 |
Ларри |
301 |
составляет |
Определения терминов
В этой статье для описания встроенных функций Excel используются указанные ниже условия.
Термин |
Определение |
Пример |
Массив таблиц |
Вся таблица подстановки |
A2: C5 |
Превышающ |
Значение, которое будет найдено в первом столбце аргумента «инфо_таблица». |
E2 |
Просматриваемый_массив |
Диапазон ячеек, которые содержат возможные значения подстановки. |
A2: A5 |
Номер_столбца |
Номер столбца в аргументе инфо_таблица, для которого должно быть возвращено совпадающее значение. |
3 (третий столбец в инфо_таблица) |
Ресулт_аррай |
Диапазон, содержащий только одну строку или один столбец. Он должен быть такого же размера, что и просматриваемый_массив или Лукуп_вектор. |
C2: C5 |
Интервальный_просмотр |
Логическое значение (истина или ложь). Если указано значение истина или опущено, возвращается приближенное соответствие. Если задано значение FALSE, оно будет искать точное совпадение. |
ЛОЖЬ |
Топ_целл |
Это ссылка, на основе которой вы хотите основать смещение. Топ_целл должен ссылаться на ячейку или диапазон смежных ячеек. В противном случае функция СМЕЩ возвращает #VALUE! значение ошибки #ИМЯ?. |
|
Оффсет_кол |
Число столбцов, находящегося слева или справа от которых должна указываться верхняя левая ячейка результата. Например, значение «5» в качестве аргумента Оффсет_кол указывает на то, что верхняя левая ячейка ссылки состоит из пяти столбцов справа от ссылки. Оффсет_кол может быть положительным (то есть справа от начальной ссылки) или отрицательным (то есть слева от начальной ссылки). |
Функции
LOOKUP ()
Функция Просмотр находит значение в одной строке или столбце и сопоставляет его со значением в той же позицией в другой строке или столбце.
Ниже приведен пример синтаксиса формулы подСТАНОВКи.
= Просмотр (искомое_значение; Лукуп_вектор; Ресулт_вектор)
Следующая формула находит возраст Марии на листе «образец».
= ПРОСМОТР (E2; A2: A5; C2: C5)
Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в векторе подстановки (столбец A). Формула затем соответствует значению в той же строке в векторе результатов (столбец C). Так как «Мария» находится в строке 4, функция Просмотр возвращает значение из строки 4 в столбце C (22).
Примечание. Для функции Просмотр необходимо, чтобы таблица была отсортирована.
Чтобы получить дополнительные сведения о функции Просмотр , щелкните следующий номер статьи базы знаний Майкрософт:
Использование функции Просмотр в Excel
ВПР ()
Функция ВПР или вертикальный просмотр используется, если данные указаны в столбцах. Эта функция выполняет поиск значения в левом столбце и сопоставляет его с данными в указанном столбце в той же строке. Функцию ВПР можно использовать для поиска данных в отсортированных или несортированных таблицах. В следующем примере используется таблица с несортированными данными.
Ниже приведен пример синтаксиса формулы ВПР :
= ВПР (искомое_значение; инфо_таблица; номер_столбца; интервальный_просмотр)
Следующая формула находит возраст Марии на листе «образец».
= ВПР (E2; A2: C5; 3; ЛОЖЬ)
Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в левом столбце (столбец A). Формула затем совпадет со значением в той же строке в Колумн_индекс. В этом примере используется «3» в качестве Колумн_индекс (столбец C). Так как «Мария» находится в строке 4, функция ВПР возвращает значение из строки 4 В столбце C (22).
Чтобы получить дополнительные сведения о функции ВПР , щелкните следующий номер статьи базы знаний Майкрософт:
Как найти точное совпадение с помощью функций ВПР или ГПР
INDEX () и MATCH ()
Вы можете использовать функции индекс и ПОИСКПОЗ вместе, чтобы получить те же результаты, что и при использовании поиска или функции ВПР.
Ниже приведен пример синтаксиса, объединяющего индекс и Match для получения одинаковых результатов поиска и ВПР в предыдущих примерах:
= Индекс (инфо_таблица; MATCH (искомое_значение; просматриваемый_массив; 0); номер_столбца)
Следующая формула находит возраст Марии на листе «образец».
= ИНДЕКС (A2: C5; MATCH (E2; A2: A5; 0); 3)
Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в столбце A. Затем он будет соответствовать значению в той же строке в столбце C. Так как «Мария» находится в строке 4, формула возвращает значение из строки 4 в столбце C (22).
Обратите внимание Если ни одна из ячеек в аргументе «число» не соответствует искомому значению («Мария»), эта формула будет возвращать #N/А.
Чтобы получить дополнительные сведения о функции индекс , щелкните следующий номер статьи базы знаний Майкрософт:
Поиск данных в таблице с помощью функции индекс
СМЕЩ () и MATCH ()
Функции СМЕЩ и ПОИСКПОЗ можно использовать вместе, чтобы получить те же результаты, что и функции в предыдущем примере.
Ниже приведен пример синтаксиса, объединяющего смещение и сопоставление для достижения того же результата, что и функция Просмотр и ВПР.
= СМЕЩЕНИЕ (топ_целл, MATCH (искомое_значение; просматриваемый_массив; 0); Оффсет_кол)
Эта формула находит возраст Марии на листе «образец».
= СМЕЩЕНИЕ (A1; MATCH (E2; A2: A5; 0); 2)
Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в столбце A. Формула затем соответствует значению в той же строке, но двум столбцам справа (столбец C). Так как «Мария» находится в столбце A, формула возвращает значение в строке 4 в столбце C (22).
Чтобы получить дополнительные сведения о функции СМЕЩ , щелкните следующий номер статьи базы знаний Майкрософт:
Использование функции СМЕЩ
Нужна дополнительная помощь?
Нужны дополнительные параметры?
Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.
В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.
Проверка ячейки на наличие в ней текста (без учета регистра)
Смотрите также из искомых ячеек. iRng Is Nothing к Вам снова.Отзовитесь пожалуйста! Очень f As Boolean, значения в этом два варианта:: The_Prist, я так 5 столбов. В аргумент генерирует функция полученное предыдущей формулой. 4 на протяжении выделить» можно в. столбца» (функция «ИНДЕКС».Примечание: Вторая искомая находится Then With Workbooks(«Инв.карт.xls»).Worksheets(«TDSheet») Задачка такая: нужная вещь, кто
fO As Long столбце и как1) вытащить эту понял найти ячейку каждой ячейке могут СТРОКА, которая создает Оно теперь выступает двух кварталов. статье «Фильтр вСовет. в Excel).КнопкаМы стараемся как
на 8 вправа Set iRng_Kart =Есть большое количество знает, напишите примерные Set Word =
Поиск ячеек, содержащих текст
только макрос находит строку со второго с текстом, и
-
быть один из в памяти массив в качестве критерия
В первом аргументе функции Excel».Если вы работаете
-
Найти и перенести вПараметры можно оперативнее обеспечивать и на 5 .Columns(2).Find(«Сведения о приемке», файлов, содержащих данные действия чтобы осуществить CreateObject(«Word.Application») Set WordDoc первую заполненную ячейку,
-
листа — тогда «отобразить ее в след.типов данных: текст, номеров строк из для поиска месяца. ВПР (Вертикальный ПРосмотр)Имеем таблицу, в которой с таблицей продолжительное другое место в
служит для задания вас актуальными справочными вниз от неё.
-
, xlValues, xlPart) в виде таблиц, сие действо или = Word.Documents.Open(Filename:=Application.ThisWorkbook.path & начинает искать в ваша последняя формула R77″ (т.е. по число, дата, просто
-
10 элементов. Так И в результате указывается ссылка на записаны объемы продаж время и вам Excel более подробных условий материалами на вашем
Поиск по содержанию? .Cells(iRng_Kart.Row + 3, перед каждой из киньте где посмотреть. «Пример.docx») Set r той же папке отлично подходит. адресу) пусто. Одна (И как в табличной
-
функция ПОИСКПОЗ нам ячейку где находится определенных товаров в часто надо переходить(например, в бланк)
поиска. Например, можно найти языке. Эта страница Поиск по содержанию, 2).UnMerge Cells(iRng.Row + которых в первом На форуме не = WordDoc.Range Do где находится excel,2) вытаскивать эту
Юрий М ТОЛЬКО ОДНА - части у нас
Проверка ячейки на наличие в ней любого текста
возвращает номер столбца критерий поиска. Во разных месяцах. Необходимо к поиску от
Проверка соответствия содержимого ячейки определенному тексту
несколько данных сразу все ячейки, содержащие переведена автоматически, поэтому а значит вопрос 3, 1).Copy .Cells(iRng_Kart.Row столбце А стоит
Проверка соответствия части ячейки определенному тексту
нашел( With r.Find .ClearFormatting .docx файл с строку сразу с: Я так понял, иначе быть не находится 10 строк. 2 где находится
втором аргументе указывается в таблице найти одного слова к – смотрите в
support.office.com
Поиск в Excel.
данных определенного типа, ее текст может по теме. Нужно + 3, 2) цифра (номер пункта)Alex77755 .Text = «дисциплина таким же названием, третьего листа (скопированных что в R77 может) ячейка содержитДалее функция ГПР поочередно
максимальное значение объема диапазон ячеек для данные, а критерием другому. Тогда удобнее статье «Найти в такого как формулы. содержать неточности и выделить диапазон из .Cells(iRng_Kart.Row + 3,
и её название.: На такой вопрос *относится» .Forward = что и текст данны) — и результат :-) текст в котором используя каждый номер продаж для товара просмотра в процессе
поиска будут заголовки окно поиска не Excel несколько данныхДля поиска на текущем грамматические ошибки. Для этих двух ячеек. 2).Resize(, 5).Merge End Верхняя часть всех
вряд ли кто True .Wrap = в ячейке. Если в этом случаеЮрий М встречается «ИНН» и
строки создает массив 4. После чего поиска. В третьем строк и столбцов. закрывать каждый раз, сразу» здесь (функция листе или во нас важно, чтобы
vikttur With End If файлов одинаковая и сможет ответить: слишком wdFindContinue .Format =
находит такой файл, ваша последняя формула: Если результат будет «КПП». А вот соответственных значений продаж в работу включается аргументе функции ВПР Но поиск должен а сдвинуть его «ВПР» в Excel). всей книге можно
эта статья была: Получать адрес можно End Sub работа с ней расплывчатое задание. False .MatchCase = то создает в может дать сбой, не в R77 её расположение в из таблицы по функция ИНДЕКС, которая
должен указываться номер быть выполнен отдельно в ту частьИли выбрать в поле вам полезна. Просим для чего угодно,Amsh не представляет никакихСамый быстрый поиск
False .MatchWholeWord = данном excel файле так как нужная — незачёт! таблице — может определенному месяцу (Июню).
возвращает значение по
столбца, из которого по диапазону строки таблицы, где ононайти ячейку с ссылкойИскать вас уделить пару но задача в: Спасибо большое. А трудностей, а вот Find. False .MatchAllWordForms = новый лист с ячейка может оказатьсяHimtree меняться. Далее функции МАКС номеру сроки и следует взять значение
или столбца. То не будет мешать. в формуле Excel,вариант секунд и сообщить, теме должна освещаться Вы, может быть, с нижней естьОстальные параметры надо False .MatchSoundsLike = тем же названием, не во втором: Не хотел я
Пример содержимого: «Администрация осталось только выбрать столбца из определенного на против строки
есть будет использоваться Сдвинуть можно нижечтобы заменить ссылку,Лист
помогла ли она одна. сможете подсказать: если проблемы. В пункте уточнять… False .MatchWildcards = если не находит, (B) столюце, а пугать вас своим
МО города Москвы максимальное значение из в ее аргументах с именем Товар только один из экрана, оставив только смотрите статью «Поменятьили вам, с помощью
Вы сейчас просите в ячейке А1 три файла СтараяМожно так же True If .Execute то ищет дальше в третьем (С).
файлом, ну раз ИНН 0123456789 КПП этого массива. диапазона. Так как 4. Но так критериев. Поэтому здесь ячейку ввода искомого ссылки на другиеКнига
кнопок внизу страницы. помощи по выделению записано $A$2, а 030162.xlsx таблица бывает использовать функцию листа
excel-office.ru
Поиск значения в столбце и строке таблицы Excel
Then If f до последней заполненнойHimtree просите, вот. В 123456789″Далее немного изменив первую у нас есть как нам заранее нельзя применить функцию слова («найти») и листы в формулах. Для удобства также диапазона. в ячейке B1 абсолютно разных размеров ВПР Then If r.Start
Поиск значений в таблице Excel
ячейки.: эх, поспешил… нём три листа.ЗАДАЧА: проверить всю формулу с помощью
номер столбца 2, не известен этот ИНДЕКС, а нужна
нажимать потом Enter. Excel».Нажмите кнопку приводим ссылку наВывод: или вопрос записано 1111. Как по высоте (2переменная =Application.WorksheetFunction.VLookup = fO ThenПодскажите пожалуйста, какДело в том1) Карточка результата таблицу 5*5 на функций ИНДЕКС и а номер строки номер мы с специальная формула.Это диалоговое окноНайти в Excel ячейки
Поиск значения в строке Excel
Найти все оригинал (на английском не по теме, должна выглядеть строка ячейки, 3, 7,
privet2000 Exit Do End
- это сделать. что я работаю (здесь должны отображаться предмет ячейки содержащей ПОИСКПОЗ, мы создали
- в диапазоне где помощью функции СТОЛБЕЦ
- Для решения данной задачи поиска всегда остается с примечаниемили языке) . или тема названа макроса, которая запишет 12, сколь угодно):
- If Else fONarimanych
- в бесплатном OO все необходимые данные,
текст «ИНН» и вторую для вывода хранятся названия месяцев создаем массив номеров проиллюстрируем пример на
Принцип действия формулы поиска значения в строке Excel:
на экране, даже-Найти далееПредположим, что вы хотите коряво. в ячейку А2 и из-за этого=СУММПРОИЗВ(НЕ(ЕОШИБКА(ПОИСК(ТРАНСП(ВЫГРУЗКА!G11);ВЫГРУЗКА!B7:B497)))*(ВЫГРУЗКА!D7:D497)) = r.Start f: ver.3.2.1 а вот в пригодном для «КПП» и в названия строк таблицы в любые случаи столбцов для диапазона схематической таблице, которая если вы переходитестатья «Вставить примечание. убедиться, что столбец…и дальше целый значение ячейки B1?
адреса ячеек вЗамечательная формула от = True EndAlexFlash27 в нём данная восприятия виде) случае её обнаружения по зачиню ячейки. будет 1. Тогда B4:G15. соответствует выше описанным на другую страницу. в Excel» тутНайти все содержит текст, не перечень, техзадание. АKuzmich необходимой мне четвертой
пользователя pabchek, ищет If WordDoc.Range(r.Start +, Привет. формула (при том2) Обработка (промежуточный отобразить текст из Название соответствующих строк нам осталось функциейЭто позволяет функции ВПР условиям. С помощью этого .списки каждого экземпляра номера. Или perhapsyou в этом разделе: Range(«A2»)=Range(«B1») таблице меняются в все значения в 11, r.End -Столбец «B» для
Как получить заголовки столбцов по зачиню одной ячейки?
что отлично работает лист, для упорядочивания этой ячейки в (товаров) выводим в ИНДЕКС получить соответственное собрать целый массивЛист с таблицей для окна можно производитьДля быстрого поиска элемента, который необходимо необходимо найти все помощь по конкретнымAmsh зависимости от файла. столбце и в 9).Copy Range(«C4»).Select ActiveSheet.Paste нижеприведенного должен быть в MS 2007) данных) ячейке (к примеру) F2. значение из диапазона значений. В результате поиска значений по поиск на любой существует сочетание клавиш найти, и позволяет заказы, которые соответствуют вопросам.: Не совсем то.Что нужно от найденных строках берет Set r = заполнен с1-ой строки.. вываливается в ошибку:3) Данные (сюда R77.ВНИМАНИЕ! При использовании скелета B4:G4 – Февраль в памяти хранится вертикали и горизонтали: странице, надо только – сделать активной ячейки, определенным Продавец. Если
Нашли ячейку по
Поиск значения в столбце Excel
Нам не известен макроса: в открытом значения из другого WordDoc.Range(r.End, r.End) ElsePureBasic Sub FOR_ALEX() #DIV/0! каждый раз будутхто-то формулы для других (второй месяц). все соответствующие значения
Над самой таблицей расположена его активизировать наCtrl + F выбрав нужное вхождение. у вас нет
содержанию — вот, адрес ячейки, в файле Старая 030162.xlsx столбца для сложения.
- Exit Do End m = 0MCH вставляться новые данные,: где файл?
- задач всегда обращайте
- каждому столбцу по строка с результатами. открытой странице. Для. Нажимаем клавишу Ctrl Можно сортировать результаты проблемой верхний или получили ответ по которую нужно скопировать
- запускать поиск поНужно чтобы поиск
- If End With PTH = ThisWorkbook.Path
Принцип действия формулы поиска значения в столбце Excel:
: попробуйте так: скопированные с сайта)KuklP внимание на второйВторым вариантом задачи будет строке Товар 4 В ячейку B1 этого нажать курсор и, удерживая её,Найти нижний регистр текста, теме. Другое (выделение, значение из B1, первому столбцу листа был только того LoopКак совместить это
FN = Dir(PTH=ИНДЕКС(B1:B6;ПОИСКПОЗ(«*ИНН*КПП*»;B1:B6;0))На первом листе,: Опять студенты лодыри… и третий аргумент поиск по таблице (а именно: 360; водим критерий для на строке «найти». нажимаем клавишу F.
все, щелкнув заголовок. существует несколько способов поиск диапазона, копирование но он записан для нахождения ячейки содержимого, которое в код и код & «*.docx», vbNormal)MCH в красной ячейке
MCH поисковой функции ГПР. с использованием названия 958; 201; 605; поискового запроса, тоДля более расширенного Появится окно поиска.Примечание: проверки, если ячейка и проч.) - в ячейке А1 с фразой «Сведения ячейке, и не который вы написали,
ReDim SHName(ThisWorkbook.Sheets.Count) For: или; должна появится надпись:
: формула массива, вводится Количество охваченных строк месяца в качестве 462; 832). После
есть заголовок столбца поиска нажмите кнопкуЕщё окно поиска Чтобы прекратить процесс поиска, содержит текст. не в тему в виде $A$2 о приемке» (например, больше чем то, чтобы после того i = 1=ВПР(«*ИНН*КПП*»;B1:B6;1;0)»ИНН 2311038642 КПП нажатием ctrl+shift+enter: в диапазоне указанного критерия. В такие
exceltable.com
Поиск ячейки содержащей текст, часть которого отвечает условию поиска.
чего функции МАКС или название строки. «Параметры» и выберите можно вызвать так нажмите клавишу ESC.Для поиска текста можноAmshKuzmich
это получилась ячейка что нужно: в как макрос находит
To ThisWorkbook.Sheets.Count SHName(iЮрий М 231101001 Администрация Прикубанского=ИНДЕКС(A1:E5;МАКС(ЕЧИСЛО(ПОИСК(«ИНН»;A1:E5))*ЕЧИСЛО(ПОИСК(«КПП»;A1:E5))*СТРОКА(A1:E5));МАКС(ЕЧИСЛО(ПОИСК(«ИНН»;A1:E5))*ЕЧИСЛО(ПОИСК(«КПП»;A1:E5))*СТОЛБЕЦ(A1:E5))) в аргументе, должно случаи мы должны остается только взять А в ячейке нужный параметр поиска. — на закладкеДля выполнения этой задачи также использовать фильтр.: Это всё понятно.: Sub ww() Dim А36), копировать данные G11 содержимое «МЕЛ», в папке word
— 1) =: Дело в том внутригородского округа городаSerge
совпадать с количеством изменить скелет нашей из этого массива D1 формула поискаНапример, выберем — «Значение». «Главная» нажать кнопку используется функция Дополнительные сведения см. Там не техзадание, Rng As String
из ячейки на и если в
файл с таким Sheets(i).Name Next ReDim
что я работаю Краснодара: МСН: >
строк в таблице.
формулы: функцию ВПР максимальное число и
должна возвращать результат
Тогда будет искать «Найти и выделить».ЕТЕКСТ
в статье Фильтрация а чтобы задавалось
Rng = Range(«A1») три строки ниже
столбце B7:B497 есть же именем как
S(m) Do If в бесплатном OO
javascript:»Ну наконец-то! А также нумерация заменить ГПР, а возвратить в качестве вычисления соответствующего значения.
и числа, и
На вкладке «Найти» в
. данных.
меньше вопросов, поэтому Range(Rng) = Range(«B1»)
(А39), открывать свёрнутый «МЕЛ: Не определено»,
и значения ячейки FN = «»
ver.3.2.1 {/post}{/quote}Тогда ВамЕё можно подцепитьХоть один гуру должна начинаться со функция СТОЛБЕЦ заменяется значения для ячейки
После чего в
номер телефона, т.д.
ячейке «найти» пишемДля возвращения результатов для
Выполните следующие действия, чтобы всё подробно. Каков End Sub файл Инвентарная карточка то это более из столбца B, Then Exit Do
прямая дорога на как с третьего сознался что он второй строки!
на СТРОКА. D1, как результат ячейке F1 сработаетЕсли нужно найти
искомое слово (можно условия, которое можно найти ячейки, содержащие смысл плодить дополнительныеAmsh ОС 030162.xlsx, запускать
длинное значение не он открывал его, S(m) = Mid(FN, форум по этому так и со
гуру! :-)))Скачать пример поиска значенияЭто позволит нам узнать
вычисления формулы. вторая формула, которая все одинаковес слова, часть слова) и
указать с помощью определенный текст. темы, если вопрос
: Спасибо, работает так, такой же поиск учитывать. копировал нужное слово,
1, Len(FN) -
продукту. второго листа, ноMCH в столбце и какой объем и
Как видно конструкция формулы уже будет использовать
но в падежах нажимаем «найти далее».
функцииВыделите диапазон ячеек, среди вытекает из этой, как нужно! для нахождения фразыМожет можно ограничить вставлял скопированное из 5) m =
Himtree как ?: UDF: строке Excel какого товара была проста и лаконична. значения ячеек B1
(молоко, молоком, молоку,
Будет найдено первоеЕсли которых требуется осуществить которую к томуAmsh «Сведения о приемке» поиск дополнительно по
word слово на
m + 1: спасибо но опять
ТОЛЬКО ФОРМУЛОЙ, никакихFunction inn(rng AsЧитайте также: Поиск значения максимальная продажа в
На ее основе и D1 в т.д.), то напишем такое слово. Затем.
поиск. же я и: Ещё вопрос возник по второму столбцу кол-ву символов. второй (уже созданный) ReDim Preserve S(m) в MS 2007 макросов. Range) As String в диапазоне таблицы определенный месяц.
можно в похожий качестве критериев для
формулу с подстановочными нажимаете «найти далее»Для выполнения этой задачиЧтобы выполнить поиск по создавал. по схожей проблеме. (Ячейка B32) иВопрос сложно озвучить, лист в excel? FN = Dir()
работает легко, аHimtree
Dim r As
Excel по столбцамЧтобы найти какой товар
способ находить для
поиска соответствующего месяца. знаками. Смотрите об и поиск перейдет используются функции всему листу, щелкнитеvikttur Имеются две ячейки вставлять ранее скопированные
прошу прощения за А если не Loop For i в OO нефунциклирует!: файл вот Range
и строкам обладал максимальным объемом определенного товара иТеперь узнаем, в каком этом статью «Подстановочные на второе такоеЕсли
любую ячейку.: Какой мысл? Ознакомьтесь с адресами например,
данные в ячейку корявый язык но находит в папке = LBound(S) To Эх =(HimtreeFor Each rПо сути содержимое диапазона продаж в определенном другие показатели. Например, максимальном объеме и
знаки в Excel». слово.
planetaexcel.ru
Поиск файла по содержимому ячейки
,На вкладке
с правилами форума BP62 и BR62. на три ниже на скрине и файл с таким UBound(S) — 1KuklP: Наверное криво я In rng нас вообще не месяце следует: минимальное или среднее в каком месяцеФункция в Excel «НайтиА если надо показатьПоискГлавнаяЭто Вам удобно, в первой записано найденной (B35). в файле все же именем, то For j =
: Himtree, Вам же изъяснился. Прикрепил файл,
If InStr(r.Text, «ÈÍÍ») интересует, нам нуженВ ячейку B2 введите значение объема продаж
была максимальная продажа и выделить» сразу все такие
ив группе а не форуму. $BA$64, а воТакое же нужно сразу видно уведомляет что такого LBound(SHName) To UBound(SHName) Юрий М подсказал с конкретным примером. > 0 And просто счетчик строк. название месяца Июнь используя для этого Товара 4.поможет не только слова, то нажимаемЕЧИСЛОРедактирование Как такие же, второй $BI$69. Эти будет сделать дляabtextime файла нет. If S(i) = выход от 06.11.2011, В красной ячейке InStr(r.Text, «ÊÏÏ») > То есть изменить – это значение функции МИН илиЧтобы выполнить поиск по найти данные, но кнопку «найти все».
нажмите кнопку как Вы, будут адреса определяются в
ячейки B39, D39,: Приложите Excel-файлauts SHName(j) Then S(i) 10:10. Или просто должно отобразиться название 0 Then inn
аргументы на: СТРОКА(B2:B11) будет использовано в СРЗНАЧ. Вам ни столбцам следует: и заменить их. и внизу поисковогоПримечание:Найти и выделить находить ответ на каждом файле свои. A68 и F68,Светлый: после обработки базы = «» Next нравится людям голову организации с ИНН = r.Text: Exit или СТРОКА(С2:С11) – качестве поискового критерия. что не препятствует,В ячейку B1 введите Смотрите статью «Как окошка появится список Функцияи нажмите кнопку свой вопрос о Но записываются всегда но думаю, я: данных, у меня Next For i морочить? и КПП. Function это никак неВ ячейку D2 введите чтобы приведенный этот значение Товара 4 скопировать формулу в с указанием адресапоискаНайти копировании диапазона? Листать в ячейки BP62 разберусь. Получить бы=СУММПРОИЗВ((ВЫГРУЗКА!G11=ВЫГРУЗКА!B7:B497)*(ВЫГРУЗКА!D7:D497)) создается несколько массивов = i =HimtreeHimtreeNext r повлияет на качество формулу: скелет формулы применить – название строки, Excel без изменения ячейки. Чтобы перейтине учитывается регистр.
CyberForum.ru
Excel: поиск по ячейкам (по содержимому)
. все темы в и BR62. Какой пример. Очень надеюсьprivet2000 с данными (одномерные LBound(S) To UBound(S): Простите, все кому: Блин, а работаетEnd Function формулы. Главное, чтоДля подтверждения после ввода с использованием более которое выступит в ссылок» здесь. на нужное словоЧасто возникает вопросВ поле надежде, что в командой можно выделить на вашу помощь.: Извиняюсь, видимо файл с переменными сингл) — 1 If
заморочил голову. =) сейчас будуMCH в этих диапазонах формулы нажмите комбинацию сложных функций для качестве критерия.Как убрать лишние
в таблице, нажимаем«Найти какой-то из тем диапазон BA64:BI69 в
Спасибо. слетел во время
которые я затем S(i) <> «»
Большая часть функций разбирать по этапам: Криво получилось:
по 10 строк,
CyberForum.ru
Поиск точного соответствия содержимого ячейки (Формулы/Formulas)
клавиш CTRL+SHIFT+Enter, так реализации максимально комфортногоВ ячейку D1 введите
пробелы, которые мешают нужное слово вКак найти в Excelвведите текст —Amsh таком случае, чтобыФайл, из которого
пред последнего редактирования переписываю в эксель Then Worksheets.Add.Name = (по крайне мере и вкуривать какFunction inn(rng As как и в как формула будет анализа отчета по следующую формулу: обрабатывать данные в списке окна поиска.»?
или номера —,’а найдется нужное? выполнять потом над
дергать данные прикрепляю.privet2000 файл в два S(i) Next End все простые) из именно она работает
Range) As String таблице. И нумерация
выполнена в массиве. продажам.Для подтверждения после ввода
таблице, читайте вЕсли поиск ничего неВ Excel можно вам нужно найти.
Amsh ним действия поKuzmich: Забыл указать. Упрощенный столбца, первый - Sub MS 2007 идентичны и стабильность вычисления.Dim r As начинается со второй А в строке
excelworld.ru
Поиск ячейки по содержанию для получения её адреса
Например, как эффектно мы формулы нажмите комбинацию статье «Как удалить нашел, а вы найти любую информацию: Или выберите из: Хорошо, я создам
объединению ячеек, центрированию: Обе книги д.б. вариант работает, но название, например г24(неAlexFlash27 и поддерживаются иСпасибо! Range строки! формул появятся фигурные отобразили месяц, в горячих клавиш CTRL+SHIFT+Enter, лишние пробелы в знаете, что эти текст, часть текста, раскрывающегося списка нужную дополнительную тему. содержимого с переносом? открыты. В макрос забыл сказать, есть имя ячейки, а: Спасибо работает, а в OO. НадеялсяMCHFor Each rHimtree
скобки. котором была максимальная так как формула Excel» тут. данные точно есть, цифру, номер телефона,Найтиvikttur Формат ячеек Общий. вставьте свое название еще возможность оставить строковое значение), как еще вопрос: что мою задачку: А зачем Вам In rng: Добрый вечер! БитыеВ ячейку F1 введите продажа, с помощью должна быть выполненаВ Excel можно то попробуйте убрать эл. адреспоследнего поиска.
: Вы сами-то, передvikttur книги с инвентаризационной в формуле указывать мне сделать такУ меня есть можно решить на 5 столбцов наIf InStr(r.Text, «ИНН»)
сутки не могу вторую формулу:
второй формулы. Не в массиве. Если найти любую информацию из ячеек таблицы,Примечание:
созданием темы, пользовались: Вопрос не по карточкой. диапазон? Например G11:G12 чтобы после ввода код, который ищет элементарных функциях MS, 5 строк, когда > 0 And решить казалось быСнова Для подтверждения нажмите сложно заметить что все сделано правильно, не только функцией отступ. Как убратьфамилию, формулу, примечание, формат В условиях поиска можно поиском? Ведь ответы темеМакрос в модуль Так как кроме в инпутбокс этого
слово в word которые легко ретранслировать нужно просматривать ячейки InStr(r.Text, «КПП») > не сложную, задачку, CTRL+SHIFT+Enter. во второй формуле в строке формул «Поиск» или формулами, отступ в ячейках, ячейки, т.д. использовать подстановочные знаки.
на многие вопросыAmsh
листа1 книги Старая…. МЕЛ хорошо бы имени, у меня файле по его в OO. B1:B6, и формула 0 Then inn но всё мыслиВ первом аргументе функции
мы использовали скелет появятся фигурные скобки. но и функцией смотрите в статьеНайти ячейку на пересеченииЧтобы задать формат для
можно найти… У: По теме. Начну Sub Perenos() Dim
еще что то производился поиск по «окружению», и копируетПо видимому ошибался! значительно проще получается: = r.Text: Exit заходят в тупик. ГПР (Горизонтальный ПРосмотр) первой формулы безВ ячейку F1 введите условного форматирования. Читайте «Текст Excel. Формат». строки и столбца поиска, нажмите кнопку Вас примеры вообще с предыстории: в iRng As Range добавлять для сложения. файлу и переменной его в определенную =(=ПРОСМОТР(2;1/ЕЧИСЛО(ПОИСК(«КПП»;B1:B6))/ЕЧИСЛО(ПОИСК(«ИНН»;B1:B6));B1:B6)
Function Прошу помощи гуру. указываем ссылку на
функции МАКС. Главная вторую формулу: об этом статьюПоиск числа в Excel ExcelФормат без макросов… Т.е. открытом файле запускается Dim iRng_Kart AsAmsh присваивалось значение из ячейку файла excel:AlexFlash27массивный ввод неNext rОСОБЕННОСТИ: Задачу необходимо ячейку с критерием структура формулы: ВПР(B1;A5:G14;СТОЛБЕЦ(B5:G14);0).Снова Для подтверждения нажмите
«Условное форматирование втребует небольшой настройки– смотрите статьюи внесите нужные ни намека на поиск по слову
Range Set iRng: Добрый день! Очень ячейки идущей после
Sub primer() Dim: Привет! требуетсяEnd Function
решить только с для поиска. Во Мы заменили функцию комбинацию клавиш CTRL+SHIFT+Enter. Excel» здесь.
условий поиска - «Как найти в изменения во всплывающем то, что что-то «Примечание», от него = Columns(1).Find(«Сведения о здорово выручаете своими
той в которой Word As ObjectИмеется файл excelHimtreeBond использованием формул. втором аргументе указана МАКС на ПОИСКПОЗ,Найдено в каком месяцеЕщё прочитать о применим Excel ячейку на
окне самостоятельно… А хотите на 4 строки
приемке», , xlValues, советами и очень внутри написано г24 Dim WordDoc As с заполненным столбцом: Да, спасибо, как: Что за факультет?ИСХОДНЫЕ ДАННЫЕ: есть ссылка на просматриваемый которая в первом и какая была функции «Найти и
расширенный поиск в Excel пересечении строки иНайти формат
сразу, в комплексе. вниз находится первая xlPart) If Not оперативно, поэтому обращаюсь или а-40? Object Dim r, B, нужно перебрать вариант! Просто рассматривалnerv таблица 5 строк, диапазон таблицы. Третий аргументе использует значение,
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. Я надеюсь, что наши примеры формул окажутся полезными для вас.
Вот еще несколько статей по этой теме:
Привет. Наверное чаще всего в Эксель или Гугл Таблицах я использую набор формул, призванный по заданному мною тексту находить соответствие в ячейке и отмечать их либо копировать в соседний столбец. Очень удобно использовать для сортировки столбцов данных, когда нужно сделать её быстро без загрузки в Power Query или какой-то дополнительной обработки.
Расскажу подробнее про это и в конце отдам шаблон.
Формула для поиска значения ячейки Эксель
На скрине выше, видно, что в столбец с фильтром попадают только ячейки, содержащие упоминание цены. А в столбец без фильтра, все прочие — это сделано для того, чтобы в дальнейшем удобно было забирать найденные значения и использовать в работе.
Если открыть строку формул, то мы увидим следующее →
Не пугайтесь, всё намного проще, чем кажется. Сейчас всё расскажу.
Центральная формула состоит из следующих значений и будет выглядеть так:
=if(isnumber(find(«цены»,А3)),А3,»»)
- Функция find ищет заданный нами текст «цена» в выбранной ячейке А3. Далее если находит, то она возвращает номер символа с которого начинается совпадение. Если не находит, то далее весь цикл формул не работает и на выходе получаем пустое значение в скобочках «» от функции if;
- Функция isnumber принимает на вход только числа, соответственно если find нашла искомое значение и отдала цифру, то функция срабатывает и продолжает цикл if, если нет, то опять получаем пустое значение в скобочках «» от функции if;
- Функция if если предыдущая функция isnumber срабатывает, возвращает нам значение ячейки A3, если нет, то пустое значение «».
Таким образом, там где есть упоминание «цена» мы получаем обратно эти ячейки. Для обычного поиска единственного совпадения этой формулы достаточно за глаза, но в нашем примере нужно найти все коммерческие запросы. Именно для этого мы используем перебор разных значений, как на этом скрине.
Это делается с помощью копирования строки. Но, очень важно, при копировании новой строки мы добавляем новую закрывающую скобочку в конец формулы.
Шаблон поиска совпадений по значению в ячейке
Чтобы вам не искать и не копировать формулу, я сделал шаблон для этой формулы. Он лежит в Гугл Таблице с двумя вариантами работы, совсем просто, где нужно ввести искомое значение в ячейку, вставить список слов и всё сработает само.
И второй, о котором писал для перебора нескольких совпадений.
Шаблон лежит тут, пользуйтесь на здоровье.
Программа Excel ориентирована на ускоренные расчеты. Зачастую документы здесь состоят из большого ко…
Программа Excel ориентирована на ускоренные расчеты. Зачастую документы здесь состоят из большого количества листов, на которых представлены длинные таблицы с числами, формулами или текстом. Для удобного нахождения нужных ячеек существует специальный автоматизированный поиск. Ознакомившись с особенностями его использования, можно сократить время работы в документах. О том, как искать в Экселе слова, фразы или ячейки, подробно написано ниже.
Поиск слов
Документы часто имеют много страниц, тогда встает вопрос о том, как в Еxcel найти слово. Сделать это иногда становится проблематично. Для упрощения этой задачи существует специальная функция поиска. Чтобы ею воспользоваться, необходимо выполнить следующий алгоритм действий:
- запустить программу Excel;
- проверить активность таблицы, щелкнув по любой из ячеек;
- нажать комбинацию клавиш «Ctrl + F»;
- в строке «Найти» появившегося окна ввести искомое слово;
- нажать «Найти».
В результате программа активирует поисковую функцию, а найденные слова в таблице или книге будут подсвечены.
Существует также способ нестрогого поиска, который подходит для ситуаций, когда искомое слово помнится частично. Он предусматривает использование символов-заменителей (джокерные символы). В Excel их всего два:
- «?» – подразумевает любой отдельно взятый символ;
- «*» – обозначает любое количество символов.
Примечательно, при поиске вопросительного знака или знака умножения дополнительно впереди ставится тильда («~»). При поиске тильды, соответственно – две тильды.
Алгоритм неточного поиска слова:
- запустить программу;
- активировать страницу щелчком мыши;
- зажать комбинацию клавиш «Ctrl + F»;
- в строке «Найти» появившегося окна ввести искомое слово, используя вместо букв, вызывающих сомнения, джокерные символы;
- проверить параметр «Ячейка целиком» (он не должен быть отмеченным);
- нажать «Найти все».
Все слова, подходящие под параметры поиска, подсветятся, поэтому их легко будет увидеть и проанализировать.
Поиск нескольких слов
Не зная, как найти слово в таблице в Еxcel, следует также воспользоваться функцией раздела «Редактирование» – «Найти и выделить». Далее нужно отталкиваться от искомой фразы:
- если фраза точная, введите ее и нажмите клавишу «Найти все»;
- если фраза разбита другими ключами, нужно при написании ее в строке поиска дополнительно проставить между всеми словами «*».
В первом случае поиск выдаст все результаты с точной поисковой фразой, игнорируя другие склонения или разбавленные ее варианты. Во втором случае отыщутся все значения с введенными надписями, даже если между ними присутствуют другие символы.
Поиск ячеек
Ячейки могут содержать в себе формулы или значения, быть объеденными или скрытыми. Эти характеристики изменяют ход поиска интересующих нас ячеек.
Для поиска ячеек с формулами выполняются следующие действия.
- В открытом документе выделить ячейку или диапазон ячеек (в первом случае поиск идет по всему листу, во втором – в выделенных ячейках).
- Во вкладке «Главная» выбрать функцию «Найти и выделить».
- Обозначить команду «Перейти».
- Выделить клавишу «Выделить».
- Выбрать «Формулы».
- Обратить внимание на список пунктов под «Формулами» (возможно, понадобится снятие флажков с некоторых параметров).
- Нажать клавишу «Ок».
Для поиска объединенных ячеек потребуется выполнение следующих манипуляций.
- Перейти во вкладку «Главная».
- Выбрать функцию «Найти и выделить».
- Нажать на команду «Найти».
- Перейти в «Параметры» и выбрать «Формат».
- Здесь выделить функцию «Выравнивание», поставить отметку «Объединить ячейки».
- Нажать на «Ок».
- Нажать на кнопку «Найти все» и проанализировать список ячеек, которые объединены на соответствующем листе.
При нажимании кнопкой мыши на элемент в списке происходит выделение объединенной ячейки на листе. Дополнительно доступна функция «Отменить объединение ячеек».
Выполнение представленных выше действий приводит к нахождению всех объединенных ячеек на листе и при необходимости отмене данного свойства. Для поиска скрытых ячеек проводятся следующие действия.
- Выбрать лист, требующий анализа на присутствие скрытых ячеек и их нахождения.
- Нажать клавиши «F5_гт_
Special». - Нажать сочетание клавиш «CTRL + G_гт_ Special».
Можно воспользоваться еще одним способом для поиска скрытых ячеек:
- Открыть функцию «Редактирование» во вкладке «Главная».
- Нажать на «Найти».
- Выбрать команду «Перейти к разделу». Выделить «Специальные».
- Попав в группу «Выбор», поставить галочку на «Только видимые ячейки».
- Нажать кнопку «Ок».
В результате проделанных действий видимые ячейку выделятся, при этом границы столбцов и строк, которые граничат со скрытыми ячейками или столбцами, предстанут с белыми границами.
Если интересующая ячейка обозначена условным форматом, ее несложно найти и применить для копирования, удаления или редактирования непосредственно условного формата. Если речь идет о ячейке с определенным условным форматом, тогда на помощь придет функция «Выделить группу ячеек».
Чтобы найти ячейки, для которых применено условное форматирование:
- нажать на ячейку, не предусматривающую условное форматирование;
- выбрать функцию «Редактирование» во вкладке «Главная»;
- нажать на кнопку «Найти и выделить»;
- выделить категорию «Условное форматирование».
Чтобы найти ячейки, для которых применено одинаковое условное форматирование:
- выбрать ячейку, предусматривающую условное форматирование, требующую поиска;
- выбрать группу «Редактирование» во вкладке «Главная»;
- нажать на кнопку «Найти и выделить»;
- выбрать категорию «Выделить группу ячеек»;
- установить свойство «Условные форматы»;
- напоследок нужно зайти в группу «Проверка данных» и установить аналогичный пункт.
Поиск через фильтр
Чтобы узнать, как в Еxcel найти слово при использовании фильтра, потребуется изучить следующий алгоритм действий:
- выделить заполненную ячейку;
- во вкладке «Главная» выбрать функцию «Сортировка»;
- нажать на кнопку «Фильтр»;
- открыть выпадающее меню;
- ввести искомый запрос;
- нажать кнопку «Ок».
В результате в столбце выделятся только ячейки с искомым значением. Для сбрасывания результатов поиска в выпадающем списке необходимо нажать на «Выделить все». Для отключения фильтра потребуется еще раз нажать на его значок в функции «Сортировка». Примечательно, данный способ не даст результатов, если неизвестен ряд с искомым значением.