Excel как найти соответствующее значение

Поиск значений в списке данных

Excel для Microsoft 365 Excel для Интернета Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше

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

Что необходимо сделать

  • Точное совпадение значений по вертикали в списке

  • Подыыывка значений по вертикали в списке с помощью приблизительного совпадения

  • Подстановка значений по вертикали в списке неизвестного размера с использованием точного совпадения

  • Точное совпадение значений по горизонтали в списке

  • Подыыывка значений по горизонтали в списке с использованием приблизительного совпадения

  • Создание формулы подступа с помощью мастера подметок (только в Excel 2007)

Точное совпадение значений по вертикали в списке

Для этого можно использовать функцию ВLOOKUP или сочетание функций ИНДЕКС и НАЙТИПОЗ.

Примеры ВРОТ

Пример 1 функции ВПР

Пример 2 функции ВПР

Дополнительные сведения см. в этой информации.

Примеры индексов и совпадений

Функции ИНДЕКС и ПОИСКПОЗ можно использовать вместо функции ВПР

Что означает:

=ИНДЕКС(нужно вернуть значение из C2:C10, которое будет соответствовать ПОИСКПОЗ(первое значение «Капуста» в массиве B2:B10))

Формула ищет в C2:C10 первое значение, соответствующее значению «Ольга» B7), и возвращает значение в C7(100),которое является первым значением, которое соответствует значению «Ольга».

Дополнительные сведения см. в функциях ИНДЕКС иФУНКЦИЯ MATCH.

К началу страницы

Подыыывка значений по вертикали в списке с помощью приблизительного совпадения

Для этого используйте функцию ВЛВП.

Важно:  Убедитесь, что значения в первой строке отсортировали в порядке возрастания.

Пример формулы ВЛП, которая ищет приблизительное совпадение

В примере выше ВРОТ ищет имя учащегося, у которого 6 просмотров в диапазоне A2:B7. В таблице нет записи для 6 просмотров, поэтому ВРОТ ищет следующее самое высокое совпадение меньше 6 и находит значение 5, связанное с именем Виктор,и таким образом возвращает Его.

Дополнительные сведения см. в этой информации.

К началу страницы

Подстановка значений по вертикали в списке неизвестного размера с использованием точного совпадения

Для этого используйте функции СМЕЩЕНИЕ и НАЙТИВМЕСЯК.

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

Пример функций OFFSET и MATCH

C1 — это левые верхние ячейки диапазона (также называемые начальной).

MATCH(«Оранжевая»;C2:C7;0) ищет «Оранжевые» в диапазоне C2:C7. В диапазон не следует включать запускаемую ячейку.

1 — количество столбцов справа от начальной ячейки, из которых должно быть возвращено значение. В нашем примере возвращается значение из столбца D, Sales.

К началу страницы

Точное совпадение значений по горизонтали в списке

Для этого используйте функцию ГГПУ. См. пример ниже.

Пример формулы ГВП, которая ищет точное совпадение

Г ПРОСМОТР ищет столбец «Продажи» и возвращает значение из строки 5 в указанном диапазоне.

Дополнительные сведения см. в сведениях о функции Г ПРОСМОТР.

К началу страницы

Подыыывка значений по горизонтали в списке с использованием приблизительного совпадения

Для этого используйте функцию ГГПУ.

Важно:  Убедитесь, что значения в первой строке отсортировали в порядке возрастания.

Пример формулы ГВП, которая ищет приблизительное совпадение

В примере выше ГЛЕБ ищет значение 11000 в строке 3 указанного диапазона. Она не находит 11000, поэтому ищет следующее наибольшее значение меньше 1100 и возвращает значение 10543.

Дополнительные сведения см. в сведениях о функции Г ПРОСМОТР.

К началу страницы

Создание формулы подступа с помощью мастера подметок (толькоExcel 2007 )

Примечание: В Excel 2010 больше не будет надстройки #x0. Эта функция была заменена мастером функций и доступными функциями подменю и справки (справка).

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

  1. Щелкните ячейку в диапазоне.

  2. На вкладке Формулы в группе Решения нажмите кнопку Под поиск.

  3. Если команда Подытов недоступна, вам необходимо загрузить мастер под надстройка подытогов.

    Загрузка надстройки «Мастер подстройок»

  4. Нажмите кнопку Microsoft Office Изображение кнопки Office , выберите Параметры Excel и щелкните категорию Надстройки.

  5. В поле Управление выберите элемент Надстройки Excel и нажмите кнопку Перейти.

  6. В диалоговом окне Доступные надстройки щелкните рядом с полем Мастер подстрок инажмите кнопку ОК.

  7. Следуйте инструкциям мастера.

К началу страницы

Нужна дополнительная помощь?

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

Описание

В этой статье приведены пошаговые инструкции по поиску данных в таблице (или диапазоне ячеек) с помощью различных встроенных функций 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).

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

Использование функции СМЕЩ

Нужна дополнительная помощь?

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 основные причины использовать ИНДЕКС ПОИСКПОЗ вместо ВПР

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

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

  1. Нет ограничений на размер искомого значения. При использовании функции ВПР общая длина ваших критериев поиска не может превышать 255 символов, иначе вы получите ошибку #ЗНАЧ!. Таким образом, если ваш набор данных содержит длинные строки, ИНДЕКС ПОИСКПОЗ — единственное работающее решение.
  2. Более высокая скорость обработки. Если ваши таблицы относительно небольшие, вряд ли будет какая-то существенная разница в производительности 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. Я надеюсь, что наши примеры формул окажутся полезными для вас.

Вот еще несколько статей по этой теме:

Поиск нужных данных в диапазоне

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

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

index1.gif

Необходимо определить регион поставки по артикулу товара, набранному в ячейку C16.

Задача решается при помощи двух функций:

=ИНДЕКС(A1:G13;ПОИСКПОЗ(C16;D1:D13;0);2)

Функция ПОИСКПОЗ ищет в столбце D1:D13 значение артикула из ячейки C16. Последний аргумент функции 0 — означает поиск точного (а не приблизительного) соответствия. Функция выдает порядковый номер найденного значения в диапазоне, т.е. фактически номер строки, где найден требуемыый артикул.

Функция ИНДЕКС выбирает из диапазона A1:G13 значение, находящееся на пересечении заданной строки (номер строки с артикулом выдает функция ПОИСКПОЗ) и столбца (нам нужен регион, т.е. второй столбец). 

Ссылки по теме

  • Использование функции ВПР (VLOOKUP) для поиска и подстановки значений.
  • Улучшенная версия функции ВПР (VLOOKUP)
  • Многоразовый ВПР

Содержание

  • Поисковая функция в Excel
    • Способ 1: простой поиск
    • Способ 2: поиск по указанному интервалу ячеек
    • Способ 3: Расширенный поиск
  • Вопросы и ответы

Поиск в Microsoft Excel

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

Поисковая функция в Excel

Поисковая функция в программе Microsoft Excel предлагает возможность найти нужные текстовые или числовые значения через окно «Найти и заменить». Кроме того, в приложении имеется возможность расширенного поиска данных.

Способ 1: простой поиск

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

  1. Находясь во вкладке «Главная», кликаем по кнопке «Найти и выделить», которая расположена на ленте в блоке инструментов «Редактирование». В появившемся меню выбираем пункт «Найти…». Вместо этих действий можно просто набрать на клавиатуре сочетание клавиш Ctrl+F.
  2. Переход к поиску в Microsoft Excel

  3. После того, как вы перешли по соответствующим пунктам на ленте, или нажали комбинацию «горячих клавиш», откроется окно «Найти и заменить» во вкладке «Найти». Она нам и нужна. В поле «Найти» вводим слово, символы, или выражения, по которым собираемся производить поиск. Жмем на кнопку «Найти далее», или на кнопку «Найти всё».
  4. Обычный поиск в Microsoft Excel

  5. При нажатии на кнопку «Найти далее» мы перемещаемся к первой же ячейке, где содержатся введенные группы символов. Сама ячейка становится активной.

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

    Поисковые символы не обязательно должны быть самостоятельными элементами. Так, если в качестве запроса будет задано выражение «прав», то в выдаче будут представлены все ячейки, которые содержат данный последовательный набор символов даже внутри слова. Например, релевантным запросу в этом случае будет считаться слово «Направо». Если вы зададите в поисковике цифру «1», то в ответ попадут ячейки, которые содержат, например, число «516».

    Для того, чтобы перейти к следующему результату, опять нажмите кнопку «Найти далее».

    Результат обычного поиска в Microsoft Excel

    Так можно продолжать до тех, пор, пока отображение результатов не начнется по новому кругу.

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

Найти всё в Microsoft Excel

Способ 2: поиск по указанному интервалу ячеек

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

  1. Выделяем область ячеек, в которой хотим произвести поиск.
  2. Выделение интервала в Microsoft Excel

  3. Набираем на клавиатуре комбинацию клавиш Ctrl+F, после чего запуститься знакомое нам уже окно «Найти и заменить». Дальнейшие действия точно такие же, что и при предыдущем способе. Единственное отличие будет состоять в том, что поиск выполняется только в указанном интервале ячеек.

Поиск по интервалу в Microsoft Excel

Способ 3: Расширенный поиск

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

Lumpics.ru

К тому же, в выдачу может попасть не только содержимое конкретной ячейки, но и адрес элемента, на который она ссылается. Например, в ячейке E2 содержится формула, которая представляет собой сумму ячеек A4 и C3. Эта сумма равна 10, и именно это число отображается в ячейке E2. Но, если мы зададим в поиске цифру «4», то среди результатов выдачи будет все та же ячейка E2. Как такое могло получиться? Просто в ячейке E2 в качестве формулы содержится адрес на ячейку A4, который как раз включает в себя искомую цифру 4.

Результат поиска в Microsoft Excel

Но, как отсечь такие, и другие заведомо неприемлемые результаты выдачи поиска? Именно для этих целей существует расширенный поиск Excel.

  1. После открытия окна «Найти и заменить» любым вышеописанным способом, жмем на кнопку «Параметры».
  2. Переход в параметры поиска в Microsoft Excel

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

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

    Настройки поиска в Microsoft Excel

    По умолчанию, поиск производится только на активном листе Excel. Но, если параметр «Искать» вы переведете в позицию «В книге», то поиск будет производиться по всем листам открытого файла.

    Область поиска в Microsoft Excel

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

    Содержимое поиска в Microsoft Excel

    В графе «Область поиска» определяется, среди каких конкретно элементов производится поиск. По умолчанию, это формулы, то есть те данные, которые при клике по ячейке отображаются в строке формул. Это может быть слово, число или ссылка на ячейку. При этом, программа, выполняя поиск, видит только ссылку, а не результат. Об этом эффекте велась речь выше. Для того, чтобы производить поиск именно по результатам, по тем данным, которые отображаются в ячейке, а не в строке формул, нужно переставить переключатель из позиции «Формулы» в позицию «Значения». Кроме того, существует возможность поиска по примечаниям. В этом случае, переключатель переставляем в позицию «Примечания».

    Область поиска в программе Microsoft Excel

    Ещё более точно поиск можно задать, нажав на кнопку «Формат».

    Переход к формату поиска в Microsoft Excel

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

    Формат поиска в Microsoft Excel

    Если вы хотите использовать формат какой-то конкретной ячейки, то в нижней части окна нажмите на кнопку «Использовать формат этой ячейки…».

    Переход к выбору ячейки для установки формата в Microsoft Excel

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

    Выбор ячейки для установки формата в Microsoft Excel

    После того, как формат поиска настроен, жмем на кнопку «OK».

    Установка формата поиска в Microsoft Excel

    Бывают случаи, когда нужно произвести поиск не по конкретному словосочетанию, а найти ячейки, в которых находятся поисковые слова в любом порядке, даже, если их разделяют другие слова и символы. Тогда данные слова нужно выделить с обеих сторон знаком «*». Теперь в поисковой выдаче будут отображены все ячейки, в которых находятся данные слова в любом порядке.

  4. Поиск по отдельным словам в Microsoft Excel

  5. Как только настройки поиска установлены, следует нажать на кнопку «Найти всё» или «Найти далее», чтобы перейти к поисковой выдаче.

Запуск расширенного поиска в Microsoft Excel

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

Поиск значений с помощью функций ВПР, ИНДЕКС и ПОИСКПОЗ

​Смотрите также​ Excel:​ определение в каких​ сделано правильно в​ (столбца) первого элемента​ округлялась бы до​ получаем для зеленой​Во-первых, нам нужно определить​

​ в столбце и​ название месяца Июнь​

​ анализа отчета по​

​ появятся фигурные скобки.​

  • ​ аналогичной задачи с​ значений, поэтому перед​ найденные значения, воспользуемся​ небольшой список, в​. Формула возвращает цену​Для поиска значения в​Если необходимо изменить условия​ именно строках диапазона​

  • ​ строке формул появятся​ в таблице в​ 700, а ширина​ ячейки решение:​

    ​ номер строки, соответствующей​​ строке Excel​ – это значение​ продажам.​В ячейку F1 введите​ использованием Условного форматирования.​ вводом формулы нужно​

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

