Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Описание
В этой статье приведены пошаговые инструкции по поиску данных в таблице (или диапазоне ячеек) с помощью различных встроенных функций 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 чаще всего вы будете искать вертикально в столбцах или горизонтально в строках. Но иногда вам нужно просматривать сразу два условия – как строки, так и столбцы. Другими словами, вы стремитесь найти значение на пересечении определенной строки и столбца. Это называется матричным поиском (также известным как двумерный или поиск в диапазоне). Далее показано, как это можно сделать различными способами.
- Поиск в массиве при помощи ИНДЕКС ПОИСКПОЗ
- Формула ВПР и ПОИСКПОЗ для поиска в диапазоне
- Функция ПРОСМОТРX для поиска в строках и столбцах
- Формула СУММПРОИЗВ для поиска по строке и столбцу
- Поиск в матрице с именованными диапазонами
Поиск в массиве при помощи ИНДЕКС ПОИСКПОЗ
Самый популярный способ выполнить двусторонний поиск в Excel — использовать комбинацию ИНДЕКС с двумя ПОИСКПОЗ. Это разновидность классической формулы ПОИСКПОЗ ИНДЕКС , к которой вы добавляете еще одну функцию ПОИСКПОЗ, чтобы получить номера строк и столбцов:
ИНДЕКС( массив_данных ; ПОИСКПОЗ( значение_вертикальное ; диапазон_поиска_столбец ; 0), ПОИСКПОЗ( значение_горизонтальное ; диапазон_поиска_строка ; 0))
В этом способе, как и во всех остальных, мы используем поиск по двум условиям. Первое из них должно обнаружить совпадение в определенном столбце (в заголовках строк), а второе – в определенной строке (то есть, в заголовках столбцов). В результате мы имеем строку и столбец, которые соответствуют заданным условиям. А на пересечении их как раз и будут находиться искомые данные.
В качестве примера составим формулу для получения количества проданного товара за определённый период времени из таблицы, которую вы можете видеть ниже. Для начала определим все аргументы:
- Массив_данных — B2:E11 (ячейки данных, не включая заголовки строк и столбцов)
- Значение_вертикальное — H1 (целевой товар)
- Диапазон_поиска_столбец – A2:A11 (заголовки строк: названия напитков)
- Значение_горизонтальное — H2 (целевой период)
- Диапазон_поиска_строка — B1:E1 (заголовки столбцов: временные периоды)
Соедините все аргументы вместе, и вы получите следующую формулу для поиска числа в диапазоне:
=ИНДЕКС(B2:E11; ПОИСКПОЗ(H1;A2:A11;0); ПОИСКПОЗ(H2;B1:E1;0))
Как работает эта формула?
Хотя на первый взгляд это может показаться немного сложным, логика здесь простая. Функция ИНДЕКС извлекает значение из массива данных на основе номеров строк и столбцов, а две функции ПОИСКПОЗ предоставляют ей эти номера:
ИНДЕКС( B2:E11; номер_строки ; номер_столбца )
Здесь мы используем способность ПОИСКПОЗ возвращать относительную позицию значения в искомом массиве .
Итак, чтобы получить номер строки, мы ищем нужный нам товар (H1) в заголовках строк (A2:A11):
ПОИСКПОЗ(H1;A2:A11;0)
Чтобы получить номер столбца, мы ищем нужную нам неделю (H2) в заголовках столбцов (B1:E1):
ПОИСКПОЗ(H2;B1:E1;0)
В обоих случаях мы ищем точное совпадение, присваивая третьему аргументу значение 0.
В этом примере первое ПОИСКПОЗ возвращает 2, потому что нужный товар (Sprite) находится в ячейке A3, которая является второй по счёту в диапазоне A2:A11. Второй ПОИСКПОЗ возвращает 3, так как «Неделя 3» находится в ячейке D1, которая является третьей ячейкой в B1:E1.
С учетом вышеизложенного формула сводится к:
ИНДЕКС(B2:E11; 2 ; 3 )
Она возвращает число на пересечении второй строки и третьего столбца в матрице B2:E4, то есть в ячейке D3.
Думаю, вы понимаете, что аналогичным образом можно производить поиск в двумерном массиве Excel не только числа, но и текста. Тип данных здесь не имеет значения.
Формула ВПР и ПОИСКПОЗ для поиска в диапазоне
Другой способ выполнить матричный поиск в Excel — использовать комбинацию функций ВПР и ПОИСКПОЗ:
ВПР( значение_вертикальное ; массив_данных ; ПОИСКПОЗ( значение_горизонтальное , диапазон_поиска_строка , 0), ЛОЖЬ)
Для нашего образца таблицы формула принимает следующий вид:
=ВПР(H1; A2:E11; ПОИСКПОЗ(H2;A1:E1;0); ЛОЖЬ)
Где:
- Массив_данных — B2:E11 (ячейки данных, не включая заголовки строк и столбцов)
- Значение_вертикальное — H1 (целевой товар)
- Значение_горизонтальное — H2 (целевой период)
- Диапазон_поиска_строка — А1:E1 (заголовки столбцов: временные периоды)
Основой формулы является функция ВПР, настроенная на точное совпадение (последний аргумент имеет значение ЛОЖЬ). Она ищет заданное значение (H1) в первом столбце массива (A2:E11) и возвращает данные из другого столбца в той же строке. Чтобы определить, из какого столбца вернуть значение, вы используете функцию ПОИСКПОЗ, которая также настроена на точное совпадение (последний аргумент равен 0):
ПОИСКПОЗ(H2;A1:E1;0)
ПОИСКПОЗ ищет текст из H2 в заголовках столбцов (A1:E1) и указывает относительное положение найденной ячейки. В нашем случае нужная неделя (3-я) находится в D1, которая является четвертой по счету в массиве поиска. Итак, число 4 идет в аргумент номер_столбца функции ВПР:
=ВПР(H1; A2:E11; 4; ЛОЖЬ)
Далее ВПР находит точное совпадение H1 со значением в A3 и возвращает значение из 4-го столбца в той же строке, то есть из ячейки D3.
Важное замечание! Чтобы формула работала корректно, диапазон_поиска (A2:E11) функции ВПР и диапазон_поиска (A1:E1) функции ПОИСКПОЗ должны иметь одинаковое количество столбцов. Иначе число, переданное в номер_столбца, будет неправильным (не будет соответствовать положению столбца в массиве данных).
Функция ПРОСМОТРX для поиска в строках и столбцах
Недавно Microsoft представила еще одну функцию в Excel, которая призвана заменить все существующие функции поиска, такие как ВПР, ГПР и ИНДЕКС+ПОИСКПОЗ. Помимо прочего, ПРОСМОТРX может смотреть на пересечение определенной строки и столбца:
ПРОСМОТРX( значение_вертикальное ; диапазон_поиска_столбец ; ПРОСМОТРX( значение_горизонтальное ; диапазон_поиска_строка ; массив_данных ))
Для нашего примера набора данных формула выглядит следующим образом:
=ПРОСМОТРX(H1; A2:A11; ПРОСМОТРX(H2; B1:E1; B2:E11))
Примечание. В настоящее время ПРОСМОТРX — это функция, доступная только подписчикам Office 365 и более поздних версий.
В формуле используется функция ПРОСМОТРX для возврата всей строки или столбца. Внутренняя функция ищет целевой период времени в строке заголовка и возвращает все значения для этой недели (в данном примере для 3-й). Эти значения переходят в аргумент возвращаемый_массив внешнего ПРОСМОТРX:
=ПРОСМОТРX(H1; A2:A11; {544:87:488:102:87:433:126:132:111:565})
Внешняя функция ПРОСМОТРX ищет нужный товар в заголовках столбцов и извлекает значение из той же позиции из возвращаемого_массива.
Формула СУММПРОИЗВ для поиска по строке и столбцу
Функция СУММПРОИЗВ чрезвычайно универсальна — она может делать множество вещей, выходящих за рамки ее предназначения, особенно когда речь идет об оценке нескольких условий.
Чтобы найти значение на пересечении определенных строки и столбца, используйте эту общую формулу:
СУММПРОИЗВ ( диапазон_поиска_столбец = значение_вертикальное ) * ( диапазон_поиска_строка = значение_горизонтальное), массив_данных )
Чтобы выполнить поиск данных в массиве по строке и столбцу в нашем наборе данных, формула выглядит следующим образом:
=СУММПРОИЗВ((A2:A11=H1)*(B1:E1=H2); B2:E11)
Приведенный ниже вариант также будет работать:
=СУММПРОИЗВ((A2:A11=H1)*(B1:E1=H2)*B2:E11)
Теперь поясним подробнее. В начале мы сравниваем два значения поиска с заголовками строк и столбцов (целевой товар в H1 со всеми наименованиями в A2: A11 и целевой период времени в H2 со всеми неделями в B1: E1):
(A2:A11=H1)*(B1:E1=H2)
Это дает нам два массива значений ИСТИНА и ЛОЖЬ, где ИСТИНА означает совпадения:
{ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ}) * ({ЛОЖЬ;ЛОЖЬ;ИСТИНА;ЛОЖЬ}
Операция умножения преобразует значения ИСТИНА и ЛОЖЬ в 1 и 0 и создает матрицу из 4 столбцов и 10 строк (строки разделяются двоеточием, а каждый столбец данных — точкой с запятой):
{0;0;0;0:0;0;1;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0}
Функция СУММПРОИЗВ умножает элементы приведенного выше массива на элементы B2:E4, находящихся в тех же позициях:
{0;0;0;0:0;0;1;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0; 0;0:0;0;0;0:0;0;0;0:0;0;0;0} * {455;345;544;366:65;77;87;56:766; 655;488;865:129;66;102;56:89;141;87;89:566;511;433;522:154; 144;126; 162:158;165;132;155:112;143;111; 125:677;466;565;766})
И поскольку умножение на ноль дает в результате ноль, остается только элемент, соответствующий 1 в первом массиве:
=СУММПРОИЗВ({0;0;0;0:0;0;87;0:0;0;0;0:0;0;0;0:0;0;0;0:0; 0;0;0:0;0;0;0:0;0;0;0:0;0;0;0:0;0;0;0})
Наконец, СУММПРОИЗВ складывает все элементы результирующего массива и возвращает значение 87.
Примечание . Если в вашей таблице несколько заголовков строк и/или столбцов с одинаковыми именами, итоговый массив будет содержать более одного числа, отличного от нуля. И все эти числа будут суммированы. В результате вы получите сумму значений, удовлетворяющую обоим критериям. Это то, что отличает формулу СУММПРОИЗВ от ПОИСКПОЗ и ВПР, которые возвращают только первое найденное совпадение.
Поиск в матрице с именованными диапазонами
Еще один достаточно простой способ поиска в массиве в Excel — использование именованных диапазонов. Рассмотрим пошагово:
Шаг 1. Назовите столбцы и строки
Самый быстрый способ назвать каждую строку и каждый столбец в вашей таблице:
- Выделите всю таблицу (в нашем случае A1:E11).
- На вкладке « Формулы » в группе « Определенные имена » щелкните « Создать из выделенного » или нажмите комбинацию клавиш Ctrl + Shift + F3.
- В диалоговом окне « Создание имени из выделенного » выберите « в строке выше » и « в столбце слева» и нажмите «ОК».
Это автоматически создает имена на основе заголовков строк и столбцов. Однако есть пара предостережений:
- Если ваши заголовки столбцов и/или строк являются числами или содержат определенные символы, которые не разрешены в именах Excel, то имена для таких столбцов и строк не будут созданы. Чтобы просмотреть список созданных имен, откройте Диспетчер имен (
Ctrl + F3
). Если некоторые имена отсутствуют, определите их вручную. - Если некоторые из ваших заголовков строк или столбцов содержат пробелы, то они будут заменены символами подчеркивания, например, Неделя_1.
Шаг 2. Создание формулы поиска по матрице
Чтобы получить значение из матрицы на пересечении определенной строки и столбца, просто введите одну из следующих общих формул в пустую ячейку:
=имя_строки имя_столбца
Или наоборот:
=имя_столбца имя_строки
Например, чтобы получить продажу Sprite в 3-й неделе, используйте выражение:
=Sprite неделя_3
То есть, имена диапазонов здесь разделены пробелом, который в данном случае является оператором пересечения массивов.
Если кому-то нужны более подробные инструкции, опишем весь процесс пошагово:
- В ячейке, в которой вы хотите отобразить результат, введите знак равенства (=).
- Начните вводить имя целевой строки, Sprite. После того, как вы введете пару символов, Excel отобразит все существующие имена, соответствующие вашему вводу. Дважды щелкните нужное имя, чтобы ввести его в формулу.
- После имени строки введите пробел , который в данном случае работает как оператор пересечения.
- Введите имя целевого столбца ( в нашем случае неделя_3 ).
- Как только будут введены имена строки и столбца, Excel выделит соответствующую строку и столбец в вашей таблице, и вы нажмете Enter, чтобы завершить ввод:
Ваш поиск нужной ячейки в массиве выполнен, найден результат 87.
Вот какими способами можно выполнять поиск в массиве значений – в строках и столбцах таблицы 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
как вы предполагаете, сможете легко модифицировать с номерами рабочего в первом аргументе Нужна автоматическая выборка
с округлением диапазон размеров, то они
- мы ищем товар функцией втором аргументе указана возвращает номер столбца на против строки
- соответствует выше описанным.
- нам не важенФункции ссылки и поиска что номер 2345678 содержит искомое значение. их под множество листа Excel. В – A6:A18) значения данных по условию. поиска — а
- должны автоматически округлиться (столбец с товарами
- ВПР (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) по
- Решение для серой ячейки мы должны определить параметру, т.е. в части у нас столбца из определенного
- B4:G15. поискового запроса, то
- которые начинаются или ПОИСК(), на номер повторяющимися значениями. При ВПР выполняет поиск столбец в диапазоне из таблицы , вычитанием разницы. Например, наша исходная таблица
- Допустим мы хотим строчкам и по
- будет практически полностью порядковый номер столбца
Принцип действия формулы поиска значения в столбце 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) выдаст, например, для совпадению сразу двух
определенному месяцу (Июню). хранятся названия месяцев строке Товар 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
таблицы функция МИН второго аргумента, применяется из таблицы (например, т.е. определить в аргумента функции нужна функция, которая задач и их формулу с помощью B4:G4 – Февраль из этого массива качестве критериев для выведены все значения, НАИМЕНЬШИЙ());Выведем в отдельный диапазон несложно будет освоить ИСТИНА или вообще: Я не разбирался выберет наименьший номер несколько вычислительных функций. текстовых), из которых первом примере городВПР (VLOOKUP) — Интервального умеет выдавать содержимое
решения. функций ИНДЕКС и (второй месяц).
максимальное число и
поиска соответствующего месяца.
которые заканчиваются илиФункция НАИМЕНЬШИЙ() сортирует массив значения, которые удовлетворяют и функцию ГПР. не вводить аргумент, в Вашей огромной строки. Эта жеФункция ЕСЛИ позволяет выбрать функция ИНДЕКС выберет и товар если просмотра (Range Lookup) ячейки из таблицыПредположим, что у нас ПОИСКПОЗ, мы создали
- возвратить в качествеТеперь узнаем, в каком совпадают с критерием. номеров строк по критерию. Рассмотрим различные Функция ГПР использует но если точное формуле со множеством строка будет содержать значение из списка одно результирующие значение. мы знаем значение. Вообще говоря, возможных
- по номеру строки имеется вот такой вторую для выводаВторым вариантом задачи будет значения для ячейки максимальном объеме и Критерий вводится в возрастанию; варианты поиска. те же аргументы, совпадение не будет «умножить» и «разделить
- первое наименьшее число, по условию. В Аргумент «диапазон» означает из таблицы? Тут значений для него и столбца - двумерный массив данных названия строк таблицы поиск по таблице D1, как результат в каком месяце ячейкуФункция ДВССЫЛ() возвращает массив
Для удобства создадим именованный но выполняет поиск найдено, функция вернетПо этому принципу которое встречается в ее первом аргументе область ячеек с потребуются две небольшие три: функция по городам и по зачиню ячейки. с использованием названия вычисления формулы. была максимальная продажаI6
последовательных чисел; диапазон Список. в строках вместонаиболее близкое ищите пересечения и
P.S. Обратная задача
столбце B6:B18. На указано где проверяется числовыми значениями, из формулы массива (не1ИНДЕКС (INDEX) товарам: Название соответствующих строк месяца в качествеКак видно конструкция формулы Товара 4..Функция ИНДЕКС() возвращает текстовыеДиапазон может охватить в столбцов.приблизительное совпадение подставляйте в Вашу
основании этого номера
- каждая ячейка в которых следует выбрать забудьте ввести их- поиск ближайшегоиз той жеПользователь вводит (или выбирает (товаров) выводим в
- критерия. В такие проста и лаконична.Чтобы выполнить поиск поДля создания списка, содержащего значения из Исходного том числе иЕсли вы не хотите, а большинство людей формулу
- строки функции ИНДЕКС диапазоне 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
В данном примере представлен
Имеем таблицу, в которой записаны объемы продаж определенных товаров в разных месяцах. Необходимо в таблице найти данные, а критерием поиска будут заголовки строк и столбцов. Но поиск должен быть выполнен отдельно по диапазону строки или столбца. То есть будет использоваться только один из критериев. Поэтому здесь нельзя применить функцию ИНДЕКС, а нужна специальная формула.
Поиск значений в таблице Excel
Для решения данной задачи проиллюстрируем пример на схематической таблице, которая соответствует выше описанным условиям.
Лист с таблицей для поиска значений по вертикали и горизонтали:
Над самой таблицей расположена строка с результатами. В ячейку B1 водим критерий для поискового запроса, то есть заголовок столбца или название строки. А в ячейке D1 формула поиска должна возвращать результат вычисления соответствующего значения. После чего в ячейке F1 сработает вторая формула, которая уже будет использовать значения ячеек B1 и D1 в качестве критериев для поиска соответствующего месяца.
Поиск значения в строке Excel
Теперь узнаем, в каком максимальном объеме и в каком месяце была максимальная продажа Товара 4.
Чтобы выполнить поиск по столбцам следует:
- В ячейку B1 введите значение Товара 4 – название строки, которое выступит в качестве критерия.
- В ячейку D1 введите следующую формулу:
- Для подтверждения после ввода формулы нажмите комбинацию горячих клавиш CTRL+SHIFT+Enter, так как формула должна быть выполнена в массиве. Если все сделано правильно, в строке формул появятся фигурные скобки.
- В ячейку F1 введите вторую формулу:
- Снова Для подтверждения нажмите комбинацию клавиш 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
Вторым вариантом задачи будет поиск по таблице с использованием названия месяца в качестве критерия. В такие случаи мы должны изменить скелет нашей формулы: функцию ВПР заменить ГПР, а функция СТОЛБЕЦ заменяется на СТРОКА.
Это позволит нам узнать какой объем и какого товара была максимальная продажа в определенный месяц.
Чтобы найти какой товар обладал максимальным объемом продаж в определенном месяце следует:
- В ячейку B2 введите название месяца Июнь – это значение будет использовано в качестве поискового критерия.
- В ячейку D2 введите формулу:
- Для подтверждения после ввода формулы нажмите комбинацию клавиш CTRL+SHIFT+Enter, так как формула будет выполнена в массиве. А в строке формул появятся фигурные скобки.
- В ячейку F1 введите вторую формулу:
- Снова Для подтверждения нажмите CTRL+SHIFT+Enter.
Принцип действия формулы поиска значения в столбце Excel:
В первом аргументе функции ГПР (Горизонтальный ПРосмотр) указываем ссылку на ячейку с критерием для поиска. Во втором аргументе указана ссылка на просматриваемый диапазон таблицы. Третий аргумент генерирует функция СТРОКА, которая создает в памяти массив номеров строк из 10 элементов. Так как в табличной части у нас находится 10 строк.
Далее функция ГПР поочередно используя каждый номер строки создает массив соответственных значений продаж из таблицы по определенному месяцу (Июню). Далее функции МАКС осталось только выбрать максимальное значение из этого массива.
Далее немного изменив первую формулу с помощью функций ИНДЕКС и ПОИСКПОЗ, мы создали вторую для вывода названия строк таблицы по зачиню ячейки. Название соответствующих строк (товаров) выводим в F2.
ВНИМАНИЕ! При использовании скелета формулы для других задач всегда обращайте внимание на второй и третий аргумент поисковой функции ГПР. Количество охваченных строк в диапазоне указанного в аргументе, должно совпадать с количеством строк в таблице. А также нумерация должна начинаться со второй строки!
Скачать пример поиска значения в столбце и строке Excel
Читайте также: Поиск значения в диапазоне таблицы Excel по столбцам и строкам
По сути содержимое диапазона нас вообще не интересует, нам нужен просто счетчик строк. То есть изменить аргументы на: СТРОКА(B2:B11) или СТРОКА(С2:С11) – это никак не повлияет на качество формулы. Главное, что в этих диапазонах по 10 строк, как и в таблице. И нумерация начинается со второй строки!
Поиск нужных данных в диапазоне
Как использовать функцию ВПР (VLOOKUP) для поиска и выборки нужных значений из списка мы недавно разбирали. Если вы еще с ней не знакомы — загляните сюда, не пожалейте пяти минут, чтобы сэкономить себе потом несколько часов.
Если же вы знакомы с ВПР, то — вдогон — стоит разобраться с похожими функциями: ИНДЕКС (INDEX) и ПОИСКПОЗ (MATCH), владение которыми весьма облегчит жизнь любому опытному пользователю Excel. Гляньте на следующий пример:
Необходимо определить регион поставки по артикулу товара, набранному в ячейку C16.
Задача решается при помощи двух функций:
=ИНДЕКС(A1:G13;ПОИСКПОЗ(C16;D1:D13;0);2)
Функция ПОИСКПОЗ ищет в столбце D1:D13 значение артикула из ячейки C16. Последний аргумент функции 0 — означает поиск точного (а не приблизительного) соответствия. Функция выдает порядковый номер найденного значения в диапазоне, т.е. фактически номер строки, где найден требуемыый артикул.
Функция ИНДЕКС выбирает из диапазона A1:G13 значение, находящееся на пересечении заданной строки (номер строки с артикулом выдает функция ПОИСКПОЗ) и столбца (нам нужен регион, т.е. второй столбец).
Ссылки по теме
- Использование функции ВПР (VLOOKUP) для поиска и подстановки значений.
- Улучшенная версия функции ВПР (VLOOKUP)
- Многоразовый ВПР
What to Know
- The LOOKUP function in Excel is used to look up information in a row or column.
- There are two ways to use a LOOKUP formula, depending on your needs: as a vector and an array.
- The vector type searches only one row or column, while an array searches multiple rows and columns.
This article explains how to use the LOOKUP function in any version of Excel including Excel 2019 and Microsoft 365.
What is the LOOKUP Function?
The LOOKUP function in Excel is used to look up information in a row or column. It locates a value from the same position in the row or column as the starting value, so it’s really useful when dealing with structured tables where all the rows and columns contain similar data.
There are two ways to write a LOOKUP formula in Excel depending on your needs. One form is called vector and the other is array.
The LOOKUP function can be used in every version of Excel.
LOOKUP Function Syntax & Arguments
There are two ways to use the LOOKUP function:
Vector
The vector form searches through one row or one column only. That range is called the vector. The value that’s returned is whatever is in the same position as the other selected data set.
=LOOKUP(lookup_value, lookup_vector, [result_vector])
- lookup_value is the value the function should look for within the vector. It can be a number, text, logical value, name, or reference. This argument is required.
- lookup_vector is the range. It can be a single row or a single column. The values in the vector must be in ascending order (e.g., 1, 2, 3 or A, B, C). This argument is required.
- result_vector is an optional range. If used, it must be the exact same size as lookup_vector.
Here are some more rules to remember when you use the vector form of the LOOKUP function:
- If lookup_value is smaller than the smallest value in lookup_vector, Excel produces the error #N/A.
- If lookup_value can’t be found, the LOOKUP function matches the largest value in lookup_vector that’s less than or equal to lookup_value.
Array
The array form can search for a value in multiple rows and columns. It first locates the specified value in the first row or column of the selection and then returns the value of the same position in the last row or column.
=LOOKUP(lookup_value, array)
- lookup_value is the value the function should look for within the array. It can be a number, text, logical value, name, or reference. The values must be in ascending order (e.g., 1, 2, 3 or A, B, C). This argument is required.
- array is the range of cells that contain the value you’re comparing with lookup_value. This argument is required.
Also keep these rules in mind:
- If lookup_value can’t be found, the largest value in array that’s less than or equal to lookup_value is used instead.
- If lookup_value is smaller than the largest value in the first row or column, the error #N/A is returned.
- If array includes more columns than rows, the LOOKUP function searches for lookup_value in the first row.
- If array includes more rows than column, the LOOKUP function searches for lookup_value in the first column.
LOOKUP Function Examples
Following are several examples of how to use LOOKUP in your formulas:
Use Lookup Vector to Search Table
=LOOKUP(1003,A2:A5,C2:C5)
Here’s an example of how to use the LOOKUP function when we need to check the price in a table that’s organized by part number. Since we know that the part numbers are listed in A2:A5 and the prices are in C2:C5, we can search for part number 1003 using those parameters.
Use Lookup Array to Search Table
=LOOKUP(1003,A2:C5)
The other way to use the LOOKUP function on the same set of data as the example above, is with an array. Instead of choosing two single columns, we’re selecting the entire table. However, since we need the price in this example, we’re stopping the selection at column C since the function will grab whatever value is found in the same position in the last column.
Find Closest Number in Table
=LOOKUP(A2,D2:D6,F2:F6)
This LOOKUP formula is cross-referencing the score in column A with the grading system in column D. The LOOKUP function sees where the score falls on the grading system, and then it looks up the grade in F2:F6 to know what to write next to the score. Since some of those values aren’t found in the table to the right, LOOKUP uses the next lowest value.
This particular formula could also be written in array form like this:
=LOOKUP(A2,D2:F6)
The results are the same since column D is the start of the selection and the end, which holds the grade, is column F.
Locate Last Number in List
=LOOKUP(9.99999999999999E+307,A:A)
The LOOKUP formula finds the last number in column A. Since 9.99999999999999E+307 is the biggest number you can have in an Excel worksheet, the formula will show the last number in the list, even if there are blank cells included in the range.
Locate Last Text Value in List
=LOOKUP(REPT("z",255),A:A)
The example locates the last text value from column A. The REPT function is used here to repeat z to the maximum number that any text value can be, which is 255. Similar to the number example, this one simply identifies the last cell that contains text.
Use Table Data to Find Heading Values
=LOOKUP(2,1/(B3:G3 <> ""),B$2:G$2)
This final example of the Excel LOOKUP function involves some things not described in this article, but it’s worth a look anyway so that you can see just how useful this function can be. The general idea here is that we’re determining the last entry in each row and then looking up the date in row 2 to know the last time we paid those bills.
Other Functions Like LOOKUP
LOOKUP is a fairly basic lookup/reference function. Others exist that are good for more advanced uses.
VLOOKUP and HLOOKUP let you perform vertical or horizontal lookups and can specify whether to do an exact or approximate match. LOOKUP automatically returns the closest value if an exact match isn’t found.
XLOOKUP is a similar, more advanced lookup function.
Thanks for letting us know!
Get the Latest Tech News Delivered Every Day
Subscribe
Хитрости »
15 Май 2011 512380 просмотров
Как найти значение в другой таблице или сила ВПР
- Задача и её решение при помощи ВПР
- Описание аргументов ВПР
- Что важно всегда помнить при работе с ВПР
- Как избежать ошибки #Н/Д(#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 символов. Это случается редко, но случается. Можно, конечно, обмануть ВПР и урезать критерий:
=ВПР(ПСТР($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 437 скачиваний)
Так же см.:
ВПР и интервальный просмотр(range_lookup)
ВПР по двум и более критериям
ВПР с возвратом всех значений
ВПР с поиском по нескольким листам
ВПР_МН
ВПР_ВСЕ_КНИГИ
Как заменить/удалить/найти звездочку?
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика
Программа Excel ориентирована на ускоренные расчеты. Зачастую документы здесь состоят из большого количества листов, на которых представлены длинные таблицы с числами, формулами или текстом. Для удобного нахождения нужных ячеек существует специальный автоматизированный поиск. Ознакомившись с особенностями его использования, можно сократить время работы в документах. О том, как искать в Экселе слова, фразы или ячейки, подробно написано ниже.
-
Классический поиск «MS Office».
-
Условное форматирование (выделение нужных ячеек цветом)
-
Настройка фильтров по одному или нескольким значениям.
-
Фрагмент макроса для перебора ячеек в диапазоне и поиска нужного значения.
Синтаксис
=ПОИСК(ИскомыйТекст;СтрокаВКоторойИщем;[СтартоваяПозиция])
- ИскомыйТекст — символ или сочетание, которое ищем
- СтрокаВКоторойИщем — ячейка, текстовое значение или любое возвращаемое другой функцией выражение.
- Стартовая позиция — опциональный параметр, при отсутствии поиск происходит с первого символа
Если текст содержит более одного вхождения, возвращается позиция первого. Третий (опциональный) параметр используется для поиска с определенной позиции в тексте и по умолчанию равен 1.
Если искомое не найдено в тексте, функция возвращает ошибку #ЗНАЧ.
1) Классический поиск (обыкновенный).
Вызвать панель (меню) поиска можно сочетанием горячих клавиш ctrl+F. (Легко запомнить: F- Found).
Окно поиска состоит из поля, в которое вводится искомый фрагмент текста или искомое число, вкладки с дополнительными настройками («Параметры») и кнопки «Найти».
В параметрах поиска можно указать, где искать текст, искать ли слово в ячейке целиком или вхождение слова в предложения, учитывать ли регистр или нет.
Условное форматирование для искомых ячеек.
Поиск точного совпадения с помощью ВПР
Посмотрим на примере, как работает функция ВПР, когда выбран тип сопоставления «ЛОЖЬ», поиск точного совпадения. В массиве В5:Е10 указаны основные средства некой компании, их балансовая стоимость, инвентарный номер и место расположения. В ячейке В2 указано наименование, для которого нужно в таблице найти инвентарный номер и поместить его в ячейку С2.
Запишем формулу: =ВПР(B2;B5:E10;3;ЛОЖЬ).
Здесь первый аргумент указывает, что в таблице нужно искать значение из ячейки В2, т.е. слово «Факс». Второй аргумент говорит, что таблица для поиска — в диапазоне В5:Е10, а искать слово «Факс» нужно в первом столбце, т.е. в массиве В5:В10. Третий аргумент сообщает программе, что результат расчета содержится в третьем столбце массива, т.е. D5:D10. Четвёртый аргумент равен «ЛОЖЬ», т.е. требуется полное совпадение.
И так, функция получит строку «Факс» из ячейки В2 и будет искать его в массиве В5:В10 сверху вниз. Как только совпадение будет найдено (строка 8), функция вернёт соответствующее значение из столбца D, т.е. содержимое D8. Именно это нам и требовалось, задача решена.
Если искомое значение не будет найдено, функция вернёт ошибку #Н/Д.
3) Третий способ поиска слов в таблице «Excel» — это использование фильтров.
Фильтр устанавливается во вкладке «Данные» или сочетанием клавиш ctrl+shift+L.
Кликнув по треугольнику фильтра можно в контекстном меню выбрать пункт «Текстовые фильтры», далее «содержит…» и указать искомое слово.
После нажатия кнопки «Ок» на Экране останутся только ячейки столбца, содержащие искомое слово.
Поиск ячеек
Ячейки могут содержать в себе формулы или значения, быть объеденными или скрытыми. Эти характеристики изменяют ход поиска интересующих нас ячеек.
Для поиска ячеек с формулами выполняются следующие действия.
- В открытом документе выделить ячейку или диапазон ячеек (в первом случае поиск идет по всему листу, во втором – в выделенных ячейках).
- Во вкладке «Главная» выбрать функцию «Найти и выделить».
- Обозначить команду «Перейти».
- Выделить клавишу «Выделить».
- Выбрать «Формулы».
- Обратить внимание на список пунктов под «Формулами» (возможно, понадобится снятие флажков с некоторых параметров).
- Нажать клавишу «Ок».
Для поиска объединенных ячеек потребуется выполнение следующих манипуляций.
- Перейти во вкладку «Главная».
- Выбрать функцию «Найти и выделить».
- Нажать на команду «Найти».
- Перейти в «Параметры» и выбрать «Формат».
- Здесь выделить функцию «Выравнивание», поставить о.
- Нажать на «Ок».
- Нажать на кнопку «Найти все» и проанализировать список ячеек, которые объединены на соответствующем листе.
При нажимании кнопкой мыши на элемент в списке происходит выделение объединенной ячейки на листе. Дополнительно доступна функция «Отменить объединение ячеек».
Выполнение представленных выше действий приводит к нахождению всех объединенных ячеек на листе и при необходимости отмене данного свойства. Для поиска скрытых ячеек проводятся следующие действия.
- Выбрать лист, требующий анализа на присутствие скрытых ячеек и их нахождения.
- Нажать клавиши «F5_гт_ Special».
- Нажать сочетание клавиш «CTRL + G_гт_ Special».
Можно воспользоваться еще одним способом для поиска скрытых ячеек:
- Открыть функцию «Редактирование» во вкладке «Главная».
- Нажать на «Найти».
- Выбрать команду «Перейти к разделу». Выделить «Специальные».
- Попав в группу «Выбор», поставить галочку на «Только видимые ячейки».
- Нажать кнопку «Ок».
В результате проделанных действий видимые ячейку выделятся, при этом границы столбцов и строк, которые граничат со скрытыми ячейками или столбцами, предстанут с белыми границами.
Если интересующая ячейка обозначена условным форматом, ее несложно найти и применить для копирования, удаления или редактирования непосредственно условного формата. Если речь идет о ячейке с определенным условным форматом, тогда на помощь придет функция «Выделить группу ячеек».
Чтобы найти ячейки, для которых применено условное форматирование:
- нажать на ячейку, не предусматривающую условное форматирование;
- выбрать функцию «Редактирование» во вкладке «Главная»;
- нажать на кнопку «Найти и выделить»;
- выделить категорию «Условное форматирование».
Чтобы найти ячейки, для которых применено одинаковое условное форматирование:
- выбрать ячейку, предусматривающую условное форматирование, требующую поиска;
- выбрать группу «Редактирование» во вкладке «Главная»;
- нажать на кнопку «Найти и выделить»;
- выбрать категорию «Выделить группу ячеек»;
- установить свойство «Условные форматы»;
- напоследок нужно зайти в группу «Проверка данных» и установить аналогичный пункт.
4) Способ поиска номер четыре — это макрос VBA для поиска (перебора значений).
В зависимости от назначения и условий использования макрос может иметь разные конфигурации, но основная часть цикла перебора VBA макроса приведена ниже.
Sub Poisk()
‘ ruexcel.ru макрос проверки значений (поиска)
Dim keyword As String
keyword = «Искомое слово» ‘присвоить переменной искомое слово
On Error Resume Next ‘при ошибке пропустить
For Each cell In Selection ‘для всх ячеек в выделении (выделенном диапазоне)
If cell.Value = «» Then GoTo Line1 ‘если ячейка пустая перейти на «Line1″
If InStr(StrConv(cell.Value, vbLowerCase), keyword) > 0 Then cell.Interior.Color = vbRed ‘если в ячейке содержится слово окрасить ее в красный цвет (поиск)
Line1:
Next cell
End Sub
Функция ПОИСК в формуле массива
Примеры выше, где буквы перечислены явно в строковом массиве, занимает довольно много места. Буквы при этом идут подряд, что наводит на мысль, что их можно как-то иначе выразить как диапазон.
И действительно, это возможно с помощью комбинации с функциями СТРОКА и ПОИСК:
{=СЧЁТ(ПОИСК(СИМВОЛ(СТРОКА(65:90));A1))>0}
Отличие этой формулы массива от предыдущих — ее нужно вводить без фигурных скобок, они появятся при вводе формулы сочетанием Ctrl+Shift+Enter (вместо обычного Enter). В формуле выше, где явно прописаны все буквы, фигурные скобки вводятся вручную — это явное указание строкового массива.
Что происходит в этой формуле?
- Функция СТРОКА с численным аргументом «65:90» возвращает массив чисел с 65 по 90 включительно. Как раз в этом диапазоне в таблице ASCII находятся все символы латиницы;
- Функция СИМВОЛ возвращает для каждого числового значения в этом массиве его символ, таким образом создавая массив латинских символов;
- Функция ПОИСК производит поиск каждого из этих символов в строке и возвращает либо число, либо ошибку, таким образом создавая массив чисел и ошибок
- Функция СЧЁТ считает числовые значения в полученном массиве. Если результат больше нуля, значит, хотя бы один символ латиницы был найден. Если нет (все поиски вернули ошибку), значит, не был
Аналогичная формула для кириллицы:
{=СЧЁТ(ПОИСК(СИМВОЛ(СТРОКА(192:223));A1))>0}
Подробнее о поиске и извлечении кириллицы и латиницы в Excel можно почитать тут:
Найти латиницу или кириллицу в тексте
Есть еще множество комбинаций функции ПОИСК с другими функциями Excel, смотрите разделы: Функция ИЛИ Функция И Функция ЗНАЧЕН Удалить первое слово в ячейке Excel
Расширенный поиск
Предположим, что требуется найти все значения в диапазоне от 3000 до 3999. В этом случае в строке поиска следует набрать 3???. Подстановочный знак «?» заменяет собой любой другой.
Анализируя результаты произведённого поиска, можно отметить, что, наряду с правильными 9 результатами, программа также выдала неожиданные, подчёркнутые красным. Они связаны с наличием в ячейке или формуле цифры 3.
Можно удовольствоваться большинством полученных результатов, игнорируя неправильные. Но функция поиска в эксель 2010 способна работать гораздо точнее. Для этого предназначен инструмент «Параметры» в диалоговом окне.
Щёлкнув «Параметры», пользователь получает возможность осуществлять расширенный поиск. Прежде всего, обратим внимание на пункт «Область поиска», в котором по умолчанию выставлено значение «Формулы».
Это означает, что поиск производился, в том числе и в тех ячейках, где находится не значение, а формула. Наличие в них цифры 3 дало три неправильных результата. Если в качестве области поиска выбрать «Значения», то будет производиться только поиск данных и неправильные результаты, связанные с ячейками формул, исчезнут.
Для того чтобы избавиться от единственного оставшегося неправильного результата на первой строчке, в окне расширенного поиска нужно выбрать пункт «Ячейка целиком». После этого результат поиска становимся точным на 100%.
Такой результат можно было бы обеспечить, сразу выбрав пункт «Ячейка целиком» (даже оставив в «Области поиска» значение «Формулы»).
Теперь обратимся к пункту «Искать».
Если вместо установленного по умолчанию «На листе» выбрать значение «В книге», то нет необходимости находиться на листе искомых ячеек. На скриншоте видно, что пользователь инициировал поиск, находясь на пустом листе 2.
Следующий пункт окна расширенного поиска – «Просматривать», имеющий два значения. По умолчанию установлено «по строкам», что означает последовательность сканирования ячеек по строкам. Выбор другого значения – «по столбцам», поменяет только направление поиска и последовательность выдачи результатов.
При поиске в документах Microsoft Excel, можно использовать и другой подстановочный знак – «*». Если рассмотренный «?» означал любой символ, то «*» заменяет собой не один, а любое количество символов. Ниже представлен скриншот поиска по слову Louisiana.
Иногда при поиске необходимо учитывать регистр символов. Если слово louisiana будет написано с маленькой буквы, то результаты поиска не изменятся. Но если в окне расширенного поиска выбрать «Учитывать регистр», то поиск окажется безуспешным. Программа станет считать слова Louisiana и louisiana разными, и, естественно, не найдёт первое из них.
Поиск
Для начала разберемся с менее популярной функцией – поиск. Использование инструмента позволяет найти положение искомой информации в тексте, выраженное в виде числа. Помимо этого можно искать не только единичные символы, но и целые сочетания букв. Чтобы включить поиск, нужно в строке формул написать одноименную функцию, указав впереди знак равно. Синтаксис следующий:
- Первый блок используется для записи искомой информации.
- Вторая часть функции позволяет задать диапазон поиска по части текста.
- Третий аргумент является необязательным. Его использование оправдано, если известна точка начала поиска внутри ячейки.
Рассмотрим пример: необходимо найти фрукты, которые начинаются на букву А из списка.
- Составляете список на рабочем листе
- В соседнем столбце записываете =ПОИСК(«а»;$B$4:$B$11). Не забывайте ставить двойные кавычки при использовании текста в качестве аргумента.
- Используя маркер автозаполнения, применяете формулу ко всем остальным ячейкам. Диапазон поиска был зафиксирован значками доллара для более корректной работы.
Полученные результаты можно дальше использовать для приведения к более удобному виду.
Позиции с единицами показывают, какие из строк содержат фрукты, начинающиеся на букву а. Как видите, остальные цифры также указывают на местоположение искомой буквы в остальных позициях диапазона. Однако, одна ячейка содержит ошибку ЗНАЧ!. Эта проблема возникает в двух случаях, при использовании функции ПОИСК:
- Нулевая ячейка
- Блок не содержит искомой информации.
В нашем случае фрукт Персик не содержит ни одной а, поэтому программа выдала ошибку.
Различия
Проанализировав результаты, полученные при использовании инструментов ПОИСК и НАЙТИ, можно выделить несколько ключевых отличий:
- Функция НАЙТИ чувствительна к регистру букв, то есть алгоритм распознает большие и маленькие символы. Это четко видно на примере фрукта Апельсин. ПОИСК вернул 1, а НАЙТИ выдало ошибку, поскольку маленькой буквы а нет в ячейке. Подобная ситуация и для Ананаса с Айвой
- Дополнительным различием является то, что ПОИСК умеет работать с подстановочными символами типа вопросительный знак (?) и звездочка (*), которые используются для неточного формирования поискового запроса.
На заметку! Чтобы найти именно эти символы в тексте необходимо использовать тильду (~) перед аргументом.
- Инструмент НАЙТИ реализован как в виде отдельной кнопки на главной панели, так и в виде встроенной функции редактора.
Как видите, excel позволяет осуществлять поиск несколькими способами, каждый из которых обладает своими преимуществами. При помощи одного можно осуществить поиск по нескольким значениям, а другой можно вызвать используя горячие клавиши, что, несомненно, ускоряет процесс работы с документом.
Предназначение и синтаксис метода Range.Find
Метод Find объекта Range предназначен для поиска ячейки и сведений о ней в заданном диапазоне по ее значению, формуле и примечанию. Чаще всего этот метод используется для поиска в таблице ячейки по слову, части слова или фразе, входящей в ее значение.
Синтаксис метода Range.Find
1 | Expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat) |
Expression – это переменная или выражение, возвращающее объект Range, в котором будет осуществляться поиск.
В скобках перечислены параметры метода, среди них только What является обязательным.
Метод Range.Find возвращает объект Range, представляющий из себя первую ячейку, в которой найдена поисковая фраза (параметр What). Если совпадение не найдено, возвращается значение Nothing.
Параметры метода Range.Find
Наименование | Описание |
Обязательный параметр | |
What | Данные для поиска, которые могут быть представлены строкой или другим типом данных Excel. Тип данных параметра – Variant. |
Необязательные параметры | |
After | Ячейка, после которой следует начать поиск. |
LookIn | Уточняет область поиска. Список констант xlFindLookIn:
|
LookAt | Поиск частичного или полного совпадения. Список констант xlLookAt:
|
SearchOrder | Определяет способ поиска. Список констант xlSearchOrder:
|
SearchDirection | Определяет направление поиска. Список констант xlSearchDirection:
|
MatchCase | Определяет учет регистра:
|
MatchByte | Условия поиска при использовании двухбайтовых кодировок:
|
SearchFormat | Формат поиска – используется вместе со свойством Application.FindFormat. |
* Примечания имеют две константы с одним значением. Проверяется очень просто: MsgBox xlComments и MsgBox xlNotes. ** Тесты показали неработоспособность метода Range.Find с константой xlFormulas в моей версии VBA Excel.
В справке Microsoft тип данных всех параметров, кроме SearchDirection, указан как Variant.