​ находится каждое минимальное​ фигурные скобки.​ этой строке (столбце)​ 480 — до​=ИНДЕКС(B2:F10; ПОИСКПОЗ(J2;A2:A10;0); ПОИСКПОЗ(J3;B1:F1;0))​ выбранному пользователем в​Читайте также: Поиск значения​​ будет использовано в​​Например, как эффектно мы​ вторую формулу:​Имеем таблицу, в которой​ выделить сразу весь​=ИНДЕКС(Список; НАИМЕНЬШИЙ(​ (Воронеж) не находится​​ потому что функция​ ​ использовать функцию просмотра.​​ можно было в​ значение. Это нам​Обратите внимание ниже на​

​ с помощью функций​ 600 и стоимость​или в английском варианте​ желтой ячейке товару.​ в диапазоне таблицы​ качестве поискового критерия.​ отобразили месяц, в​Снова Для подтверждения нажмите​ записаны объемы продаж​ диапазон, т.е. ячейки​ЕСЛИ(ЕСЛИОШИБКА(ПОИСК($C$6;Список);0)>0;СТРОКА(Список)-СТРОКА($A$9);30);​​ в крайнем левом​​ ВПР нашла ближайшее​​ Функция ВПР часто​ Excel выбрать первое​ необходимо по причине​ рисунок, где в​СТОЛБЕЦ (COLUMN)​ составила бы уже​ =INDEX(B2:F10;MATCH(J2;A2:A10;0);MATCH(J3;B1:F1;0))​ Это поможет сделать​ Excel по столбцам​

​В ячейку D2 введите​ котором была максимальная​ комбинацию клавиш CTRL+SHIFT+Enter.​ определенных товаров в​С10:С19​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))​ столбце. Поэтому мы​ число, меньшее или​ используется, но можно​ максимальное, но меньше​ определения именно первого​ ячейку B3 была​и​ 462. Для бизнеса​Слегка модифицируем предыдущий пример.​ функция​ и строкам​ формулу:​

​ продажа, с помощью​Найдено в каком месяце​ разных месяцах. Необходимо​, ввести формулу в​Алгоритм работы формулы следующий​ не можем использовать​ равное указанному (2345678).​ задействовать и функции​ чем 70:​ наименьшего значения. Реализовывается​ введена данная формула​СТРОКА (ROW)​ так гораздо интереснее!​

Типичный пример использования функции ВПР

​ Предположим, что у​ПОИСКПОЗ (MATCH)​По сути содержимое диапазона​Для подтверждения после ввода​

Использование функции ГПР

​ второй формулы. Не​ и какая была​ в таблице найти​ Строке формул и​ (для просмотра промежуточных​ функцию ВПР. Для​ Эта ошибка может​ ГПР, ИНДЕКС и​

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

​=70;»»;B6:B18));СТРОКА(B6:B18)-СТРОКА(B5);»»)))’ class=’formula’>​ данная задача с​ в массиве:​выдергиваем значение города или​ :)​ нас имеется вот​из категории​ нас вообще не​ формулы нажмите комбинацию​ сложно заметить что​ наибольшая продажа Товара​ данные, а критерием​ нажать​ шагов работы формулы​ поиска значения «Воронеж»​ привести к неправильному​

​ ПОИСКПОЗ.​Как в Excel выбрать​ помощью функции СТРОКА,​Выборка соответственного значения с​ товара из таблицы​0​ такая ситуация:​Ссылки и массивы (Lookup​ интересует, нам нужен​ клавиш CTRL+SHIFT+Enter, так​ во второй формуле​ 4 на протяжении​ поиска будут заголовки​CRTL+SHIFT+ENTER​ воспользуйтесь клавишей​ в диапазоне B1:B11​ выставлению счета клиенту.​Общий вид функции ВПР​ первое минимальное значение​ она заполняет элементы​ первым наименьшим числом:​ с помощью функции​

Использование функций ИНДЕКС и ПОИСКПОЗ для поиска значения

Еще о функциях поиска

  • ​- поиск точного​Идея в том, что​

  • ​ and Reference)​ просто счетчик строк.​

  • ​ как формула будет​ мы использовали скелет​

​ двух кварталов.​

support.office.com

Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть1. Обычный поиск

​ строк и столбцов.​.​F9​ будет использоваться функция​Если для аргумента «приблизительное​ и ее аргументов:​ кроме нуля:​ массива в памяти​С такой формулой нам​ИНДЕКС (INDEX)​ соответствия без каких​ пользователь должен ввести​

​. В частности, формула​ То есть изменить​ выполнена в массиве.​​ первой формулы без​​В первом аргументе функции​

Задача

​ Но поиск должен​Для скрытия ошибок #ССЫЛКА!,​):​ ПОИСКПОЗ. Оно найдено​

А. Найти значения, которые содержат критерий

​ соответствие» указано значение​=ВПР(;;;)​

​Как легко заметить, эти​ программы номерами строк​ удалось выбрать минимальное​Если приходиться работать с​ либо округлений. Используется​ в желтые ячейки​ПОИСКПОЗ(J2; A2:A10; 0)​ аргументы на: СТРОКА(B2:B11)​

​ А в строке​ функции МАКС. Главная​ ВПР (Вертикальный ПРосмотр)​​ быть выполнен отдельно​​ возвращаемой формулой массива,​Функция ПОИСК(), перебирая элементы​ в строке 4.​​ ЛОЖЬ или 0,​​Например, =ВПР(21500;C2:E7;3;ЛОЖЬ).​

​ формулы отличаются между​ листа. Но сначала​ значение относительно чисел.​

​ большими таблицами определенно​
​ для 100%-го совпадения​
​ высоту и ширину​

​даст нам нужный​ или СТРОКА(С2:С11) –​ формул появятся фигурные​ структура формулы: ВПР(B1;A5:G14;СТОЛБЕЦ(B5:G14);0).​​ указывается ссылка на​​ по диапазону строки​

  • ​ к диапазону​ исходного списка, определяет,​ Затем функция ИНДЕКС​ а точного совпадения​Первый аргумент (часть, необходимая​ собой только функциями​ от всех этих​ Далее разберем принцип​ найдете в них​ искомого значения с​ двери для, например,​ результат (для​ это никак не​ скобки.​ Мы заменили функцию​
  • ​ ячейку где находится​ или столбца. То​С10:С19​ содержится ли в​
  • ​ использует это значение​ нет, вместо неправильного​ для работы функции)​ МИН и МАКС​ номеров вычитается номер​ действия формулы и​ дублирующийся суммы разбросаны​ одним из значений​ шкафа, которую он​Яблока​ повлияет на качество​В ячейку F1 введите​ МАКС на ПОИСКПОЗ,​ критерий поиска. Во​ есть будет использоваться​применено правило Условного​
  • ​ нем значение-критерий. Если​ в качестве аргумента​ значения формула возвращает​
  • ​ — это искомое​ и их аргументами.​
  • ​ на против первой​ пошагово проанализируем весь​ вдоль целого столбца.​ в таблице. Естественно,​ хочеть заказать у​это будет число​

​ формулы. Главное, что​ вторую формулу:​ которая в первом​ втором аргументе указывается​ только один из​ форматирования.​ значение не содержится,​ поиска и находит​ в ячейку строку​ значение. Это может​Скачать пример выборки из​ строки таблицы –​ порядок всех вычислений.​ В тоже время​ применяется при поиске​ компании-производителя, а в​​ 6). Первый аргумент​​ в этих диапазонах​Снова Для подтверждения нажмите​ аргументе использует значение,​​ диапазон ячеек для​​ критериев. Поэтому здесь​

​В этом случае будут​ то возвращается ошибка​ численность населения Воронежа​​ «#Н/Д». Это наилучшее​​ быть ссылка на​ таблицы в Excel.​

Б. Найти значения, которые совпадают с критерием (точное совпадение)

​ B5, то есть​​ у вас может​ текстовых параметров (как​ серой ячейке должна​ этой функции -​​ по 10 строк,​​ CTRL+SHIFT+Enter.​

​ полученное предыдущей формулой.​ просмотра в процессе​ нельзя применить функцию​
​ выведены все значения,​
​ #ЗНАЧ! В противном​
​ в четвертом столбце​

B. Найти значения, которые начинаются с критерия

​ решение. В данном​ ячейку, например B2,​Теперь Вас ни что​ число 5. Это​Ключевую роль здесь играет​ возникнуть необходимость выбрать​​ в прошлом примере),​​ появиться ее стоимость​

​ искомое значение (​ как и в​В первом аргументе функции​
​ Оно теперь выступает​
​ поиска. В третьем​
​ ИНДЕКС, а нужна​

Г. Найти значения, которые заканчиваются на критерий

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

​ данные из таблицы​ т.к. для них​ из таблицы. Важный​
​Яблоко​
​ таблице. И нумерация​
​ ГПР (Горизонтальный ПРосмотр)​

​ в качестве критерия​
​ аргументе функции ВПР​ специальная формула.​ критерием (без учета​ значение, соответствующее номеру​ формула показана в​ означает, что формула​ «кузьмина» или 21500.​ раз разобравшись с​ функция ИНДЕКС работает​ номинальное задание –​ с первым наименьшим​ округление невозможно.​

excel2.ru

Поиск значения в столбце и строке таблицы Excel

​ нюанс в том,​из желтой ячейки​ начинается со второй​ указываем ссылку на​ для поиска месяца.​ должен указываться номер​Для решения данной задачи​ РЕгиСТра). Критерий вводится​ начальной позиции вхождения​ ячейке A14.​ введена неправильно (за​Второй аргумент — это​ принципами действия формул​ с номерами внутри​ это выбирать из​ числовым значением, которое​Важно отметить, что при​ что если пользователь​

Поиск значений в таблице Excel

​ J2), второй -​ строки!​ ячейку с критерием​ И в результате​ столбца, из которого​

​ проиллюстрируем пример на​ в ячейку​ критерия в значение​

Отчет объем продаж товаров.

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

Поиск значения в строке Excel

​ как вы предполагаете,​ сможете легко модифицировать​ с номерами рабочего​ в первом аргументе​ Нужна автоматическая выборка​

​ с округлением диапазон​ размеров, то они​

  1. ​ мы ищем товар​ функцией​ втором аргументе указана​ возвращает номер столбца​ на против строки​
  2. ​ соответствует выше описанным​.​
  3. ​ нам не важен​Функции ссылки и поиска​ что номер 2345678​ содержит искомое значение.​ их под множество​ листа Excel. В​ – A6:A18) значения​ данных по условию.​ поиска — а​Результат поиска по строкам.
  4. ​ должны автоматически округлиться​ (столбец с товарами​
  5. ​ВПР (VLOOKUP)​ ссылка на просматриваемый​

Найдено название столбца.

​ 2 где находится​ с именем Товар​ условиям.​Для создания списка, содержащего​ номер позиции, важно,​

Принцип действия формулы поиска значения в строке Excel:

​ (справка)​ не был найден,​Важно:​ условий и быстро​ тоже время функция​ соответственные определенным числам.​ В Excel для​ значит и вся​ до ближайших имеющихся​ в таблице -​или ее горизонтальным​ диапазон таблицы. Третий​ максимальное значение объема​ 4. Но так​Лист с таблицей для​ найденные значения, воспользуемся​ что это число);​Использование аргумента массива таблицы​ потому что вы​ В функции ВПР столбец,​ решать много вычислительных​ СТРОКА умеет возвращать​ ИНДЕКС работает с​

​ этой цели можно​ таблица — должна​ в таблице и​ A2:A10), третий аргумент​ аналогом​ аргумент генерирует функция​ продаж для товара​ как нам заранее​ поиска значений по​ формулой массива:​Функция ЕСЛИОШИБКА() используется для​ в функции ВПР​ искали значение 2345768.​ содержащий искомое значение​ задач.​ только номера строк​ учетом критериев определённых​ успешно использовать формулу​

​ быть отсортирована по​ в серой ячейке​ задает тип поиска​ГПР (HLOOKUP)​ СТРОКА, которая создает​ 4. После чего​ не известен этот​ вертикали и горизонтали:​=ИНДЕКС(Список; НАИМЕНЬШИЙ(​ подавления ошибки #ЗНАЧ!​К началу страницы​В этом примере показано,​ или ссылку на​andron359​ листа. Чтобы не​ во втором (номер​ в массиве.​ возрастанию (для Типа​ должна появиться стоимость​ (0 — точное​

Как получить заголовки столбцов по зачиню одной ячейки?

​, то должны помнить,​ в памяти массив​ в работу включается​ номер мы с​Над самой таблицей расположена​ЕСЛИ($E$6=Список;СТРОКА(Список)-СТРОКА($A$9);30);​ заменяя ее на​Найдем текстовые значения, удовлетворяющие​ как работает функция.​ ячейку, должен быть​: Добрый вечер !​ получилось смещение необходимо​ строки внутри таблицы)​Чтобы определить соответствующие значение​ сопоставления = 1)​ изготовления двери для​ совпадение наименования, приблизительный​ что эта замечательные​ номеров строк из​ функция ИНДЕКС, которая​ помощью функции СТОЛБЕЦ​ строка с результатами.​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))​ число 0;​ заданному пользователем критерию.​ Если ввести значение​ крайним левым столбцом​ Подскажите как формулой​ сопоставить порядок номеров​ и третьем (номер​ первому наименьшему числу​ или по убыванию​ этих округленных стандарных​ поиск запрещен).​ функции ищут информацию​ 10 элементов. Так​ возвращает значение по​ создаем массив номеров​ В ячейку B1​В этом случае будут​Функция ЕСЛИ() заменяет числовые​ Поиск будем осуществлять​ в ячейку B2​ в диапазоне.​ на основе 2​

​ строк листа и​

Поиск значения в столбце Excel

​ столбца в таблице)​ нужна выборка из​ (для Типа сопоставления​ размеров.​Во-вторых, совершенно аналогичным способом​ только по одному​ как в табличной​ номеру сроки и​ столбцов для диапазона​ водим критерий для​ выведены все значения,​

​ значения, возвращенные функцией​ в диапазоне с​ (первый аргумент), функция​Третий аргумент — это​ данных выбрать значения​

​ таблицы с помощи​ аргументах. Так как​ таблицы по условию.​ = -1) по​

  1. ​Решение для серой ячейки​ мы должны определить​ параметру, т.е. в​ части у нас​ столбца из определенного​
  2. ​ B4:G15.​ поискового запроса, то​
  3. ​ которые начинаются или​ ПОИСК(), на номер​ повторяющимися значениями. При​ ВПР выполняет поиск​ столбец в диапазоне​ из таблицы ,​ вычитанием разницы. Например,​ наша исходная таблица​Результат поиска по столбцам.
  4. ​ Допустим мы хотим​ строчкам и по​
  5. ​ будет практически полностью​ порядковый номер столбца​

Найдено название строки.

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

​ одномерном массиве -​ находится 10 строк.​ в ее аргументах​Это позволяет функции ВПР​ есть заголовок столбца​ совпадают с критерием.​ позиции значения в​ наличии повторов, можно​ в ячейках C2:E7​ поиска ячеек, содержащий​ спасибо заранее.​ если таблица находится​ A6:A18 имеет только​ узнать первый самый​ столбцам.​ аналогично предыдущему примеру:​

​ в таблице с​ по строке или​Далее функция ГПР поочередно​ диапазона. Так как​ собрать целый массив​ или название строки.​ Критерий вводится в​ списке. Если значение​ ожидать, что критерию​ (второй аргумент) и​

​ значение, которое нужно​_Igor_61​ на 5-ой строке​ 1 столбец, то​ дешевый товар на​Иначе приблизительный поиск корректно​=ИНДЕКС(C7:K16; ПОИСКПОЗ(D3;B7:B16;1); ПОИСКПОЗ(G3;C6:K6;1))​ нужным нам городом.​ по столбцу. А​ используя каждый номер​

​ у нас есть​ значений. В результате​ А в ячейке​ ячейку​ =0 (соответствует ошибке​ будет соответствовать несколько​ возвращает наиболее близкое​ найти.​: Здравствуйте! Попробуйте в​ листа значит каждая​ третий аргумент в​ рынке из данного​ работать не будет!​=INDEX(C7:K16; MATCH(D3;B7:B16;1); MATCH(G3;C6:K6;1))​

​ Функция​ если нам необходимо​ строки создает массив​

​ номер столбца 2,​ в памяти хранится​ D1 формула поиска​G6​

​ #ЗНАЧ!), то возвращается​ значений. Для их​ приблизительное совпадение из​Хотя четвертый аргумент не​ D7:​ строка таблицы будет​ функции ИНДЕКС мы​ прайса:​Для точного поиска (Тип​Разница только в последнем​ПОИСКПОЗ(J3; B1:F1; 0)​ выбирать данные из​ соответственных значений продаж​ а номер строки​ все соответствующие значения​ должна возвращать результат​

exceltable.com

Двумерный поиск в таблице (ВПР 2D)

​.​ число 30. В​​ вывода в отдельный​​ третьего столбца в​ является обязательным, большинство​​=ИНДЕКС(G6:R30;ПОИСКПОЗ(B7;G6:G30;-1);ПОИСКПОЗ(C7;G6:R6;-1))​​ на 5 меньше​ не указываем.​Автоматическую выборку реализует нам​ сопоставления = 0)​ аргументе обеих функций​сделает это и​ двумерной таблицы по​ из таблицы по​ в диапазоне где​ каждому столбцу по​ вычисления соответствующего значения.​Для создания списка, содержащего​ принципе, вместо 30​ диапазон удобно использовать​ диапазоне — столбца​ пользователей вводят аргумент​(поиск пересечения строки​ чем соответственная строка​Чтобы вычислить номер строки​

Пример 1. Найти значение по товару и городу

​ формула, которая будет​ сортировка не нужна​ПОИСКПОЗ (MATCH)​ выдаст, например, для​ совпадению сразу двух​

Excel поиск значения в таблице

​ определенному месяцу (Июню).​ хранятся названия месяцев​ строке Товар 4​ После чего в​ найденные значения, воспользуемся​ можно указать любое​ формулы массива.​ E (третий аргумент).​ ЛОЖЬ (или 0).​ и столбца)​ листа.​ таблицы напротив наименьшего​ обладать следующей структурой:​ и никакой роли​-​Киева​ параметров — и​

  • ​ Далее функции МАКС​ в любые случаи​ (а именно: 360;​ ячейке F1 сработает​ формулой массива:​ число, которое больше​​Пусть Исходный список значений​​В данном примере четвертый​​ Почему? Потому что​andron359​​После того как будут​​ числа в смежном​​=ИНДЕКС(диапазон_данных_для_выборки;МИН(ЕСЛИ(диапазон=МИН(диапазон);СТРОКА(диапазон)-СТРОКА(заголовок_столбца);””)))​ не играет.​​Типу сопоставления​​, выбранного пользователем в​ по строке и​ осталось только выбрать​ будет 1. Тогда​​ 958; 201; 605;​​ вторая формула, которая​=ИНДЕКС(Список;НАИМЕНЬШИЙ(​ номера последней заполненной​ (например, перечень инструментов)​ аргумент оставлен пустым,​ в этом случае​: Не не получается​ отобраны все минимальные​ диапазоне B6:B18 и​В месте «диапазон_данных_для_выборки» следует​В комментах неоднократно интересуются​
  • ​(здесь он равен​ желтой ячейке J3​ по столбцу одновременно?​ максимальное значение из​ нам осталось функцией​ 462; 832). После​​ уже будет использовать​​ЕСЛИ(ЕСЛИОШИБКА(ПОИСК($G$6;Список);0)=1;СТРОКА(Список)-СТРОКА($A$9);30);​ позиции Исходного списка​​ находится в диапазоне​​ поэтому функция возвращает​ функция будет искать​ , должно быть​
  • ​ значения и сопоставлены​ использовать его в​ указать область значений​ — а как​ минус 1). Это​ значение 4.​ Давайте рассмотрим несколько​​ этого массива.​​ ИНДЕКС получить соответственное​ чего функции МАКС​​ значения ячеек B1​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))​​ (это нужно для​A10:A19​ приблизительное совпадение.​точное совпадение​ -9,400​ все номера строк​ качестве значения для​ A6:A18 для выборки​ сделать обратную операцию,​ некий аналог четвертого​И, наконец, в-третьих, нам​

​ жизненных примеров таких​Далее немного изменив первую​ значение из диапазона​ остается только взять​

​ и D1 в​

​В этом случае будут​ правильной сортировки функцией​

Пример 2. Приблизительный двумерный поиск

​(см. Файл примера).​Разобравшись с функцией ВПР,​. Можно ввести аргумент​_Igor_61​

Excel поиск значения в таблице

​ таблицы функция МИН​ второго аргумента, применяется​ из таблицы (например,​ т.е. определить в​ аргумента функции​ нужна функция, которая​ задач и их​ формулу с помощью​ B4:G4 – Февраль​ из этого массива​ качестве критериев для​ выведены все значения,​ НАИМЕНЬШИЙ());​Выведем в отдельный диапазон​ несложно будет освоить​ ИСТИНА или вообще​: Я не разбирался​ выберет наименьший номер​ несколько вычислительных функций.​ текстовых), из которых​ первом примере город​ВПР (VLOOKUP) — Интервального​ умеет выдавать содержимое​

​ решения.​ функций ИНДЕКС и​ (второй месяц).​

​ максимальное число и​

​ поиска соответствующего месяца.​

​ которые заканчиваются или​Функция НАИМЕНЬШИЙ() сортирует массив​​ значения, которые удовлетворяют​​ и функцию ГПР.​​ не вводить аргумент,​​ в Вашей огромной​ строки. Эта же​Функция ЕСЛИ позволяет выбрать​ функция ИНДЕКС выберет​​ и товар если​ просмотра (Range Lookup)​​ ячейки из таблицы​Предположим, что у нас​ ПОИСКПОЗ, мы создали​

  • ​​​ возвратить в качестве​Теперь узнаем, в каком​ совпадают с критерием.​ номеров строк по​ критерию. Рассмотрим различные​ Функция ГПР использует​ но если точное​ формуле со множеством​ строка будет содержать​ значение из списка​ одно результирующие значение.​ мы знаем значение​. Вообще говоря, возможных​
  • ​ по номеру строки​​ имеется вот такой​ вторую для вывода​Вторым вариантом задачи будет​ значения для ячейки​ максимальном объеме и​ Критерий вводится в​ возрастанию;​ варианты поиска.​ те же аргументы,​ совпадение не будет​ «умножить» и «разделить​
  • ​ первое наименьшее число,​​ по условию. В​ Аргумент «диапазон» означает​ из таблицы? Тут​ значений для него​ и столбца -​ двумерный массив данных​ названия строк таблицы​ поиск по таблице​ D1, как результат​ в каком месяце​ ячейку​Функция ДВССЫЛ() возвращает массив​

​Для удобства создадим именованный​ но выполняет поиск​ найдено, функция вернет​По этому принципу​ которое встречается в​ ее первом аргументе​ область ячеек с​ потребуются две небольшие​ три:​ функция​ по городам и​ по зачиню ячейки.​ с использованием названия​ вычисления формулы.​​ была максимальная продажа​I6​

​ последовательных чисел;​ диапазон Список.​ в строках вместо​наиболее близкое​ ищите пересечения и​

P.S. Обратная задача

​ столбце B6:B18. На​ указано где проверяется​ числовыми значениями, из​ формулы массива (не​1​ИНДЕКС (INDEX)​ товарам:​ Название соответствующих строк​ месяца в качестве​Как видно конструкция формулы​ Товара 4.​.​Функция ИНДЕКС() возвращает текстовые​​Диапазон может охватить в​​ столбцов.​​приблизительное совпадение​​ подставляйте в Вашу​

Excel поиск значения в таблице

​ основании этого номера​

  1. ​ каждая ячейка в​ которых следует выбрать​ забудьте ввести их​- поиск ближайшего​из той же​Пользователь вводит (или выбирает​​ (товаров) выводим в​
  2. ​ критерия. В такие​ проста и лаконична.​Чтобы выполнить поиск по​Для создания списка, содержащего​ значения из Исходного​ том числе и​​Если вы не хотите​​, а большинство людей​​ формулу​
  3. ​ строки функции ИНДЕКС​ диапазоне B6:B18 на​ первое наименьшее число.​​ с помощью сочетания​

planetaexcel.ru

Выборка значений из таблицы Excel по условию

​ наименьшего числа, т.е.​ категории​ из выпадающих списков)​ F2.​ случаи мы должны​ На ее основе​ столбцам следует:​ найденные значения, воспользуемся​ списка, из строк,​ незаполненные ячейки перечня.​ ограничиваться поиском в​ приблизительное совпадение не​buchlotnik​ выберет соответствующее значение​ наличие наименьшего числового​ В аргументе «заголовок_столбца»​ клавиш​ введенные пользователем размеры​

Как сделать выборку в Excel по условию

​Ссылки и массивы (Lookup​ в желтых ячейках​ВНИМАНИЕ! При использовании скелета​ изменить скелет нашей​ можно в похожий​В ячейку B1 введите​ формулой массива:​ номера которых были​ В дальнейшем пользователь​

Прайс продуктов.

​ крайнем левом столбце,​ устраивает.​: Доброй ночи -​

​ из таблицы A6:A18.​

​ значения: ЕСЛИB6:B18=МИНB6:B18. Таким​ для второй функции​Ctrl+Shift+Enter​ двери округлялись бы​ and Reference)​ нужный товар и​ формулы для других​ формулы: функцию ВПР​ способ находить для​ значение Товара 4​=ИНДЕКС(Список;НАИМЕНЬШИЙ(​ получены на предыдущем​ может расширить перечень​ можно использовать сочетание​Чтобы убедиться в том,​ в зелёных ячейках​ В итоге формула​ способом в памяти​ СТРОКА, следует указать​

​, а не обычного​ до ближайших наименьших​. Первый аргумент этой​ город. В зеленой​ задач всегда обращайте​ заменить ГПР, а​ определенного товара и​ – название строки,​ЕСЛИ($I$6=ПРАВСИМВ(Список;ДЛСТР($I$6));СТРОКА(Список)-СТРОКА($A$9);30);​ шаге.​ инструментов, указанные ниже​

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

​ ссылку на ячейку​Enter​

Условие выбрать первое минимальное.

​ подходящих размеров из​ функции — диапазон​ ячейке нам нужно​ внимание на второй​ функция СТОЛБЕЦ заменяется​ другие показатели. Например,​ которое выступит в​

​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))​

Как работает выборка по условию

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

​ загонял — громоздко,​ в качестве результата​ ИСТИНА и ЛОЖЬ.​ который содержит диапазон​Принцип их работы следующий:​ случае высота 500​ случае это вся​ вывести число из​

​ поисковой функции ГПР.​Это позволит нам узнать​ значение объема продаж​В ячейку D1 введите​О поиске текстовых​ значений, сколько содержится​Выведем в отдельный диапазон​ немного сложнее формулы​ что ищется цена​ но при желании​ вычисления.​ В нашем случаи​ числовых значений.​перебираем все ячейки в​ округлилась бы до​ таблица, т.е. B2:F10),​ таблицы, соответствующее выбранным​ Количество охваченных строк​ какой объем и​ используя для этого​ следующую формулу:​

​ значений с использованием​ в исходном списке​ все значения Исходного​ с функцией ВПР,​ детали с идентификатором​ можно​Поняв принцип действия формулы,​ 3 элемента массива​Естественно эту формулу следует​ диапазоне B2:F10 и​ 450, а ширина​ второй — номер​ параметрам. Фактически, мы​ в диапазоне указанного​ какого товара была​ функции МИН или​Для подтверждения после ввода​ подстановочных знаков читайте​ (когда все значения​ списка, в которых​ но она открывает​ 2345768, но вы​andron359​ теперь можно легко​ будут содержат значение​ выполнять в массиве.​ ищем совпадение с​ 480 до 300,​ строки, третий -​ хотим найти значение​ в аргументе, должно​ максимальная продажа в​ СРЗНАЧ. Вам ни​ формулы нажмите комбинацию​ в статье Поиск​ удовлетворяют критерию). Поэтому​содержится​ больше возможностей. Поэтому​ перепутали две цифры​: Добрый день !​ ее модифицировать и​ ИСТИНА, так как​

​ Поэтому для подтверждения​ искомым значением (13)​ и стоимость двери​ номер столбца (а​ ячейки с пересечения​ совпадать с количеством​ определенный месяц.​ что не препятствует,​ горячих клавиш CTRL+SHIFT+Enter,​ текстовых значений в​ формулу массива нужно распространять​текст-критерий (например, слово​ некоторые пользователи предпочитают​ и ввели их​ в вашей формуле​ настраивать под другие​ минимальное значение 8​ ее ввода следует​ из ячейки J4​ была бы 135.​

Как выбрать значение с наибольшим числом в Excel

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

Первое максимальное значение.

​ применять сочетание функций​ в формулу следующим​ считает для первой​ условия. Например, формулу​ содержит еще 2​ нажимать не просто​

​ с помощью функции​Максимальное значение по условию.

​-1​ с помощью функций​ столбца в таблице.​

Больше чем ноль.

​ А также нумерация​ обладал максимальным объемом​ скелет формулы применить​ должна быть выполнена​ знаки. В статье​

​ же размерности, что​ в ячейку​

​ ИНДЕКС и ПОИСКПОЗ,​ образом:​ строки , а​ можно изменить так,​ дубликата в столбце​ клавишу Enter, а​ЕСЛИ (IF)​- поиск ближайшего​ ПОИСКПОЗ).​ Для наглядности, разобъем​

exceltable.com

Поиск значений в таблице (Формулы/Formulas)

​ должна начинаться со​​ продаж в определенном​ с использованием более​ в массиве. Если​ Выделение ячеек c​ и исходный список.​С6​

​ а не функцию​​=ВПР​ в следующей выдаёт​​ чтобы выбрать первое​​ B6:B18.​ целую комбинацию клавиш​

​когда нашли совпадение, то​​ наибольшего числа, т.е.​Итого, соединяя все вышеперечисленное​ задачу на три​

​ второй строки!​​ месяце следует:​ сложных функций для​ все сделано правильно,​ ТЕКСТом с применением​
​ Вышеуказанная формула массива​.​ ВПР.​(2345678;A1:E7;5)​

​ н/д ?​​ максимальное значение в​Следующий шаг – это​ CTRL+SHIFT+Enter. Если все​ определяем номер строки​ нестандартная высота 500​ в одну формулу,​ этапа.​

​Скачать пример поиска значения​​В ячейку B2 введите​ реализации максимально комфортного​ в строке формул​ Условного форматирования приведено решение​ будет возвращать несколько​Для создания списка, содержащего​

excelworld.ru

​В данном примере представлен​

Поиск значений в списке данных

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

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

В этой статье

Поиск значений в списке по вертикали по точному совпадению

Для выполнения этой задачи можно использовать функцию ВПР или сочетание функций индекс и ПОИСКПОЗ.

Примеры использования функции ВПР

Дополнительные сведения можно найти в разделе функция ВПР.

Примеры ИНДЕКСов и СОВПАДЕНИй

=ИНДЕКС(нужно вернуть значение из C2:C10, которое будет соответствовать ПОИСКПОЗ(первое значение «Капуста» в массиве B2:B10))

Формула ищет первое значение в ячейке C2: C10, соответствующее капусты (в B7), и возвращает значение в C7 (100) — первое значение, соответствующее капусты.

Дополнительные сведения можно найти в разделе Функция индекс и функция ПОИСКПОЗ.

Поиск значений в списке по вертикали по приблизительному совпадению

Для этого используйте функцию ВПР.

Важно: Убедитесь, что значения в первой строке отсортированы в возрастающем порядке.

В приведенном выше примере функция ВПР ищет имя учащегося, у которого есть 6 тардиес в диапазоне A2: B7. В таблице нет записи для 6 тардиес, поэтому функция ВПР ищет следующее самое высокое соответствие ниже 6 и находит значение 5, связанное с первым именем Дэйв, и, следовательно, возвращает Дэйв.

Дополнительные сведения можно найти в разделе функция ВПР.

Поиск значений по вертикали в списке неизвестного размера с точным соответствием

Для выполнения этой задачи используйте функции СМЕЩ и ПОИСКПОЗ.

Примечание: Этот подход используется, если данные находятся в диапазоне внешних данных, который вы обновляете каждый день. Вы знаете, что в столбце B есть Цена, но вы не знаете, сколько строк данных возвращает сервер, а первый столбец не отсортирован по алфавиту.

C1 — это верхняя левая ячейка диапазона (также называемая начальной ячейкой).

Match («апельсины»; C2: C7; 0) ищет оранжевый цвет в диапазоне C2: C7. Не следует включать начальную ячейку в диапазон.

1 — количество столбцов справа от начальной ячейки, для которых должно быть возвращено возвращаемое значение. В нашем примере возвращаемое значение находится в столбце D, Sales.

Поиск значений в списке по горизонтали по точному совпадению

Для выполнения этой задачи используется функция ГПР. Ниже приведен пример.

Функция ГПР выполняет поиск по столбцу Sales и возвращает значение из строки 5 в указанном диапазоне.

Дополнительные сведения можно найти в разделе функции ГПР.

Поиск значений в списке по горизонтали с использованием приблизительного совпадения

Для выполнения этой задачи используется функция ГПР.

Важно: Убедитесь, что значения в первой строке отсортированы в возрастающем порядке.

В приведенном выше примере функция ГПР ищет значение 11000 в строке 3 в указанном диапазоне. Он не находит 11000 и, следовательно, ищет следующее наибольшее значение, которое меньше 1100 и возвращает число 10543.

Дополнительные сведения можно найти в разделе функции ГПР.

Создание формулы подстановки с помощью мастера подстановок (толькоExcel 2007 )

Примечание: Надстройка «Мастер подстановок» прекращена в Excel 2010. Эти функциональные возможности заменены мастером функций и доступными функциями поиска и работы со ссылками (ссылками).

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

Щелкните ячейку в диапазоне.

На вкладке формулы в группе решения нажмите кнопку Подстановка .

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

Загрузка программы-надстройки «Мастер подстановок»

Нажмите кнопку Microsoft Office , щелкните Параметры Excelи выберите категорию надстройки.

В поле Управление выберите элемент Надстройки 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 выбрать первое минимальное значение кроме нуля:

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

Теперь Вас ни что не ограничивает. Один раз разобравшись с принципами действия формул в массиве Вы сможете легко модифицировать их под множество условий и быстро решать много вычислительных задач.

Вывод отобранных значений в отдельный диапазон в Excel. Бесплатные примеры и статьи.

Пять последних значений в MS EXCEL

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

Удаляем в MS EXCEL пропуски в списке (формулы)

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

Запрос на выборку данных (формулы) в MS EXCEL

Суть запроса на выборку – выбрать из исходной таблицы строки, удовлетворяющие определенным критериям (подобно применению стандартного Фильтра). Произведем отбор значений из исходной таблицы с помощью формул массива. В отличие от применения Фильтра (CTRL+SHIFT+L или Данные/ Сортировка и фильтр/ Фильтр ) отобранные строки будут помещены в отдельную таблицу.

Отбор уникальных значений (убираем повторы из списка) в MS EXCEL

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

Вывод итогов столбцов по строкам в MS EXCEL

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

Отбор неповторяющихся значений со значениями из соседнего столбца в MS EXCEL

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

Отбор неповторяющихся значений в MS EXCEL

Имея список с повторяющимися значениями, создадим список, состоящий только из значений, которые не повторяются.

Отбор повторяющихся значений в MS EXCEL

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

Динамическое разнесение данных по столбцам

Пусть имеется таблица, состоящая из двух столбцов: наименование организации и ее тип (юридическое лицо, индивидуальный предприниматель, физическое лицо). Необходимо разнести организации по разным столбцам в зависимости от типа: Юрлица, ИП и ФЛ должны быть каждый в своем отдельном столбце.При добавлении новых строк в исходную таблицу организации должны динамически попадать в нужный столбец.

Отбор уникальных значений в MS EXCEL с условиями

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

Запрос на выборку данных в MS EXCEL (на основе элементов управления формы)

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

Отбор неповторяющихся значений из двух диапазонов в MS EXCEL

Имея два списка с однотипными повторяющимися значениями, создадим список, состоящий только из неповторяющихся значений.

Отбор уникальных значений из двух диапазонов в MS EXCEL

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

Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть2. Подстановочные знаки

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

Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть1. Обычный поиск

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

Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть3. Поиск с учетом РЕГИСТРА

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

Отбор уникальных значений с сортировкой в MS EXCEL

Из исходной таблицы отберем только уникальные значения и выведем их в отдельный диапазон с сортировкой по возрастанию. Отбор и сортировку сделаем с помощью одной формулой массива. Формула работает как для текстовых (сортировка от А до Я), так и для числовых значений (сортировка от мин до макс).

Поиск ЧИСЛОвых значений и вывод соответствующих значений в отдельный список в MS EXCEL

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

Поиск нескольких значений с максимальной длиной строки в MS EXCEL

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

Отбор повторяющихся значений (дубликатов) со значениями из соседнего столбца в MS EXCEL

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

ВПР с возвратом всех значений

Все, кто сталкивался с функцией ВПР знают, что она умеет возвращать исключительно одно значений — первое найденное. Но что делать, когда надо видеть все значения? К примеру имеется такая таблица:

И из этой таблицы необходимо получить фамилии(поле ФИО) всех сотрудников из отдела Сбыта:

Тут два варианта:

    Вариант 1: все значения необходимо получить в одной ячейке через разделитель(скажем запятую). Такое возможно только через использование VBA(на момент написания статьи). Такую функцию я написал давно: Как сцепить несколько значений в одну ячейку по критерию? СцепитьЕсли

. В результате получим что-то вроде: Александров Иван,Александров Петр,Андреев Алексей .

  • Вариант 2: каждое значение должно быть в отдельной ячейке. Этот вариант мы и рассмотрим более подробно в данной статье. Причем решать задачу будем без использования макросов — только встроенными функциями
  • Здесь надо сразу оговориться — при помощи непосредственно ВПР (VLookup) это сделать ну никак не получится. Но это можно сделать при помощи её родственников — связки ИНДЕКС(ПОИСКПОЗ) (INDEX(MATCH)) . Плюс еще пара функций. В сборе функция выглядит так:
    =ИНДЕКС( $A$12:$G$111 ;НАИМЕНЬШИЙ(ЕСЛИ( $I$12 = $C$12:$C$111 ;СТРОКА( $C$12:$C$111 )-11);СТРОКА( A1 ));1)
    =INDEX($A$12:$G$111;SMALL(IF($I$12=$C$12:$C$111;ROW($C$12:$C$111)-11);ROW(A1));1)
    где:

    • $A$12:$G$111 — таблица с ФИО и всеми данными
    • $I$12 — ячейка с названием отдела
    • $C$12:$C$111 — столбец с названиями отделов в таблице $A$12:$G$111

    А теперь начнем разбирать формулу по кусочкам
    Предлагаю сразу скачать пример файла с данными и формулами — тогда понять будет проще:

    Tips_All_VlookupAllVals.xls (84,5 KiB, 8 651 скачиваний)

    • Первое и самое главное — формула вводится в ячейку как формула массива. Это значит, что для приложенного к статье примера необходимо будет выделить ячейку J12 , записать в неё формулу и завершить ввод нажатием сразу трех клавиш: Ctrl+Shift+Enter. После этого скопировать ячейку, выделить диапазон J13:J39 и вставить туда скопированную ячейку.
    • За отбор ФИО указанного отдела отвечает этот кусок: ЕСЛИ( $I$12 = $C$12:$C$111 ;СТРОКА( $C$12:$C$111 )-11)
      IF($I$12=$C$12:$C$111;ROW($C$12:$C$111)-11)
      Как видно здесь идет сравнение отдела, записанного в $I$12 со всеми отделами в таблице: $C$12:$C$111 . Если отдел совпадает, то функция возвращает номер строки СТРОКА( $C$12:$C$111 ) . Но нам нужен не номер строки на листе, а номер строки внутри таблицы(потому что в формулу ИНДЕКС (INDEX) у нас передан диапазон $A$12:$G$111 и если передать в его второй аргумент( номер_строки ) 14, то получим не Александров Иван , а Андреев Олег ). Поэтому отнимаем от номера строки 11, чтобы было возвращено число 3(а не 14). Т.к. формула записана формулой массива — ЕСЛИ (IF) возвращает массив из номеров строк и логического ЛОЖЬ (FALSE) (если отдел не совпадает):
      шаг 1: ЕСЛИ(<ЛОЖЬ:ЛОЖЬ: ИСТИНА :ЛОЖЬ:ЛОЖЬ: ИСТИНА :ЛОЖЬ:ЛОЖЬ:ЛОЖЬ>;<12:13: 14 :15:16: 17 :18:19:20>-11)
      шаг 2: ЕСЛИ(<ЛОЖЬ:ЛОЖЬ: ИСТИНА :ЛОЖЬ:ЛОЖЬ: ИСТИНА :ЛОЖЬ:ЛОЖЬ:ЛОЖЬ>;<1:2: 3 :4:5: 6 :7:8:9>)
      шаг 3:
    • Т.к. ЕСЛИ (IF) в данном случае возвращает массив значений, включая ненужные нам ЛОЖЬ (FALSE) — применяем НАИМЕНЬШИЙ (SMALL) , которая будет брать только числа (сначала 3, затем 6 и т.д.), а логические значения ЛОЖЬ (FALSE) будет игнорировать:
      НАИМЕНЬШИЙ(<ЛОЖЬ:ЛОЖЬ: 3 :ЛОЖЬ:ЛОЖЬ: 6 :ЛОЖЬ:ЛОЖЬ:ЛОЖЬ>;СТРОКА(A1))
      SMALL(<ЛОЖЬ:ЛОЖЬ: 3 :ЛОЖЬ:ЛОЖЬ: 6 :ЛОЖЬ:ЛОЖЬ:ЛОЖЬ>;ROW(A1))
      Функция НАИМЕНЬШИЙ (SMALL) отбирает из указанного массива чисел наименьшее. При этом можно отобрать по рангу — первое наименьшее, второе наименьшее, третье наименьшее и т.д.
    1. с первым аргументом разобрались — это уже отобранные записи, где число — строка в таблице с нужной ФИО и ненужные нам логические ЛОЖЬ (FALSE) .
    2. второй аргумент СТРОКА(A1) для каждой следующей строки будет меняться. В приложенном примере первая ячейка с формулой — J12 . В ней СТРОКА(A1) равна 1, т.е. НАИМЕНЬШИЙ (SMALL) вернет первое наименьшее из массива чисел — 3 . В ячейке J13 это уже будет СТРОКА(A2) и она равна 2, а значит НАИМЕНЬШИЙ (SMALL) вернет второе наименьшее из массива чисел — 6 . И т.д. Когда все числа закончатся — НАИМЕНЬШИЙ (SMALL) вернет значение ошибки #ЧИСЛО! (#NUM!)
      ячейка J12
      шаг 1: НАИМЕНЬШИЙ(<ЛОЖЬ:ЛОЖЬ: 3 :ЛОЖЬ:ЛОЖЬ: 6 :ЛОЖЬ:ЛОЖЬ:ЛОЖЬ>;СТРОКА(A1))
      шаг 2: НАИМЕНЬШИЙ(<ЛОЖЬ:ЛОЖЬ: 3 :ЛОЖЬ:ЛОЖЬ: 6 :ЛОЖЬ:ЛОЖЬ:ЛОЖЬ>;1)
      шаг 3: НАИМЕНЬШИЙ( 3 )
      ячейка J13
      шаг 1: НАИМЕНЬШИЙ(<ЛОЖЬ:ЛОЖЬ: 3 :ЛОЖЬ:ЛОЖЬ: 6 :ЛОЖЬ:ЛОЖЬ:ЛОЖЬ>;СТРОКА(A2))
      шаг 2: НАИМЕНЬШИЙ(<ЛОЖЬ:ЛОЖЬ: 3 :ЛОЖЬ:ЛОЖЬ: 6 :ЛОЖЬ:ЛОЖЬ:ЛОЖЬ>;2)
      шаг 3: НАИМЕНЬШИЙ( 6 )
  • И последний штрих — все это передается в функцию ИНДЕКС (INDEX) . Для ячейки J12 это будет значение ячейки, расположенной на пересечении 3-й строки и 1-го столбца диапазона $A$12:$G$111 . На листе это ячейка A14 . Т.е. третья сверху ячейка столбца А в диапазоне $A$12:$G$111 — Александров Иван .

    ячейка J12
    шаг 1: =ИНДЕКС( $A$12:$G$111 ;НАИМЕНЬШИЙ( 3 );1)
    шаг 2: =ИНДЕКС( $A$12:$G$111 ;3;1)
    шаг 3: Александров Иван
    ячейка J13
    шаг 1: =ИНДЕКС( $A$12:$G$111 ;НАИМЕНЬШИЙ( 6 );1)
    шаг 2: =ИНДЕКС( $A$12:$G$111 ;6;1)
    шаг 3: Александров Петр

  • И в довершение неплохо бы убрать ошибку в случае, если ни одно значение не соответствует критерию или значений больше, чем ячеек с формулами. Более подробно подобное решение я описывал в этой статье: Как в ячейке с формулой вместо ошибки показать 0
    Для всех версий Excel:
    =ЕСЛИ(ЕОШ(ИНДЕКС( $A$12:$G$111 ;НАИМЕНЬШИЙ(ЕСЛИ( $I$12 = $C$12:$C$111 ;СТРОКА( $C$12:$C$111 )-11);СТРОКА( A1 ));1));»»;ИНДЕКС( $A$12:$G$111 ;НАИМЕНЬШИЙ(ЕСЛИ( $I$12 = $C$12:$C$111 ;СТРОКА( $C$12:$C$111 )-11);СТРОКА( A1 ));1))
    =IF(ISERR(INDEX($A$12:$G$111;SMALL(IF($I$12=$C$12:$C$111;ROW($C$12:$C$111)-11);ROW(A1));1));»»;INDEX($A$12:$G$111;SMALL(IF($I$12=$C$12:$C$111;ROW($C$12:$C$111)-11);ROW(A1));1))
    Для Excel 2007 и выше:
    =ЕСЛИОШИБКА(ИНДЕКС( $A$12:$G$111 ;НАИМЕНЬШИЙ(ЕСЛИ( $I$12 = $C$12:$C$111 ;СТРОКА( $C$12:$C$111 )-11);СТРОКА( A1 ));1);»»)
    =IFERROR(INDEX($A$12:$G$111;SMALL(IF($I$12=$C$12:$C$111;ROW($C$12:$C$111)-11);ROW(A1));1);»»)
    Плюс к этому в приложенном к статье файле я привел формулу, которая возвращает список всех сотрудников выбранного отдела без повторений и формулу с возможностью просто поменять заголовок в результирующем столбце(в файле это столбец K, ячейка K11 ) на любой из исходной таблицы и данные будут отображены из этого столбца.
    Например, если вместо столбца ФИО записать в K11 Адрес — будут отображены все адреса сотрудников выбранного отдела. Если записать Телефон — все телефоны сотрудников выбранного отдела.

    Tips_All_VlookupAllVals.xls (84,5 KiB, 8 651 скачиваний)

    Статья помогла? Поделись ссылкой с друзьями!

    Поиск и подстановка по нескольким условиям

    Постановка задачи

    Если вы продвинутый пользователь Microsoft Excel, то должны быть знакомы с функцией поиска и подстановки ВПР или VLOOKUP (если еще нет, то сначала почитайте эту статью, чтобы им стать). Для тех, кто понимает, рекламировать ее не нужно 🙂 — без нее не обходится ни один сложный расчет в Excel. Есть, однако, одна проблема: эта функция умеет искать данные только по совпадению одного параметра. А если у нас их несколько?

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

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

    Способ 1. Дополнительный столбец с ключом поиска

    Это самый очевидный и простой (хотя и не самый удобный) способ. Поскольку штатная функция ВПР (VLOOKUP) умеет искать только по одному столбцу, а не по нескольким, то нам нужно из нескольких сделать один!

    Добавим рядом с нашей таблицей еще один столбец, где склеим название товара и месяц в единое целое с помощью оператора сцепки (&), чтобы получить уникальный столбец-ключ для поиска:

    Теперь можно использовать знакомую функцию ВПР (VLOOKUP) для поиска склеенной пары НектаринЯнварь из ячеек H3 и J3 в созданном ключевом столбце:

    Плюсы : Простой способ, знакомая функция, работает с любыми данными.

    Минусы : Надо делать дополнительный столбец и потом, возможно, еще и прятать его от пользователя. При изменении числа строк в таблице — допротягивать формулу сцепки на новые строки (хотя это можно упростить применением умной таблицы).

    Способ 2. Функция СУММЕСЛИМН

    Если нужно найти именно число (в нашем случае цена как раз число), то вместо ВПР можно использовать функцию СУММЕСЛИМН (SUMIFS) , появившуюся начиная с Excel 2007. По идее, эта функция выбирает и суммирует числовые значения по нескольким (до 127!) условиям. Но если в нашем списке нет повторяющихся товаров внутри одного месяца, то она просто выведет значение цены для заданного товара и месяца:

    Плюсы : Не нужен дополнительный столбец, решение легко масштабируется на большее количество условий (до 127), быстро считает.

    Минусы : Работает только с числовыми данными на выходе, не применима для поиска текста, не работает в старых версиях Excel (2003 и ранее).

    Способ 3. Формула массива

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

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

  • Нажмите в конце не Enter, а сочетание Ctrl+Shift+Enter, чтобы ввести формулу не как обычную, а как формулу массива.
  • Как это на самом деле работает:

    Функция ИНДЕКС выдает из диапазона цен C2:C161 содержимое N-ой ячейки по порядку. При этом порядковый номер нужной ячейки нам находит функция ПОИСКПОЗ. Она ищет связку названия товара и месяца (НектаринЯнварь) по очереди во всех ячейках склеенного из двух столбцов диапазона A2:A161&B2:B161 и выдает порядковый номер ячейки, где нашла точное совпадение. По сути, это первый способ, но ключевой столбец создается виртуально прямо внутри формулы, а не в ячейках листа.

    Плюсы : Не нужен отдельный столбец, работает и с числами и с текстом.

    Минусы : Ощутимо тормозит на больших таблицах (как и все формулы массива, впрочем), особенно если указывать диапазоны «с запасом» или сразу целые столбцы (т.е. вместо A2:A161 вводить A:A и т.д.) Многим непривычны формулы массива в принципе (тогда вам сюда).

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

    Поиск значений в таблице Excel

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

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

    Отчет объем продаж товаров.

    Над самой таблицей расположена строка с результатами. В ячейку B1 водим критерий для поискового запроса, то есть заголовок столбца или название строки. А в ячейке D1 формула поиска должна возвращать результат вычисления соответствующего значения. После чего в ячейке F1 сработает вторая формула, которая уже будет использовать значения ячеек B1 и D1 в качестве критериев для поиска соответствующего месяца.

    Поиск значения в строке Excel

    Теперь узнаем, в каком максимальном объеме и в каком месяце была максимальная продажа Товара 4.

    Чтобы выполнить поиск по столбцам следует:

    1. В ячейку B1 введите значение Товара 4 – название строки, которое выступит в качестве критерия.
    2. В ячейку D1 введите следующую формулу:
    3. Для подтверждения после ввода формулы нажмите комбинацию горячих клавиш CTRL+SHIFT+Enter, так как формула должна быть выполнена в массиве. Если все сделано правильно, в строке формул появятся фигурные скобки.
    4. Результат поиска по строкам.

    5. В ячейку F1 введите вторую формулу:
    6. Снова Для подтверждения нажмите комбинацию клавиш CTRL+SHIFT+Enter.

    Найдено название столбца.

    Найдено в каком месяце и какая была наибольшая продажа Товара 4 на протяжении двух кварталов.

    Принцип действия формулы поиска значения в строке Excel:

    В первом аргументе функции ВПР (Вертикальный ПРосмотр) указывается ссылка на ячейку где находится критерий поиска. Во втором аргументе указывается диапазон ячеек для просмотра в процессе поиска. В третьем аргументе функции ВПР должен указываться номер столбца, из которого следует взять значение на против строки с именем Товар 4. Но так как нам заранее не известен этот номер мы с помощью функции СТОЛБЕЦ создаем массив номеров столбцов для диапазона B4:G15.

    Это позволяет функции ВПР собрать целый массив значений. В результате в памяти хранится все соответствующие значения каждому столбцу по строке Товар 4 (а именно: 360; 958; 201; 605; 462; 832). После чего функции МАКС остается только взять из этого массива максимальное число и возвратить в качестве значения для ячейки D1, как результат вычисления формулы.

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

    Как получить заголовки столбцов по зачиню одной ячейки?

    Например, как эффектно мы отобразили месяц, в котором была максимальная продажа, с помощью второй формулы. Не сложно заметить что во второй формуле мы использовали скелет первой формулы без функции МАКС. Главная структура формулы: ВПР(B1;A5:G14;СТОЛБЕЦ(B5:G14);0). Мы заменили функцию МАКС на ПОИСКПОЗ, которая в первом аргументе использует значение, полученное предыдущей формулой. Оно теперь выступает в качестве критерия для поиска месяца. И в результате функция ПОИСКПОЗ нам возвращает номер столбца 2 где находится максимальное значение объема продаж для товара 4. После чего в работу включается функция ИНДЕКС, которая возвращает значение по номеру сроки и столбца из определенного в ее аргументах диапазона. Так как у нас есть номер столбца 2, а номер строки в диапазоне где хранятся названия месяцев в любые случаи будет 1. Тогда нам осталось функцией ИНДЕКС получить соответственное значение из диапазона B4:G4 – Февраль (второй месяц).

    

    Поиск значения в столбце Excel

    Вторым вариантом задачи будет поиск по таблице с использованием названия месяца в качестве критерия. В такие случаи мы должны изменить скелет нашей формулы: функцию ВПР заменить ГПР, а функция СТОЛБЕЦ заменяется на СТРОКА.

    Это позволит нам узнать какой объем и какого товара была максимальная продажа в определенный месяц.

    Чтобы найти какой товар обладал максимальным объемом продаж в определенном месяце следует:

    1. В ячейку B2 введите название месяца Июнь – это значение будет использовано в качестве поискового критерия.
    2. В ячейку D2 введите формулу:
    3. Для подтверждения после ввода формулы нажмите комбинацию клавиш CTRL+SHIFT+Enter, так как формула будет выполнена в массиве. А в строке формул появятся фигурные скобки.
    4. Результат поиска по столбцам.

    5. В ячейку F1 введите вторую формулу:
    6. Снова Для подтверждения нажмите CTRL+SHIFT+Enter.

    Найдено название строки.

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

    В первом аргументе функции ГПР (Горизонтальный ПРосмотр) указываем ссылку на ячейку с критерием для поиска. Во втором аргументе указана ссылка на просматриваемый диапазон таблицы. Третий аргумент генерирует функция СТРОКА, которая создает в памяти массив номеров строк из 10 элементов. Так как в табличной части у нас находится 10 строк.

    Далее функция ГПР поочередно используя каждый номер строки создает массив соответственных значений продаж из таблицы по определенному месяцу (Июню). Далее функции МАКС осталось только выбрать максимальное значение из этого массива.

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

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

    Скачать пример поиска значения в столбце и строке Excel

    Читайте также: Поиск значения в диапазоне таблицы Excel по столбцам и строкам

    По сути содержимое диапазона нас вообще не интересует, нам нужен просто счетчик строк. То есть изменить аргументы на: СТРОКА(B2:B11) или СТРОКА(С2:С11) – это никак не повлияет на качество формулы. Главное, что в этих диапазонах по 10 строк, как и в таблице. И нумерация начинается со второй строки!

    Хитрости »

    15 Май 2011              512003 просмотров


    Как найти значение в другой таблице или сила ВПР

    • Задача и её решение при помощи ВПР
    • Описание аргументов ВПР
    • Что важно всегда помнить при работе с ВПР
    • Как избежать ошибки #Н/Д(#N/A) в ВПР?
    • Как при помощи ВПР искать значение по строке, а не столбцу?
    • Решение при помощи ПОИСКПОЗ
    • Работа с критериями длиннее 255 символов
    Задача и её решение при помощи ВПР

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

    рис.1

    На картинке выше для удобства они показаны рядом, но на самом деле могут быть расположены на разных листах и даже в разных книгах. Таблицы по сути одинаковые, но фамилии в них расположены в разном порядке, и к тому же в одной заполнены все столбцы, а во второй столбцы ФИО и Отдел. И из первой таблицы необходимо подставить во вторую дату для каждой фамилии. Для трех записей это не проблема и руками сделать — все очевидно. Но в жизни это таблицы на тысячи записей и поиск с подстановкой данных вручную может занять не один час. Вот где ВПР(VLOOKUP) будет весьма кстати. Все, что необходимо — записать в ячейку

    C2

    второй таблицы(туда, куда необходимо подставить даты из первой таблицы) такую формулу:

    =ВПР($A2;Лист1!$A$1:$C$4;3;0)
    =VLOOKUP($A2,Лист1!$A$1:$C$4,3,0)

    Записать формулу можно либо непосредственно в ячейку, либо воспользовавшись диспетчером функций, выбрав в категории Ссылки и массивы(References & Arrays) функцию ВПР(VLOOKUP) и по отдельности указав нужные критерии. Теперь копируем(

    Ctrl

    +

    C

    ) ячейку с формулой(С2), выделяем все ячейки столбца

    С

    до конца данных и вставляем(

    Ctrl

    +

    V

    ).

    Теперь разберем поподробнее саму функцию, её аргументы и некоторые особенности.
    ВПР ищет заданное нами значение(аргумент искомое_значение) в первом столбце указанного диапазона(аргумент таблица). Поиск значения всегда происходит сверху вниз(собственно, поэтому функция и называется ВПР: Вертикальный ПРосмотр). Как только функция находит заданное значение — поиск прекращается, ВПР берет строку с найденным значением и смотрит на аргумент номер_столбца. Именно из этого столбца берётся значение, которое мы и видим как итог работы функции. Т.е. в нашем конкретном случае, для ячейки С2 второй таблицы, функция берет фамилию «Петров С.А.»(ячейка $A2 второй таблицы) и ищет её в первом столбце указанной таблицы(Лист1!$A$1:$C$4), т.е. в столбце А. Как только находит(это ячейка А3)

    ВПР может вернуть только одно значений — первое, подходящее под критерий. Если искомое значение не найдено(отсутствует в таблице), то результатом функции будет ошибка #Н/Д(#N/A). Не надо этого бояться — это даже полезно. Вы точно будете знать, каких записей нет и таким образом можете сравнивать две таблицы друг с другом. Иногда получается так, что Вы видите: данные есть в обеих таблицах, но ВПР выдает #Н/Д. Значит данные в Ваших таблицах не идентичны. В какой-то из них есть лишние неприметные пробелы(обычно перед значением или после), либо знаки кириллицы перемешаны со знаками латиницы. Так же #Н/Д будет, если критерии числа и в искомой таблице они записаны как текст(как правило в левом верхнем углу такой ячейки появляется зеленый треугольничек), а в итоговой — как числа. Или наоборот.


    Описание аргументов ВПР

    • Искомое_значение($A2) — это то значение из одной таблицы, которые мы ищем в другой таблице. Т.е. для первой записи второй таблицы это будет Петров С.А.. Здесь можно указать либо непосредственно текст критерия(в этом случае он должен быть в кавычках — =ВПР(«Петров С.А»;Лист1!$A$1:$C$4;3;0), либо ссылку на ячейку, с данным текстом(как в примере функции). Есть небольшой нюанс: так же можно применять символы подстановки: «*» и «?». Это очень удобно, если необходимо найти значения лишь по части строки. Например, можно не вводить полностью «Петров С.А», а ввести лишь фамилию и знак звездочки — «Петров*». Тогда будет выведена любая запись, которая начинается на «Петров». Если же надо найти запись, в которой в любом месте строки встречается фамилия «Петров», то можно указать так: «*петров*». Если хотите найти фамилию Петров и неважно какие инициалы будут у имени-отчества(если ФИО записаны в виде Иванов И.И.), то здесь в самый раз такой вид: «Иванов ?.?.».
      Часто необходимо для каждой строки указать свое значение(в столбце А Фамилии и надо их все найти). В таком случае всегда указываются ссылки на ячейки столбца А. Например, в ячейке A2 записано: Иванов. Так же известно, что Иванов есть в другой таблице, но после фамилии могут быть записаны и имя и отчество(или еще что-то). Но нам нужно найти только строку, которая начинается на фамилию. Тогда необходимо записать следующим образом: A2&»*». Эта запись будет равнозначна «Иванов*». В A2 записано Иванов, амперсанд(&) используется для объединения в одну строку двух текстовых значений. Звездочка в кавычках (как и положено быть тексту внутри формулы). Таким образом и получаем:
      A2&»*» =>
      «Иванов»&»*» =>
      «Иванов*»
      А полная формула в итоге будет выглядеть так: =ВПР(A2&»*»;Лист1!$A$1:$C$4;3;0)
      Очень удобно, если значений для поиска много.
      Если надо определить есть ли хоть где-то слово в строке, то звездочки ставим с обеих сторон: «*»&A1&»*»
    • Таблица(Лист1!$A$1:$C$4) — указывается диапазон ячеек, в первом столбце которых будет просматриваться аргумент Искомое_значение. Диапазон должен содержать данные от первой ячейки с данными до самой последней. Это не обязательно должен быть указанный в примере диапазон. Если строк 100, то Лист1!$A$2:$C$100. Диапазон в аргументе таблица всегда должен быть «закреплен», т.е. содержать знаки доллара($) перед названием столбцов и перед номерами строк(Лист1!$A$1:$C$4).
    • Номер_столбца(3) — указывается номер столбца в аргументе Таблица, значения из которого нам необходимо записать в итоговую ячейку в качестве результата. В примере это Дата принятия — т.е. столбец №3. Если бы нужен был отдел, то необходимо было бы указать номер столбца 2, а если бы нам понадобилось просто сравнить есть ли фамилии одной таблицы в другой, то можно было бы указать и 1. Номер столбца всегда указывается числом и не должен быть больше числа столбцов в аргументе Таблица.

      если аргумент Таблица имеет слишком большое кол-во столбцов и необходимо вернуть результат из последнего столбца, то совсем необязательно высчитывать их количество. Можно использовать формулу, которая подсчитывает количество столбцов в указанном диапазоне:  =ВПР($A2;Лист1!$A$1:$C$4;ЧИСЛСТОЛБ(Лист1!$A$1:$C$4);0). К слову в данном случае Лист1! тоже можно убрать, т.к. функция ЧИСЛОСТОЛБ просто подсчитывает количество столбцов в переданном ей диапазоне и неважно на каком он листе: =ВПР($A2;Лист1!$A$1:$C$4;ЧИСЛСТОЛБ($A$1:$C$4);0).

    • Интервальный_просмотр(0) — очень интересный аргумент. Может быть равен либо ИСТИНА либо ЛОЖЬ. Так же допускается указать 1 или 0. 1 = ИСТИНА, 0 = ЛОЖЬ. Если в ВПР указать данный параметр равный 0 или ЛОЖЬ, то будет происходить поиск точного соответствия заданному Искомому_значению. Это не имеет никакого отношения к знакам подстановки(«*» и «?»). Если же использовать 1 или ИСТИНА, то…Совсем в двух словах не объяснить. Если вкратце — ВПР будет искать наиболее похожее значение, подходящее под Искомомое_значение. Иногда очень полезно. Правда, если использовать данный параметр, то необходимо, чтобы список в аргументе Таблица был отсортирован по возрастанию. Обращаю внимание на то, что сортировка необходима только в том случае, если аргумент Интервальный_просмотр равен ИСТИНА или 1. Если же 0 или ЛОЖЬ — сортировка не нужна. Этот аргумент необходимо использовать осторожно — не стоит указывать 1 или ИСТИНА, если нужно найти точное соответствие и уж тем более не стоит использовать, если не понимаете принцип его работы.
      Подробнее про работу ВПР с интервальным просмотром, равным 1 или ИСТИНА можно ознакомиться в статье ВПР и интервальный просмотр(range_lookup)

    При работе с ВПР всегда важно помнить три вещи:
    • Таблица всегда должна начинаться с того столбца, в котором ищем Искомое_значение. Т.е. ВПР не умеет искать значение во втором столбце таблицы, а значение возвращать из первого. В лучшем случае ничего найдено не будет и получим ошибку #Н/Д(#N/A), а в худшем результат будет совсем не тот, который должен быть
    • аргумент Таблица должен быть «закреплен», т.е. содержать знаки доллара($) перед названием столбцов и перед номерами строк(Лист1!$A$1:$C$4). Это и есть закрепление(если точнее, то это называется абсолютной ссылкой на диапазон). Как это делается. Выделяете текст ссылки и жмете клавишу F4 до тех пор, пока не увидите, что и перед обозначением имени столбца и перед номером строки не появились доллары. Если этого не сделать, то при копировании формулы из одной ячейки в остальные аргумент Таблица будет «съезжать» и результат может быть совсем не таким, какой ожидался(в лучшем случае получите ошибку #Н/Д(#N/A)
    • номер_столбца не должен превышать общее кол-во столбцов в аргументе таблица, а сама Таблица соответственно должна содержать столбцы от первого(в котором ищем) до последнего(из которого необходимо возвращать значения). В примере указана Лист1!$A$1:$C$4 — всего 3 столбца(A, B, C). Значит не получится вернуть значение из столбца D(4), т.к. в таблице только три столбца. Т.е. если мы запишем формулу так: =ВПР($A2;Лист1!$A$1:$C$4;4;0) — мы получим ошибку #ССЫЛКА!(#REF!).
      Если аргументом Таблица указан диапазон $B$1:$C$4 и необходимо вернуть данные из столбца С, то правильно будет указать номер столбца 2. Т.к. аргумент Таблица($B$1:$C$4) содержит только два столбца — В и С. Если же попытаться указать номер столбца 3(каким по счету он является на листе), то получим ошибку #ССЫЛКА!(#REF!), т.к. третьего столбца в указанном диапазоне просто нет.

    Многие наверняка заметили, что на картинке у меня попутаны отделы для ФИО(в обеих таблицах ФИО относятся к разным отделам). Это не ошибка записи. В прилагаемом к статье примере показано, как можно одной формулой подставить и отделы и даты, не меняя вручную аргумент Номер_столбца: =ВПР($A2;Лист1!$A$1:$C$4;СТОЛБЕЦ();0). Такой подход сработает, если в обеих таблицах одинаковый порядок столбцов.


    Как избежать ошибки #Н/Д(#N/A) в ВПР?

     
    Еще частая проблема — многие не хотят видеть #Н/Д результатом, если совпадение не найдено. Это можно обойти при помощи специальных функций.
    Для пользователей Excel 2003 и старше:

    =ЕСЛИ(ЕНД(ВПР($A2;Лист1!$A$1:$C$4;3;0));»»;ВПР($A2;Лист1!$A$1:$C$4;3;0))
    =IF(ISNA(VLOOKUP($A2,Лист1!$A$1:$C$4,3,0)),»»,VLOOKUP($A2,Лист1!$A$1:$C$4,3,0))

    Теперь если ВПР не найдет совпадения, то ячейка будет пустой.
    А пользователям версий Excel 2007 и выше будет удобнее использовать функцию

    ЕСЛИОШИБКА(IFERROR)

    :

    =ЕСЛИОШИБКА(ВПР($A2;Лист1!$A$1:$C$4;3;0);»»)
    =IFERROR(VLOOKUP($A2,Лист1!$A$1:$C$4,3,0);»»)

    Подробнее про различие между использованием ЕСЛИ(ЕНД и ЕСЛИОШИБКА я разбирал в статье: Как в ячейке с формулой вместо ошибки показать 0
    Но я бы не рекомендовал использовать

    ЕСЛИОШИБКА(IFERROR)

    , не убедившись, что ошибки появляются только для реально отсутствующих значений. Иногда ВПР может вернуть #Н/Д и в других ситуациях:

    • искомое значение состоит более чем из 255 символов(решение этой проблемы приведено ниже в этой статье: Работа с критериями длиннее 255 символов)
    • искомое значение является числом с большим кол-вом знаков после запятой. Excel не может правильно воспринимать такие числа и в итоге ВПР может вернуть ошибку. Правильным решением здесь будет округлить искомое значение хотя бы до 4-х или 5-ти знаков после запятой(конечно, если это допустимо):
      =ВПР(ОКРУГЛ($A2;5);Лист1!$A$1:$C$4;3;0)
      =VLOOKUP(ROUND($A2,2),Лист1!$A$1:$C$4,3,0)
    • искомое значение содержит специальные или непечатаемые символы.
      В этом случае придется либо избавиться от непечатаемых символов в искомом аргументе:
      =ВПР(ПЕЧСИМВ($A2);Лист1!$A$1:$C$4;3;0)
      =VLOOKUP(CLEAN($A2),Лист1!$A$1:$C$4,3,0)
      либо добавить перед всеми специальными символами(такими как звездочка или вопр.знак) знак тильды(~), чтобы сделать эти знаки просто знаками, а не знаками специального значения(так же работа со специальными(служебными) символами описывалась в статье: Как заменить/удалить/найти звездочку). Добавить символ перед знаком той же тильды можно при помощи функции ПОДСТАВИТЬ(SUBSTITUTE):
      =ВПР(ПОДСТАВИТЬ($A2;»~»;»~~»);Лист1!$A$1:$C$4;3;0)
      =VLOOKUP(SUBSTITUTE(A2,»~»,»~~»),Лист1!$A$1:$C$4,3,0)
      Если необходимо добавить тильду сразу перед несколькими знаками, то делает это обычно так(на примере подстановки одновременно для тильды и звездочки):
      =ВПР(ПОДСТАВИТЬ(ПОДСТАВИТЬ($A2;»~»;»~~»);»*»;»~*»);Лист1!$A$1:$C$4;3;0)
      =VLOOKUP(SUBSTITUTE(SUBSTITUTE(A2,»~»,»~~»),»*»,»~*»),Лист1!$A$1:$C$4,3,0)

    Как при помощи ВПР искать значение по строке, а не столбцу?

     
    На самом деле ответ будет коротким — ВПР всегда ищет сверху вниз. Слева направо она не умеет. Но зато слева направо умеет искать её сестра ГПР(HLookup) — Горизонтальный

    ПР

    осмотр.
    ГПР ищет заданное значение(аргумент

    искомое_значение

    ) в первой строке указанного диапазона(аргумент

    таблица

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

    #Н/Д(#N/A)

    .
    Если надо найти значение «Иванов» в строке 2 и вернуть значение из строки 5 в таблице

    A2:H10

    , то формула будет выглядеть так:

    =ГПР(«Иванов»;$A$2:$H$10;5;0)
    =HLOOKUP(«Иванов»,$A$2:$H$10,5,0)

    Все правила и синтаксис функции точно такие же, как у ВПР:
    -в искомом значении можно применять символы астерикса(*) и вопр.знака(?) — «Иванов*»;
    -таблица должна быть закреплена —

    $A$2:$H$10

    ;
    -интервальный просмотр работает по тому же принципу(0 или ЛОЖЬ точный просмотр слева-направо, 1 или ИСТИНА — интервальный).


    Решение при помощи ПОИСКПОЗ

     
    Общий принцип работы

    ПОИСКПОЗ(MATCH)

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

    Искомое_значение

    в аргументе

    Просматриваемый_массив

    и в качестве результата выдает номер позиции найденного значения в

    Просматриваемом_массиве

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

    =ПОИСКПОЗ($A2;Лист1!$A$1:$A$4;0)
    =MATCH($A2,Лист1!$A$1:$A$4,0)

    • Искомое_значение($A2) — непосредственно значение или ссылка на ячейку с искомым значением. Если опираться на пример выше — то это ФИО. Здесь все ровно так же, как и с ВПР. Так же допустимы символы подстановки * и ? и ровно в таком же исполнении.
    • Просматриваемый_массив(Лист1!$A$1:$A$4) — указывается ссылка на столбец, в котором необходимо найти искомое значение. В отличии от той же ВПР, где указывается целая таблица, это должен быть именно один столбец, в котором мы собираемся искать Искомое_значение. Если попытаться указать более одного столбца, то функция вернет ошибку.Справедливости ради надо отметить, что можно указать либо столбец, либо строку
    • Тип_сопоставления(0) — то же самое, что и Интервальный_просмотр в ВПР. С теми же особенностями. Отличается разве что возможностью поиска наименьшего от искомого или наибольшего.

    С основным разобрались. Но ведь нам надо вернуть не номер позиции, а само значение. Значит ПОИСКПОЗ в чистом виде нам не подходит. По крайней мере одна, сама по себе. Но если её использовать вместе с функцией ИНДЕКС(INDEX)(которая возвращает из указанного диапазона значение на пересечении заданных строки и столбца) — то это то, что нам нужно и даже больше.
    =ИНДЕКС(Лист1!$A$1:$C$4;ПОИСКПОЗ($A2;Лист1!$A$1:$A$4;0);2)
    Такая формула результатом вернет то же, что и ВПР.

    Аргументы функции ИНДЕКС
    Массив(Лист1!$A$2:$C$4). В качестве этого аргумента мы указываем диапазон, из которого хотим получить значения. Может быть как один столбец, так и несколько. В случае, если столбец один, то последний аргумент функции указывать не обязательно или он всегда будет равен 1(столбец-то всего один). К слову — данный аргумент может совершенно не совпадать с тем, который мы указываем в аргументе Просматриваемый_массив функции ПОИСКПОЗ.

    Далее идут Номер_строки и Номер_столбца. Именно в качестве Номера_строки мы и подставляем ПОИСКПОЗ, которая возвращает нам номер позиции в массиве. На этом все и строится. ИНДЕКС возвращает значение из Массива, которое находится в указанной строке(Номер_строки) Массива и указанном столбце(Номер_столбца), если столбцов более одного. Важно знать, что в данной связке кол-во строк в аргументе Массив функции ИНДЕКС и кол-во строк в аргументе Просматриваемый_массив функции ПОИСКПОЗ должно совпадать. И начинаться с одной и той же строки. Это в обычных случаях, если не преследуются иные цели.
    Так же как и в случае с ВПР, ИНДЕКС в случае не нахождения искомого значения возвращает #Н/Д. И обойти подобные ошибки можно так же:
    Для всех версий Excel(включая 2003 и раньше):
    =ЕСЛИ(ЕНД(ПОИСКПОЗ($A2;Лист1!$A$1:$A$4;0));»»;ИНДЕКС(Лист1!$A$1:$C$4;ПОИСКПОЗ($A2;Лист1!$A$2:$A$4;0);2))
    Для версий 2007 и выше:
    =ЕСЛИОШИБКА(ИНДЕКС(Лист1!$A$1:$C$4;ПОИСКПОЗ($A2;Лист1!$A$1:$A$4;0);2);»»)


    Работа с критериями длиннее 255 символов

     
    Есть у ИНДЕКС-ПОИСКПОЗ и еще одно преимущество перед ВПР. Дело в том, что ВПР не может искать значения, длина строки которых содержит более 255 символов. Это случается редко, но случается. Можно, конечно, обмануть ВПР и урезать критерий:

    =ВПР(ПСТР($A2;1;255);ПСТР(Лист1!$A$1:$C$4;1;255);3;0)

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

    Поэтому лучше использовать такую хитрую формулу:
    =ИНДЕКС(Лист1!$A$1:$C$4;СУММПРОИЗВ(ПОИСКПОЗ(ИСТИНА;Лист1!$A$1:$A$4=$A2;0));2)
    Здесь я в формулах использовал одинаковые диапазоны для удобочитаемости, но в примере для скачивания они различаются от указанных здесь.
    Сама формула построена на возможности функции СУММПРОИЗВ преобразовывать в массивные вычисления некоторых функций внутри неё. В данном случае ПОИСКПОЗ ищет позицию строки, в которой критерий равен значению в строке. Подстановочные символы здесь применить уже не получится.


    Ну и все же я рекомендовал бы Вам прочитать подробнее про данные функции в справке.

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

    Скачать пример

      Tips_All_VLookUp.xls (26,0 KiB, 17 435 скачиваний)

    Так же см.:
    ВПР и интервальный просмотр(range_lookup)
    ВПР по двум и более критериям
    ВПР с возвратом всех значений
    ВПР с поиском по нескольким листам
    ВПР_МН
    ВПР_ВСЕ_КНИГИ
    Как заменить/удалить/найти звездочку?


    Статья помогла? Поделись ссылкой с друзьями!

      Плейлист   Видеоуроки


    Поиск по меткам

    

    Access
    apple watch
    Multex
    Power Query и Power BI
    VBA управление кодами
    Бесплатные надстройки
    Дата и время
    Записки
    ИП
    Надстройки
    Печать
    Политика Конфиденциальности
    Почта
    Программы
    Работа с приложениями
    Разработка приложений
    Росстат
    Тренинги и вебинары
    Финансовые
    Форматирование
    Функции Excel
    акции MulTEx
    ссылки
    статистика

    Ссылка на это место страницы:
    #title

    1. Получить первое не пустое значение в списке
    2. Получить первое текстовое значение в списке
    3. Получить первое текстовое значение с ГПР
    4. Получить позицию последнего совпадения
    5. Получить последнее совпадение содержимого ячейки
    6. Получить n-е совпадение
    7. Получить n-ое совпадение с ИНДЕКС/ПОИСКПОЗ
    8. Получить n-ое совпадение с ВПР
    9. Если ячейка содержит одну из многих вещей
    10. Поиск первой ошибки
    11. Поиск следующего наибольшего значения
    12. Несколько совпадений в списке, разделенных запятой
    13. Частичное совпадение чисел с шаблоном
    14. Частичное совпадение с ВПР
    15. Положение первого частичного совпадения
    16. Скачать файл

    Ссылка на это место страницы:
    #punk01

    { = ИНДЕКС( диапазон ; ПОИСКПОЗ( ЛОЖЬ; ЕПУСТО ( диапазон ); 0 )) }

    { = INDEX( диапазон ; MATCH( FALSE; ISBLANK ( диапазон ); 0 )) }

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

    В данном примере мы используем эту формулу:

    { = ИНДЕКС( B3: B11; ПОИСКПОЗ( ЛОЖЬ; ЕПУСТО ( B3: B11 ); 0 )) }

    { = INDEX( B3:B11; MATCH( FALSE; ISBLANK ( B3:B11 ); 0 )) }

    Таким образом, суть проблемы заключается в следующем: мы хотим получить первую не пустую ячейку, но для этого нет конкретной формулы в Excel. Мы могли бы использовать ВПР с шаблоном *, но это будет работать только для текста, а не для чисел.

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

    Работая изнутри, ЕПУСТО оценивает ячейки в диапазоне В3: В11 и возвращает результат и массив, который выглядит следующим образом:

    {ИСТИНА; ЛОЖЬ; ИСТИНА; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА}

    Каждая ЛОЖЬ представляет собой ячейку в диапазоне, который не является пустой.

    Далее, ПОИСКПОЗ ищет ЛОЖЬ внутри массива и возвращает позицию первого наденного совпадения, в этом случае 2. На данный момент, формула в примере теперь выглядит следующим образом:

    { = ИНДЕКС( B3: B11; 2; 0 )) }

    { = INDEX( B3:B11; 2; 0 )) }

    И, наконец, функция ИНДЕКС выводит значение в положении 2 в массиве, в этом случае число 10.

    Ссылка на это место страницы:
    #punk02

    = ВПР ( «*»; диапазон; 1; ЛОЖЬ)

    = VLOOKUP ( «*»; диапазон; 1; FALSE)

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

    В данном примере формула в D7 является:

    = ВПР ( «*» ; B5: B11 ; 1 ; ЛОЖЬ)

    = VLOOKUP ( «*» ; B5:B11 ; 1 ; FALSE)

    Групповой символ звездочка (*) соответствует любому текстовому значению.

    Ссылка на это место страницы:
    #punk03

    = ГПР ( «*»; диапазон; 1; ЛОЖЬ)

    = HLOOKUP ( «*»; диапазон; 1; FALSE)

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

    = ГПР ( «*»; диапазон; 1; ЛОЖЬ)

    = HLOOKUP ( «*»; диапазон; 1; FALSE)

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

    Ссылка на это место страницы:
    #punk04

    = ГПР ( «*»; диапазон; 1; ЛОЖЬ)

    = HLOOKUP ( «*»; диапазон; 1; FALSE)

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

    =МАКС(ЕСЛИ(B4:B11=G5;СТРОКА(B4:B11)-СТРОКА(ИНДЕКС(B4:B11;1;1))+1))

    =MAX(IF(B4:B11=G5;ROW(B4:B11)-ROW(INDEX(B4:B11;1;1))+1))

    Суть этой формулы состоит в том, что мы строим список номеров строк для данного диапазона, соответствующие по значению, а затем используем функцию MAКС, чтобы получить наибольшее количество строк, что соответствует последнему значению соответствия.

    Ссылка на это место страницы:
    #punk05

    =МАКС(ЕСЛИ(B4:B11=G5;СТРОКА(B4:B11)-СТРОКА(ИНДЕКС(B4:B11;1;1))+1))

    =MAX(IF(B4:B11=G5;ROW(B4:B11)-ROW(INDEX(B4:B11;1;1))+1))

    Чтобы проверить ячейку для одной из нескольких вещей, и вернуть последнее совпадение, найденное в списке, вы можете использовать формулу, основанную на ПРОСМОТР и ПОИСК функций. В случае нескольких найденных совпадений, формула вернет последнее совпадение из списка «вещей».

    =ПРОСМОТР(2;1/ПОИСК($E$4:$E$7;B4);$E$4:$E$7)

    =LOOKUP(2;1/SEARCH($E$4:$E$7;B4);$E$4:$E$7)

    Ссылка на это место страницы:
    #punk06

    = НАИМЕНЬШИЙ( ЕСЛИ( логический тест; СТРОКА( список ) — МИН( СТРОКА( список )) + 1 ); n )

    = SMALL( IF( логический тест; СТРОКА( список ) — MIN( ROW( список )) + 1 ); n )

    Для того, чтобы получить позицию n-го совпадения (например, второе значение соответствия заданному, третье значение соответствия и т.д.), вы можете использовать формулу, основанную на функции НАИМЕНЬШИЙ.

    = НАИМЕНЬШИЙ( ЕСЛИ( список = E5 ; СТРОКА( список ) — МИН( СТРОКА( список )) + 1 ); F5 )

    = SMALL( IF( список = E5 ; ROW( список ) — MIN( ROW( список )) + 1 ); F5 )

    Эта формула возвращает позицию второго появления «красных» в списке.

    Сутью этой формулы является функция НАИМЕНЬШИЙ, которая просто возвращает n-е наименьшее значение в списке значений, которое соответствует номеру строки. Номера строк были «отфильтрованы» функцией ЕСЛИ, которая применяет логику для совпадения.

    Ссылка на это место страницы:
    #punk07

    { = ИНДЕКС( массив; НАИМЕНЬШИЙ( ЕСЛИ( величины = знач ; СТРОКА ( величины ) — СТРОКА ( ИНДЕКС( величины; 1 ; 1 )) + 1 ); n-й )) }

    { = INDEX( массив; SMALL( IF( величины = знач ; ROW ( величины ) — ROW ( INDEX( величины; 1 ; 1 )) + 1 ); n-й )) }

    Эта формула возвращает позицию второго появления «красных» в списке.

    Сутью этой формулы является функция НАИМЕНЬШИЙ, которая просто возвращает n-е наименьшее значение в списке значений, которое соответствует номеру строки. Номера строк были «отфильтрованы» функцией ЕСЛИ, которая применяет логику для совпадения.

    Ссылка на это место страницы:
    #punk08

    = ВПР( id_формулы; стол; 4; 0 )

    = VLOOKUP( id_формулы; стол; 4; 0 )

    Чтобы получить n-ое совпадение с ВПР, вам необходимо добавить вспомогательный столбец в таблицу , которая строит уникальный идентификатор , который включает счетчик.

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

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

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

    =ВПР(J3&»-«&I6;B4:G11;4;0)

    =VLOOKUP(J3&»-«&I6;B4:G11;4;0)

    Ссылка на это место страницы:
    #punk09

    { = ИНДЕКС( результаты ;ПОИСКПОЗ( ИСТИНА ; ЕЧИСЛО( ПОИСК( вещи ; A1 )); 0 )) }

    { = INDEX( результаты ;MATCH( TRUE ; ISNUMBER( SEARCH( вещи ; A1 )); 0 )) }

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

    { = ИНДЕКС( результаты ; ПОИСКПОЗ( ИСТИНА ; ЕЧИСЛО( ПОИСК ( вещи ; B5 )); 0 )) }

    = INDEX( результаты ; MATCH( TRUE ; ISNUMBER( SEARCH ( вещи ; B5 )); 0 ))

    Эта формула использует два названных диапазона: E5: E8 называется «вещи» и F5: F8 называется «Результаты». Убедитесь, что вы используете диапазоны имен с одинаковыми именами (на основе ваших данных). Если вы не хотите использовать именованные диапазоны, используйте абсолютные ссылки вместо этого.

    Ссылка на это место страницы:
    #punk10

    { = ПОИСКПОЗ( ИСТИНА ; ЕОШИБКА(диап ); 0 ) }

    { = MATCH( TRUE ; ISERROR(диап ); 0 ) }

    Если вам нужно найти первую ошибку в диапазоне ячеек, вы можете использовать формулу массива, основанную на ПОИСКПОЗ и ЕОШИБКА функциях.

    В приведенном примере формула:

    { = ПОИСКПОЗ( ИСТИНА ; ЕОШИБКА( B4: B11 ); 0 ) }

    { = MATCH( TRUE ; ISERROR( B4:B11 ); 0 ) }

    Работая изнутри, функция ЕОШИБКА возвращает значение ИСТИНА, если значение является признанной ошибкой, и ЛОЖЬ, если нет.

    Когда дается диапазон ячеек (массив ячеек) функция ЕОШИБКА будет возвращать массив истина/ложь значений. В примере, это результирующий массив выглядит следующим образом:

    {ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ЛОЖЬ; ЛОЖЬ}

    Обратите внимание, что 6-е значение (что соответствует 6-й ячейке в диапазоне) истинно, так как ячейка В9 содержит #Н/A.

    Ссылка на это место страницы:
    #punk11

    =ИНДЕКС ( данные; ПОИСКПОЗ( поиск ; значения ) + 1 )

    =INDEX ( данные; MATCH( поиск ; значения ) + 1 )

    Для того, чтобы найти «следующее наибольшее» значение в справочной таблице, можно использовать формулу, основанную на ИНДЕКС и ПОИСКПОЗ. В примере формула в F6 является:

    =ИНДЕКС ( данные; ПОИСКПОЗ( поиск ; значения ) + 1 )

    =INDEX ( данные; MATCH( поиск ; значения ) + 1 )

    Ссылка на это место страницы:
    #punk12

    { = ОБЪЕДИНИТЬ ( «;» ; ИСТИНА ; ЕСЛИ( диапазон1 = E5 ; диапазон2 ; «» )) }

    { = ОБЪЕДИНИТЬ ( «;» ; TRUE ; IF( диапазон1 = E5 ; диапазон2 ; «» )) }

    Для поиска и извлечения нескольких совпадений, разделенных запятыми (в одной ячейке), вы можете использовать функцию ЕСЛИ с функцией ОБЪЕДИНИТЬ.

    { = ОБЪЕДИНИТЬ( «;» ; ИСТИНА ; ЕСЛИ( группа = E5 ; имя ; «» )) }

    Эта формула использует «имя» — именованный диапазон (B5: B11) и «группа» — (C5: C11).

    Ссылка на это место страницы:
    #punk13

    { = ПОИСКПОЗ( «*» & номер & «*» ; ТЕКСТ( диапазон ; «0» ); 0 ) }

    { = MATCH( «*» & номер & «*» ; TEXT( диапазон ; «0» ); 0 ) }

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

    Excel поддерживает символы подстановки «*» и «?». Тем не менее, если вы используете специальные символы с номером, вы будете преобразовывать числовое значение в текстовое значение. Другими словами, «*» & 99 & «*» = «* 99 *» (текстовая строка).

    Если попытаться найти текстовое значение в диапазоне чисел, совпадение завершится неудачно.

    Одно из решений заключается в преобразовании чисел в диапазоне поиска для текстовых значений, а затем сделать нормальный поиск с ПОИСКПОЗ, ВПР и т.д.

    Другой способ, чтобы преобразовать числа в текст, чтобы сцепить пустую строку. Эта формула работает так же, как выше формуле:

    = ПОИСКПОЗ ( «*» & Е5 & «*» ; В5: В10 & «» ; 0 )

    = MATCH ( «*» & Е5 & «*» ; В5: В10 & «» ; 0 )

    Ссылка на это место страницы:
    #punk14

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

    В примере формула ВПР выглядит следующим образом:

    =ВПР($H$2&»*»;$B$3:$E$12;2;0)

    =VLOOKUP($H$2&»*»;$B$3:$E$12;2;0)

    В этой формуле, значение представляет собой именованный диапазон, который относится к Н2, а также данные , представляет собой именованный диапазон , который относится к B3: E102. Без названных диапазонов, формула может быть записана следующим образом:

    Ссылка на это место страницы:
    #punk15

    = ПОИСКПОЗ ( «* текст *» ; диапазон; 0 )

    = MATCH ( «* текст *» ; диапазон; 0 )

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

    =ПОИСКПОЗ(«*»&E6&»*»;B5:B10;0)

    =MATCH(«*»&E6&»*»;B5:B10;0)

    Функция ПОИСКПОЗ возвращает позицию или «индекс» в первом совпадении на основании значения поиска в диапазоне.

    ПОИСКПОЗ поддерживает подстановочное согласование со звездочкой «*» (один или несколько символов) или знаком вопроса «?» (один символ), но только тогда, когда третий аргумент, тип_сопоставления, установлен в ЛОЖЬ или ноль.

    Ссылка на это место страницы:
    #punk16

    Файлы статей доступны только зарегистрированным пользователям.

    1. Введите свою почту

    2. Нажмите Зарегистрироваться

    3. Обновите страницу
    Вместо этого блока появится ссылка для скачивания материалов.

    Привет! Меня зовут Дмитрий. С 2014 года Microsoft Cretified Trainer. Вместе с командой управляем этим сайтом. Наша цель — помочь вам эффективнее работать в Excel. 

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

    Подписывайтесь на нас в соц.сетях:

    Понравилась статья? Поделить с друзьями:

    А вот еще интересные статьи:

  • Excel как найти совпадение текста
  • Excel как найти слагаемые
  • Excel как найти скрытую строку
  • Excel как найти символ в тексте
  • Excel как найти середину

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии