Как проверить данные в массиве excel

Skip to content

5 способов – поиск значения в массиве Excel

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

Самый быстрый способ назвать каждую строку и каждый столбец в вашей таблице:

  1. Выделите всю таблицу (в нашем случае A1:E11).
  2. На вкладке « Формулы » в группе « Определенные имена » щелкните « Создать из выделенного » или нажмите комбинацию клавиш  Ctrl + Shift + F3.
  3. В диалоговом окне « Создание имени из выделенного » выберите « в строке выше » и « в столбце слева» и нажмите «ОК».

Это автоматически создает имена на основе заголовков строк и столбцов. Однако есть пара предостережений:

  • Если ваши заголовки столбцов и/или строк являются числами или содержат определенные символы, которые не разрешены в именах Excel, то имена для таких столбцов и строк не будут созданы. Чтобы просмотреть список созданных имен, откройте Диспетчер имен (Ctrl + F3). Если некоторые имена отсутствуют, определите их вручную.
  • Если некоторые из ваших заголовков строк или столбцов содержат пробелы, то они будут заменены символами подчеркивания, например, Неделя_1.

Шаг 2. Создание формулы поиска по матрице

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

=имя_строки имя_столбца

Или наоборот:

=имя_столбца имя_строки

Например, чтобы получить продажу Sprite в 3-й неделе, используйте выражение:

=Sprite неделя_3

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

Если кому-то нужны более подробные инструкции, опишем весь процесс пошагово:

  1. В ячейке, в которой вы хотите отобразить результат, введите знак равенства (=).
  2. Начните вводить имя целевой строки, Sprite. После того, как вы введете пару символов, Excel отобразит все существующие имена, соответствующие вашему вводу. Дважды щелкните нужное имя, чтобы ввести его в формулу.
  3. После имени строки введите пробел , который в данном случае работает как оператор пересечения.
  4. Введите имя целевого столбца ( в нашем случае неделя_3 ).
  5. Как только будут введены имена строки и столбца, Excel выделит соответствующую строку и столбец в вашей таблице, и вы нажмете Enter, чтобы завершить ввод:

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

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

Еще несколько материалов по теме:

Поиск ВПР нескольких значений по нескольким условиям В статье показаны способы поиска (ВПР) нескольких значений в Excel на основе одного или нескольких условий и возврата нескольких результатов в столбце, строке или в отдельной ячейке. При использовании Microsoft…
Поиск ИНДЕКС ПОИСКПОЗ по нескольким условиям В статье показано, как выполнять быстрый поиск с несколькими условиями в Excel с помощью ИНДЕКС и ПОИСКПОЗ. Хотя Microsoft Excel предоставляет специальные функции для вертикального и горизонтального поиска, опытные пользователи…
ИНДЕКС ПОИСКПОЗ как лучшая альтернатива ВПР В этом руководстве показано, как использовать ИНДЕКС и ПОИСКПОЗ в Excel и чем они лучше ВПР. В нескольких недавних статьях мы приложили немало усилий, чтобы объяснить основы функции ВПР новичкам и предоставить…
Поиск в массиве при помощи ПОИСКПОЗ В этой статье объясняется с примерами формул, как использовать функцию ПОИСКПОЗ в Excel.  Также вы узнаете, как улучшить формулы поиска, создав динамическую формулу с функциями ВПР и ПОИСКПОЗ. В Microsoft…
Функция ИНДЕКС в Excel — 6 примеров использования В этом руководстве вы найдете ряд примеров формул, демонстрирующих наиболее эффективное использование ИНДЕКС в Excel. Из всех функций Excel, возможности которых часто недооцениваются и используются недостаточно, ИНДЕКС определенно занимает место…
Функция СУММПРОИЗВ с примерами формул В статье объясняются основные и расширенные способы использования функции СУММПРОИЗВ в Excel. Вы найдете ряд примеров формул для сравнения массивов, условного суммирования и подсчета ячеек по нескольким условиям, расчета средневзвешенного значения…
Средневзвешенное значение — формула в Excel В этом руководстве демонстрируются два простых способа вычисления средневзвешенного значения в Excel — с помощью функции СУММ (SUM) или СУММПРОИЗВ (SUMPRODUCT в английском варианте). В одной из предыдущих статей мы…

 

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

 

ЛМВ

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

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

Можно так:  
=ЕСЛИ(ЕНД(ПОИСКПОЗ(A2;$E$2:$E$28;0));»нет»;»есть»)

Всё сложное — не нужно. Всё нужное — просто /М. Т. Калашников/

 

Hugo

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

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

Или можно аналогично (по смыслу) использовать ВПР() или СЧЕТЕСЛИ()

 

Locomotiv23530

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

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

#4

05.11.2012 17:13:26

))) спасибо.

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

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

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

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

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

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

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

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

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

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

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

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

Примеры ВРОТ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

На чтение 6 мин Опубликовано 13.01.2021

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

Содержание

  1. Запись функции «ИНДЕКС»
  2. Запись функции «ПОИСПОЗ»
  3. Как найти значение в массиве
  4. Заключение

Запись функции «ИНДЕКС»

Такой оператор в форме массива записывается следующим образом: =ИНДЕКС (массив; номер строчки; номер столбика). Вместо слов в скобках указываются соответствующие номера ячеек в исходной таблице.

Запись функции «ПОИСПОЗ»

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

Обратите внимание! При записи аргументов для функции «ИНДЕКС» номер столбца указывать не обязательно.

Как найти значение в массиве

Для понимания темы алгоритм выполнения поставленной задачи необходимо рассмотреть на конкретном примере. Составим в Excel таблицу заказов за один день, в которой будут столбцы: «№ заказа», «Клиент», «Товар», «Количество», «Цена за ед.», «Сумма». Необходимо найти значение в массиве, т.е. составить индивидуальную карточку заказа клиента, чтобы можно было в сжатом виде получить информацию из ячеек исходной таблицы.

kak-najti-znachenie-v-massive-v-excel

Внешний вид составленной таблички

Для этого надо выполнить ряд действий по алгоритму:

  1. Составить карточку заказа клиента.

kak-najti-znachenie-v-massive-v-excel

Карточка заказа клиента
  1. Для первой строчки карточки надо создать выпадающий список, в котором будут прописаны имена клиентов из основного массива. Впоследствии, выбрав то или иное имя, пользователь увидит сжатую информацию по нему, которая отобразится в других строках карточки заказа.
  2. Поставить курсор мышки в первую строку карточки и войти в раздел «Данные» сверху главного меню программы.
  3. Кликнуть по кнопке «Проверка данных».
  4. В отобразившемся окошке в поле «Тип данных» указать вариант «Список», а в качестве источника выделить диапазон ячеек исходного массива, в котором прописан перечень всех клиентов.

kak-najti-znachenie-v-massive-v-excel

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

kak-najti-znachenie-v-massive-v-excel

Перечень клиентов, который появится в первой строке карточки после выполнения предыдущих манипуляций
  1. В строке «№ заказа» прописать функцию «=ИНДЕКС(», после чего кликнуть по значку «fx» рядом со строкой формул Эксель.
  2. В открывшемся меню Мастера функций из списка выбрать форму массива для функции «ИНДЕКС» и нажать на «ОК».

kak-najti-znachenie-v-massive-v-excel

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

kak-najti-znachenie-v-massive-v-excel

Внешний вид окошка «Аргументы функции»
  1. Сначала надо кликнуть по пиктограмме напротив поля «Массив» и выделить целиком исходную табличку вместе с шапкой.

kak-najti-znachenie-v-massive-v-excel

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

kak-najti-znachenie-v-massive-v-excel

Заполнение поля Номер строки в меню аргументов функции. Здесь применяется оператор «ПОИСКПОЗ»

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

  1. В строчке «Номер столбца» еще раз прописать вспомогательную функцию «ПОИСКПОЗ» с соответствующими аргументами.
  2. В качестве первого аргумента для функции надо указать незаполненную ячейку в строке «Товар» в карточке заказа. При этом навешивать знаки долларов на аргументы теперь не надо, т.к. искомый аргумент должен получиться «плавающим».
  3. Заполняя второй аргумент функции «ПОИСКПОЗ», нужно выделить шапку исходного массива, а затем нажать на кнопку «F4» для закрепления символов.
  4. В качестве последнего аргумента необходимо прописать 0, закрыть скобку и щелкнуть по «ОК» внизу окошка «Аргументы функции». В данной ситуации число 0 является точным совпадением.

kak-najti-znachenie-v-massive-v-excel

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

kak-najti-znachenie-v-massive-v-excel

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

kak-najti-znachenie-v-massive-v-excel

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

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

Заключение

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

Оцените качество статьи. Нам важно ваше мнение:

Как узнать, является ли данная формула формулой массива? Что вообще она означает?

На этапе создания формула (или также функция) сама по себе не является ни формулой массива, ни обычной формулой. Это вы определяете, как Excel должен истолковать формулу, которую вы вводите. То, что формула является формулой массива – это не столько особенность самой формулы, а скорее способом, которым программа Excel введенную формулу «обрабатывает». Подтверждение формулы с помощью сочетания клавиш «Ctrl + Shitf + Enter» – это является для Excelя командой на выполнение (обработку данных) как массив вычислений. Тогда он используется в качестве аргумента функции и возвращает в качестве результата вычислений таблицу (массив данных).

Примеры формул массива и отличие от обычных формул в Excel

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

К счастью, существуют другие функции, которые работают совершенно иначе, т.е. в зависимости от вашего решения относительно их принадлежности к «функциям массива» (иногда они вообще не хотят работать). Прекрасным примером является функция ЕСЛИ.



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

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

{23;-32;15;7} – это синтаксис массива значений в Excel. Он может быть использован в аргументах функций.

Диапазон ячеек A1:A4 – так же является массивом значений в Excel. Естественно так же используется в аргументах функций. Например сравним результаты вычислений двух формул: =СУММ(A1:A4) и =СУММ({23;-32;15;7}) – они идентичны:

Массив логических значений.

Визуально формула массива находится так же внутри фигурных скобок, но они не должны быть введены вручную, а только лишь при помощи комбинации клавиш CTRL+SHIFT+Enter. Если ввести вручную фигурные скобки, то формула не будет выполнятся в массиве – это будет синтаксическая ошибка в Excel.

Формула массива (введенная с помощью сочитания CTRL+SHIFT+Enter) будет использоваться везде, где вы хотите, чтобы функция, которая обычно работает с отдельными значениями (ячейками), внезапно повела себя иначе и приняла в качестве аргумента и вернула в качестве результата массив значений (таблицу). Вернемся к уже упомянутой функции ЕСЛИ. В качестве аргумента она принимает логическое значение ИСТИНА или ЛОЖЬ. В классической форме:

=ЕСЛИ($A$1>0;»больше»;»меньше»)

ЕСЛИ.

Если значение в ячейке A1 больше нуля, в качестве аргумента функция получит значение ИСТИНА и в качестве результата вернет текстовую строку «больше». Однако, если бы вы хотели проверить несколько ячеек сразу и передать результат такой проверки другой функции, вы должны были бы использовать вышеуказанную формулу как формулу массива. Для этого при вводе нажмем сочитание клавиш CTRL+SHIFT+Enter, а не как обычно (просто Enter):

Сочетание клавиш формулы массива.

{=ЕСЛИ($A$1:$A$4>0;»больше»;»меньше»)}

Формула массива в фигурных скобках.

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

Таблица в памяти компьютера.

А так выглядят эти значения в массиве:

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

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

=ИНДЕКС({ИСТИНА;ЛОЖЬ;ИСТИНА;ИСТИНА};2)

ИНДЕКС.

Тоже самое что и:

Выборка из массива значений.

Затем создается другая таблица, значения которой зависят непосредственно от значений в первой таблице. Если элемент в первом массиве имеет значение ИСТИНА, во втором массиве он примет значение «больше». Если он имеет значение ЛОЖЬ, элемент во второй таблице примет значение «меньше». После этой операции первая таблица удаляется из памяти компьютера, и в конечном счете, функция возвращает массив {«больше», «меньше», «больше», «больше»}. Схематически вторую таблицу можно отобразить так:

Так же ее можно прочитать функцией:

=ИНДЕКС({«больше»;»меньше»;»больше»;»больше»};2)

Массив значений.

В примере с функцией ЕСЛИ была введена формула массива только в одну ячейку, поэтому в результате получили только одно значение, соответствующее первому значению в таблице. Однако достаточно ввести формулу массива в диапазон ячеек, чтобы увидеть все значения массива результатов. Для этого выделяем диапазон из нескольких ячеек, нажимаем клавишу F2 (или заново вводим формулу вручную) и жмем CTRL+SHIFT+Enter.

Все значения массива.

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

Примеры как использовать формулу массива в Excel

Это все хорошо, но возникают некоторые вопросы: «Зачем же нужна формула массива?» или «Как или где использовать формулу в массиве?», «Чем она лучше обычной формулы?».

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

Пример. Представим, что вы хотели бы найти сумму ячеек B7:B10, но только тех, которые имеют значение больше нуля. Конечно же, вы можете использовать функцию СУММЕСЛИ, однако в нашем примере мы хотим сделать это только с помощью формулы массива. Суммируя значения ячеек нашего диапазона, необходимо будет как-то избавиться от значения «-32». Функции СУММ необходимо передать массив, в котором содержатся только значения больше нуля. Везде там, где значение меньше нуля, мы заменяем его на ноль, что, конечно же, не повлияет на результат. Как вы уже знаете, временную таблицу с соответствующими значениями вы можете получить, используя функцию ЕСЛИ. В конечном итоге соответствующая формула будет выглядеть так:

СУММ.

Вводим формулу и не забываем для подтверждения ввода нажать комбинацию клавиш CTRL+SHIFT+Enter. В результате проверки каждой ячейки диапазона $A$1:$A$4 (является ли значение больше нуля) в памяти компьютера создается массив {ИСТИНА; ЛОЖЬ; ИСТИНА; ИСТИНА}. Затем создается очередная таблица. Если элемент в первом массиве имеет значение ИСТИНА, то во второй таблице будет отображаться значение из соответствующей ячейки. Если он имеет значение ЛОЖЬ, то элемент во второй таблице примет значение 0. После этой операции первая таблица удаляется из памяти компьютера, и в конечном итоге функция ЕСЛИ возвращает массив {23; 0; 15; 7}. Затем эта таблица передается в качестве аргумента функции =СУММ({23; 0; 15; 7}), которая, согласно своему предназначению, возвращает сумму всех элементов в таблице. В нашем примере сумма равна 45. В завершении, посмотрите, что произойдет, если вы скажете Excelю обработать приведенную выше формулу не как формулу массива.

не массив без фигурных скобок.

Ни одна из описанных выше таблиц, в этом случае, не будет создана. Только одна ячейка диапазона будет проверена (ячейка в той же строке, в которой находится функция). В нашем случае 15>0 значит, как первый аргумент функция ЕСЛИ получит логическое значение ИСТИНА. Затем ВЕСЬ диапазон A1:A4 будет передан функции СУММ, и в результате функция возвращает значение равное 13 (23-32+15+7). Если бы в ячейке вместо значения 15 было число меньше нуля, функция ЕСЛИ в качестве аргумента получила бы значение ЛОЖЬ, и, следовательно, только значение нуля было бы передано функции СУММ. Наша функция СУММ в результате также вернет значение равное нулю.

Как отличать формулу массива от обычной формулы

При нажатии клавиш CTRL+SHIFT+Enter для подтверждения ввода в строке формул будут отображены фигурные скобки по краям. Значит данная формула выполняется в массиве. Но что если еще на этапе создания неизвестно какой тип формул следует применять?

Правильное «распознавание», когда следует нажимать CTRL+SHIFT+Enter, а когда просто Enter полностью зависит от понимания того, как работают массивы в формулах. Когда вы это поймете, сможете сказать, что конкретную формулу следует вводить (подтверждать) сочетанием клавиш – CTRL+SHIFT+Enter.

Конечно же, не подтвержденная, а просто как формула также может возвращать КАКОЙ-ТО результат (в чем вы могли только что убедиться сами). Однако, если вы сможете прочитать формулу и понять механизм, то вы заметите, что такой результат является ОШИБОЧНЫМ. И поэтому для правильной работы формулы вам необходимо ее подтвердить «Ctr+Shift+Enter». Как и все, понимание и использование формул массива требует практики. Тем не менее, стоит некоторое время посвятить тому, чтобы во всем разобраться. Потому что формулы массива позволяют решить многие проблемы, которые на первый взгляд могут казаться неразрешимыми.

Примеры вычислений и анализа формул массива

Каким образом можно просматривать и проверять значения промежуточных результатов расчета, например, содержание массивов, созданных в памяти компьютера и используемых для выполнения последующих действий? Ничего сложного! Пример 1:

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

ссылка на диапазон ячеек.

Нажмите клавишу F9 (или «Пересчет» в правом верхнем углу меню «Формулы»), и вы получите (в строке формулы) значения аргументов, которые используются для вычислений, как показано ниже:

Содержимое массива.

— запись с использованием двоеточий означает, что мы имеем дело с элементами вертикального (столбикового) массива, элементы горизонтального (строкового) разделены стандартным символом — «;» (точкой с запятой).

Пример 2: Снова перейдите на ячейку с формулой массива, но на этот раз выделите первый аргумент функции целиком вместе со знаком сравнения «>» и значением критерия – «0»).

вместе с оператором сравнения и аргументом.

Нажмите кнопку F9, и вы получите массив результатов вычислений, как показано ниже:

массив результатов вычислений.

То есть, созданный в памяти компьютера массив:

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

Пример 3: Выделите ячейку формулой массива где в функцию СУММ вложена функция ЕСЛИ. Затем в строке формул выберите весь аргумент функции СУММ (вместе с функцией ЕСЛИ):

аргумент целиком с функцией и ссылками.

Нажмите клавишу F9 и вы получите массив итоговых результатов вычисления, которые используются для суммирования, как показано ниже:

Массив итоговых результатов вычисления.

То есть, созданный в памяти компьютера массив:

{23157}

Пример 4: Просто перейдите на ячейку с формулой B1 и выберите инструмент «ФОРМУЛЫ»-«Зависимости формул»-«Вычислить формулу»

Вычислить формулу.

После чего нажмите на кнопку «Вычислить»:

Кнопка Вычислить.

В результате ссылка на диапазон ячеек в аргументе вложенной функции ЕСЛИ разложилась на массив значений. Снова нажмите на кнопку «Вычислить»:

Готово.

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

Читайте также: Работа с массивами функций в Excel.

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

Функции ИНДЕКС и ПОИСКПОЗ в Excel – лучшая альтернатива для ВПР

​Смотрите также​ изменения результирующей таблицы:​​ выборки — столбец​​ работы указанных формул​​«Товар»​​ листе»​ числовыми выражениями.​ его, жмем на​ применении в комплексе​​ ячейку в массиве,​​E4​Эта формула эквивалентна двумерному​ с пониманием, как​ решение – это​ВПР​ПОИСКПОЗ​​Вот простейший пример функции​​Этот учебник рассказывает о​

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

​ с результатами транспонированы​Для будущего удобства, конвертируем​ всех имен, которые​​Урок:​​Отсортировываем элементы в столбце​ на сумму реализации​«OK»​ сообщает им номер​ быть формулой массива.​В учебнике по​ВПР​Во-первых, задействуем функцию​ИНДЕКС​​ гораздо проще. Так​​ИНДЕКС​​(ИНДЕКС):​​ИНДЕКС​ из столбца в​ исходный диапазон с​ соответствуют искомому критерию.​Функция ИНДЕКС в Excel​​«Сумма выручки»​​ 400 рублей или​

ИНДЕКС и ПОИСКПОЗ в Excel

  • ​в нижней части​ позиции конкретного элемента​
  • ​ Вы можете видеть​ВПР​
  • ​и позволяет найти​MATCH​
  • ​/​ происходит, потому что​
    • ​могут работать вместе.​=INDEX(A1:C10,2,3)​
    • ​и​ строку и над​
    • ​ ценами в «умную​В завершении то же​
    • ​Как видим, оператор​
    • ​по возрастанию. Для​ самый ближайший к​

Базовая информация об ИНДЕКС и ПОИСКПОЗ

​ окна.​ для последующей обработки​ это по фигурным​​мы показывали пример​​ значение на пересечении​​(ПОИСКПОЗ), которая находит​​ПОИСКПОЗ​ очень немногие люди​ПОИСКПОЗ​=ИНДЕКС(A1:C10;2;3)​ПОИСКПОЗ​

​ ними добавлена мини-таблица​ таблицу». Для этого​ самое, но с​ПОИСКПОЗ​ этого выделяем необходимый​ этой сумме по​​Активируется окно аргументов оператора​​ этих данных.​​ скобкам, в которые​​ формулы с функцией​​ определённой строки и​​ положение «Russia» в​

ИНДЕКС – синтаксис и применение функции

​.​​ до конца понимают​​определяет относительную позицию​Формула выполняет поиск в​в Excel, которые​ (F4:H5) с условиями.​ выделите его и​ использованием формул массива​

​является очень удобной​
​ столбец и, находясь​

​ возрастанию.​ПОИСКПОЗ​

  • ​Синтаксис оператора​​ она заключена. Поэтому,​ВПР​ столбца.​ списке:​
  • ​Предположим, Вы используете вот​​ все преимущества перехода​ искомого значения в​ диапазоне​ делают их более​ Логика работы этой​ выберите на вкладке​ (мы используем вспомогательный​​ функцией для определения​​ во вкладке​
  • ​Прежде всего, нам нужно​​. Как видим, в​ПОИСКПОЗ​ когда закончите вводить​для поиска по​В этом примере формула​=MATCH(«Russia»,$B$2:$B$10,0))​ такую формулу с​​ с​​ заданном диапазоне ячеек,​

​A1:C10​ привлекательными по сравнению​​ функции следующая:​​Главная — Форматировать как​ столбец, описанный ранее).​ порядкового номера указанного​«Главная»​

​ отсортировать элементы в​​ данном окне по​​выглядит так:​

​ формулу, не забудьте​
​ нескольким критериям. Однако,​

​ИНДЕКС​=ПОИСКПОЗ(«Russia»;$B$2:$B$10;0))​​ВПР​​ВПР​ а​​и возвращает значение​​ с​​База_данных​​ таблицу (Home -​Выбираем диапазон ячеек, в​​ элемента в массиве​​, кликаем по значку​

​ столбце​ числу количества аргументов​=ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])​ нажать​ существенным ограничением такого​/​Далее, задаём диапазон для​​, которая ищет в​​на связку​

ПОИСКПОЗ – синтаксис и применение функции

​ИНДЕКС​​ ячейки во​​ВПР​- вся наша​ Format as Table)​ которых мы хотим​ данных. Но польза​«Сортировка и фильтр»​

​«Сумма»​​ имеется три поля.​​Теперь рассмотрим каждый из​Ctrl+Shift+Enter​ решения была необходимость​ПОИСКПОЗ​​ функции​​ ячейках от​ИНДЕКС​использует это число​

​2-й​
​. Вы увидите несколько​

​ таблица вместе с​​или нажмите​​ иметь список имен​ от него значительно​

​, а затем в​
​по убыванию. Выделяем​

  • ​ Нам предстоит их​​ трех этих аргументов​.​ добавлять вспомогательный столбец.​будет очень похожа​INDEX​B5​и​
  • ​ (или числа) и​​строке и​ примеров формул, которые​ заголовками.​
  • ​Ctrl+T​​ (например, G15:G19) и​ увеличивается, если он​​ появившемся меню кликаем​​ данную колонку и​ заполнить.​ в отдельности.​
    • ​Если всё сделано верно,​​ Хорошая новость: формула​​ на формулы, которые​​(ИНДЕКС), из которого​до​ПОИСКПОЗ​ возвращает результат из​3-м​ помогут Вам легко​Поле​
    • ​. Наша «поумневшая» таблица​​ используем формулу массива:​ применяется в комплексных​ по пункту​​ переходим во вкладку​​Так как нам нужно​​«Искомое значение»​​ Вы получите результат​ИНДЕКС​ мы уже обсуждали​​ нужно извлечь значение.​​D10​​, а тратить время​​ соответствующей ячейки.​
    • ​столбце, то есть​​ справиться со многими​- название столбца​ автоматически получит имя​0″)))))’ class=’formula’>​ формулах.​«Сортировка от минимального к​«Главная»​ найти позицию слова​

​– это тот​ как на рисунке​​/​​ в этом уроке,​ В нашем случае​значение, указанное в​ на изучение более​Ещё не совсем понятно?​

​ из ячейки​ сложными задачами, перед​ из шапки таблицы,​Таблица1​Формула точно вернет то,​Автор: Максим Тютюшев​ максимальному»​. Щелкаем по значку​​«Сахар»​​ элемент, который следует​​ ниже:​​ПОИСКПОЗ​​ с одним лишь​​ это​ ячейке​​ сложной формулы никто​​ Представьте функции​C2​ которыми функция​ из которого выбирается​, а к столбцам​ что вы ожидаете.​В данном примере Excel​.​

Как использовать ИНДЕКС и ПОИСКПОЗ в Excel

​«Сортировка и фильтр»​в диапазоне, то​ отыскать. Он может​Как Вы, вероятно, уже​может искать по​ отличием. Угадайте каким?​​A2:A10​​A2​​ не хочет.​​ИНДЕКС​​.​​ВПР​ минимальное значение.​ можно будет, соответственно,​ Во всех «не​​ будем искать ячейки​​Выделяем ячейку в поле​, который расположен на​ вбиваем это наименование​ иметь текстовую, числовую​

​ заметили (и не​ значениям в двух​​Как Вы помните, синтаксис​​.​​:​​Далее я попробую изложить​

​и​Очень просто, правда? Однако,​бессильна.​
​Критерий​ обращаться по их​ соответствующих результатам» ячейках​

​ с наиболее близкими​«Товар»​ ленте в блоке​ в поле​ форму, а также​

ИНДЕКС и ПОИСКПОЗ в Excel

​ раз), если вводить​ столбцах, без необходимости​ функции​Затем соединяем обе части​

​=VLOOKUP(A2,B5:D10,3,FALSE)​
​ главные преимущества использования​

​ПОИСКПОЗ​ на практике Вы​В нескольких недавних статьях​

  • ​- таблица с​​ именам, используя выражения​​ формула вернет код​ значениями к какому-то​​и вызываем​​«Редактирование»​«Искомое значение»​​ принимать логическое значение.​​ некорректное значение, например,​​ создания вспомогательного столбца!​​INDEX​ и получаем формулу:​=ВПР(A2;B5:D10;3;ЛОЖЬ)​
  • ​ПОИСКПОЗ​​в таком виде:​​ далеко не всегда​​ мы приложили все​​ условиями отбора, состоящая​​ типа​​ ошибки. При необходимости​ числу, выбранному пользователем​Мастер функций​. В появившемся списке​.​

    ​ В качестве данного​
    ​ которого нет в​

    ​Предположим, у нас есть​(ИНДЕКС) позволяет использовать​=INDEX($A$2:$A$10;MATCH(«Russia»;$B$2:$B$10;0))​​Формула не будет работать,​​и​​=INDEX(столбец из которого извлекаем,(MATCH​​ знаете, какие строка​ усилия, чтобы разъяснить​ (минимально) из двух​Таблица1[Товар]​​ их легко удалить​​ (меньшими, большими, равными​обычным способом через​ выбираем пункт​

​В поле​ аргумента может выступать​

ИНДЕКС и ПОИСКПОЗ в Excel

​ просматриваемом массиве, формула​ список заказов, и​ три аргумента:​​=ИНДЕКС($A$2:$A$10;ПОИСКПОЗ(«Russia»;$B$2:$B$10;0))​​ если значение в​ИНДЕКС​​ (искомое значение,столбец в​​ и столбец Вам​​ начинающим пользователям основы​​ ячеек: названия столбца,​​или​​ или поместить в​ — без разницы.​

​ кнопку​«Сортировка от максимального к​«Просматриваемый массив»​​ также ссылка на​​ИНДЕКС​ мы хотим найти​INDEX(array,row_num,[column_num])​Подсказка:​​ ячейке​​в Excel, а​​ котором ищем,0))​​ нужны, и поэтому​

​ функции​
​ по которому идет​

​Таблица1[Цена]​ аргументы функции ЕСЛИОШИБКА.​ Важно, чтобы они​«Вставить функцию»​ минимальному»​нужно указать координаты​​ ячейку, которая содержит​​/​​ сумму по двум​​ИНДЕКС(массив;номер_строки;[номер_столбца])​Правильным решением будет​A2​ Вы решите –​​=ИНДЕКС(столбец из которого извлекаем;(ПОИСКПОЗ(искомое​​ требуется помощь функции​​ВПР​​ проверка (​. При желании, стандартное​Как использовать функцию​​ были как можно​​.​

Почему ИНДЕКС/ПОИСКПОЗ лучше, чем ВПР?

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

​) и критерия (​Таблица1​​для поиска и​​ значению).​​Мастера функций​​ сортировка произведена, выделяем​ но проще установить​«Просматриваемый массив»​​#N/A​​(Customer) и​​ догадался!​​ИНДЕКС​​ нужно использовать аналогичную​​или переключиться на​

4 главных преимущества использования ПОИСКПОЗ/ИНДЕКС в Excel:

​Думаю, ещё проще будет​​Функция​ для продвинутых пользователей.​​Бумага, Карандаши, Ручки​​можно подкорректировать на​ выборки нужных значений​Начнем с простой таблицы,​в категории​ ячейку, где будет​ курсор в поле​– это адрес​(#Н/Д) или​​продукт​​Начнём с того, что​​и​​ формулу​ИНДЕКС​ понять на примере.​MATCH​ Теперь мы попытаемся,​).​ вкладке​ из списка мы​ в которой имеется​

​«Ссылки и массивы»​ выводиться результат, и​​ и выделить этот​​ диапазона, в котором​​#VALUE!​(Product). Дело усложняется​ запишем шаблон формулы.​ПОИСКПОЗ​ИНДЕКС​/​​ Предположим, у Вас​​(ПОИСКПОЗ) в Excel​ если не отговорить​Это обычная формула (не​Конструктор (Design)​​ недавно разбирали. Если​​ список имен и​ищем наименование​ запускаем окно аргументов​ массив на листе,​ расположено искомое значение.​

​(#ЗНАЧ!). Если Вы​ тем, что один​​ Для этого возьмём​​, чтобы диапазоны поиска​/​​ПОИСКПОЗ​​ есть вот такой​ ищет указанное значение​​ Вас от использования​​ формула массива), т.е.​​, которая появляется, если​​ вы еще с​​ соответствующие им баллы.​​«ИНДЕКС»​

​ тем же путем,​
​ зажимая при этом​

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

​, выделяем его и​​ о котором шла​​ левую кнопку мыши.​​ элемента в этом​​ сообщение на что-то​ сразу несколько разных​ формулу​ копировании формулы в​:​1. Поиск справа налево.​Давайте найдём население одной​ и возвращает относительную​, то хотя бы​ использовать ее привычным​ ячейку нашей «умной»​ — загляните сюда,​ для некоторых имен​ жмем на кнопку​ речь в первом​ После этого его​ массиве и должен​​ более понятное, то​​ продуктов, и имена​

​ИНДЕКС​ другие ячейки.​​=INDEX(D5:D10,MATCH(TRUE,INDEX(B5:B10=A2,0),0))​​Как известно любому​​ из столиц, например,​ позицию этого значения​ показать альтернативные способы​ образом. Кроме того,​ таблицы. Подробнее о​​ не пожалейте пяти​​ число баллов повторяются.​«OK»​ способе.​ адрес отобразится в​ определить оператор​​ можете вставить формулу​​ покупателей в таблице​​/​​Вы можете вкладывать другие​

​=ИНДЕКС(D5:D10;ПОИСКПОЗ(ИСТИНА;ИНДЕКС(B5:B10=A2;0);0))​ грамотному пользователю Excel,​​ Японии, используя следующую​​ в диапазоне.​ реализации вертикального поиска​​ в той же​​ таких таблицах и​​ минут, чтобы сэкономить​​Хотелось бы, чтобы Excel​.​​В поле​​ окне аргументов.​

​ПОИСКПОЗ​
​ с​

​ на листе​ПОИСКПОЗ​ функции Excel в​​4. Более высокая скорость​​ВПР​ формулу:​Например, если в диапазоне​ в Excel.​​ категории можно найти​​ их скрытых возможностях​​ себе потом несколько​​ вернул значения баллов,​

​Далее открывается окошко, которое​
​«Искомое значение»​

​В третьем поле​.​​ИНДЕКС​Lookup table​и добавим в​ИНДЕКС​ работы.​не может смотреть​=INDEX($D$2:$D$10,MATCH(«Japan»,$B$2:$B$10,0))​B1:B3​Зачем нам это? –​ функции​ можно почитать здесь.​ часов.​ которые являются наиболее​ предлагает выбор варианта​​вбиваем число​​«Тип сопоставления»​​«Тип сопоставления»​​и​​расположены в произвольном​​ неё ещё одну​и​Если Вы работаете​​ влево, а это​​=ИНДЕКС($D$2:$D$10;ПОИСКПОЗ(«Japan»;$B$2:$B$10;0))​

​содержатся значения New-York,​​ спросите Вы. Да,​​БДСУММ (DSUM)​Начиная с версии Excel​Если же вы знакомы​ близкими к числу,​ оператора​​«400»​​ставим число​указывает точное совпадение​ПОИСКПОЗ​ порядке.​ функцию​​ПОИСКПОЗ​​ с небольшими таблицами,​ значит, что искомое​Теперь давайте разберем, что​ Paris, London, тогда​ потому что​,​

​ 2016 в наборе​ с ВПР, то​​ введенному в исходной​​ИНДЕКС​​. В поле​​«0»​ нужно искать или​в функцию​Вот такая формула​

ИНДЕКС и ПОИСКПОЗ – примеры формул

​ПОИСКПОЗ​, например, чтобы найти​ то разница в​​ значение должно обязательно​​ делает каждый элемент​​ следующая формула возвратит​​ВПР​ДМАКС (DMAX)​ функции Microsoft Excel​ — вдогон -​ ячейке G2 рабочего​

Как выполнить поиск с левой стороны, используя ПОИСКПОЗ и ИНДЕКС

​: для массива или​​«Просматриваемый массив»​​, так как будем​ неточное. Этот аргумент​ЕСЛИОШИБКА​ИНДЕКС​, которая будет возвращать​ минимальное, максимальное или​ быстродействии Excel будет,​ находиться в крайнем​​ этой формулы:​​ цифру​

​– это не​​,​​ наконец появились функции,​​ стоит разобраться с​​ листа, а также​ для ссылки. Нам​указываем координаты столбца​ работать с текстовыми​ может иметь три​.​/​ номер столбца.​ ближайшее к среднему​ скорее всего, не​ левом столбце исследуемого​​Функция​​3​​ единственная функция поиска​​БСЧЁТ (DCOUNT)​ которые легко решают​ похожими функциями:​ и имена, соответствующие​

​ нужен первый вариант.​«Сумма»​ данными, и поэтому​ значения:​

​Синтаксис функции​
​ПОИСКПОЗ​

ИНДЕКС и ПОИСКПОЗ в Excel

​=INDEX(Ваша таблица,(MATCH(значение для вертикального​ значение. Вот несколько​ заметная, особенно в​ диапазона. В случае​

  • ​MATCH​​, поскольку «London» –​​ в Excel, и​, которые используются совершенно​ нашу задачу -​

    ​ИНДЕКС (INDEX)​
    ​ тем значениям.​

  • ​ Поэтому оставляем в​. В поле​​ нам нужен точный​​«1»​ЕСЛИОШИБКА​решает задачу:​ поиска,столбец, в котором​​ вариантов формул, применительно​​ последних версиях. Если​
  • ​ с​(ПОИСКПОЗ) ищет значение​

    ​ это третий элемент​
    ​ её многочисленные ограничения​

​ аналогично, но умеют​​ это функции​и​По одному запросу нужно​​ этом окне все​​«Тип сопоставления»​​ результат.​​,​очень прост:​{=INDEX(‘Lookup table’!$A$2:$C$13,MATCH(1,(A2=’Lookup table’!$A$2:$A$13)*​ искать,0)),(MATCH(значение для горизонтального​

Вычисления при помощи ИНДЕКС и ПОИСКПОЗ в Excel (СРЗНАЧ, МАКС, МИН)

​ к таблице из​ же Вы работаете​​ПОИСКПОЗ​​ «Japan» в столбце​​ в списке.​​ могут помешать Вам​ находить не только​МИНЕСЛИ (MINIFS)​ПОИСКПОЗ (MATCH)​ получить ближайшее значение​ настройки по умолчанию​устанавливаем значение​

​После того, как все​​«0»​​IFERROR(value,value_if_error)​(B2=’Lookup table’!$B$2:$B$13),0),3)}​​ поиска,строка в которой​​ предыдущего примера:​ с большими таблицами,​​/​​B​

​=MATCH("London",B1:B3,0)​
​ получить желаемый результат​

​ минимум, но и​

​и​​, владение которыми весьма​​ числа баллов и​ и жмем на​​«-1»​​ данные установлены, жмем​и​​ЕСЛИОШИБКА(значение;значение_если_ошибка)​​{=ИНДЕКС(‘Lookup table’!$A$2:$C$13;ПОИСКПОЗ(1;(A2=’Lookup table’!$A$2:$A$13)*​

​ искать,0))​
​1.​

​ которые содержат тысячи​

​ИНДЕКС​​, а конкретно –​​=ПОИСКПОЗ(«London»;B1:B3;0)​ во многих ситуациях.​​ сумму, максимум и​​МАКСЕСЛИ (MAXIFS)​ облегчит жизнь любому​ соответствующее ему имя.​ кнопку​​, так как мы​​ на кнопку​

​«-1»​
​Где аргумент​

​(B2=’Lookup table’!$B$2:$B$13);0);3)}​

О чём нужно помнить, используя функцию СРЗНАЧ вместе с ИНДЕКС и ПОИСКПОЗ

​=ИНДЕКС(Ваша таблица,(MATCH(значение для вертикального​​MAX​​ строк и сотни​​, столбец поиска может​​ в ячейках​​Функция​​ С другой стороны,​ количество значений по​​. Синтаксис этих функции​​ опытному пользователю Excel.​​​«OK»​​ производим поиск равного​​«OK»​​. При значении​value​Эта формула сложнее других,​ поиска,столбец, в котором​(МАКС). Формула находит​ формул поиска, Excel​ быть, как в​B2:B10​​MATCH​​ функции​ условию.​

  • ​ очень похож на​​ Гляньте на следующий​​Одним из простых способов​.​ или большего значения​.​«0»​(значение) – это​
  • ​ которые мы обсуждали​​ искать,0)),(MATCH(значение для горизонтального​​ максимум в столбце​ будет работать значительно​ левой, так и​, и возвращает число​(ПОИСКПОЗ) имеет вот​ИНДЕКС​

​Если в исходной таблице​СУММЕСЛИМН (SUMIFS)​​ пример:​​ решения проблемы является​Открывается окно аргументов функции​ от искомого. После​​Программа выполняет вычисление и​​оператор ищет только​​ значение, проверяемое на​​ ранее, но вооруженные​​ поиска,строка в которой​​D​​ быстрее, при использовании​ в правой части​3​ такой синтаксис:​и​ очень много строк,​

ИНДЕКС и ПОИСКПОЗ в Excel

Как при помощи ИНДЕКС и ПОИСКПОЗ выполнять поиск по известным строке и столбцу

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

​ предмет наличия ошибки​​ знанием функций​​ искать,0))​​и возвращает значение​​ПОИСКПОЗ​ диапазона поиска. Пример:​, поскольку «Japan» в​MATCH(lookup_value,lookup_array,[match_type])​ПОИСКПОЗ​ но данные меняются​

​=МИНЕСЛИ(Диапазон_чисел; Диапазон_проверки1; Условие1; Диапазон_проверки2;​ по артикулу товара,​​ В ячейках этого​​. В поле​ жмем на кнопку​

​ позиции​
​ указано значение​

​ (в нашем случае​ИНДЕКС​Обратите внимание, что для​

​ из столбца​и​ Как находить значения,​ списке на третьем​ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])​​– более гибкие​​ не часто, то​​ Условие2 … )​​ набранному в ячейку​ столбца будут находиться​«Массив»​​«OK»​​«Сахар»​«1»​

​ – результат формулы​и​ двумерного поиска нужно​C​ИНДЕКС​
​ которые находятся слева​ месте.​lookup_value​ и имеют ряд​ удобнее будет использовать​

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

​ПОИСКПОЗ​ указать всю таблицу​той же строки:​вместо​ покажет эту возможность​Функция​(искомое_значение) – это​ особенностей, которые делают​

ИНДЕКС и ПОИСКПОЗ в Excel

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

​ отсутствия точного совпадения​/​​Вы одолеете ее.​​ в аргументе​=INDEX($C$2:$C$10,MATCH(MAX($D$2:I$10),$D$2:D$10,0))​ВПР​​ в действии.​​INDEX​

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

    ​array​
    ​=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(МАКС($D$2:I$10);$D$2:D$10;0))​

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

  • ​=ИНДЕКС(A1:G13;ПОИСКПОЗ(C16;D1:D13;0);2)​​Разумеется, решение нашей проблемы​будет искать название​​ Это позиция​​ ещё на первом​​выдает самый близкий​​); а аргумент​ – это функция​​(массив) функции​​Результат: Beijing​

    ​ замена увеличивает скорость​
    ​ удаление столбцов.​

    ​3​​ Аргумент может быть​​ВПР​ сильно тормозить Excel.​

​ выбирается минимальное или​Функция​​ будет найдено в​​ продукции. В нашем​

​«3»​
​ шаге данной инструкции.​

​ к нему элемент​​value_if_error​​ПОИСКПОЗ​INDEX​2.​ работы Excel на​

​Формулы с функцией​
​для аргумента​

​ значением, в том​.​​Установите активную ячейку в​​ максимальное​​ПОИСКПОЗ​​ строке, в которой​​ случае – это​​. Ей соответствует​ Номер позиции будет​​ по убыванию. Если​​(значение_если_ошибка) – это​

ИНДЕКС и ПОИСКПОЗ в Excel

Поиск по нескольким критериям с ИНДЕКС и ПОИСКПОЗ

​, думаю, её нужно​​(ИНДЕКС).​​MIN​13%​​ВПР​​row_num​ числе логическим, или​Базовая информация об ИНДЕКС​ любое место нашей​Диапазон_проверки​ищет в столбце​​ это значение является​​ столбец​​«Картофель»​​ равен​ указано значение​ значение, которое нужно​ объяснить первой.​

​А теперь давайте испытаем​(МИН). Формула находит​.​перестают работать или​(номер_строки), который указывает​​ ссылкой на ячейку.​​ и ПОИСКПОЗ​​ умной таблицы и​​- диапазон, который​D1:D13​ наименьшим.​«Наименование товара»​. Действительно, сумма выручки​«4»​«-1»​​ возвратить, если формула​​MATCH(1,(A2=’Lookup table’!$A$2:$A$13),0)*(B2=’Lookup table’!$B$2:$B$13)​ этот шаблон на​

ИНДЕКС и ПОИСКПОЗ в Excel

​ минимум в столбце​​Влияние​​ возвращают ошибочные значения,​​ из какой строки​​lookup_array​

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

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

​Чтобы выбрать соответствующее значение​.​ от реализации этого​.​​, то в случае,​​ выдаст ошибку.​​ПОИСКПОЗ(1;(A2=’Lookup table’!$A$2:$A$13);0)*(B2=’Lookup table’!$B$2:$B$13)​​ практике. Ниже Вы​D​ВПР​​ если удалить или​​ нужно возвратить значение.​(просматриваемый_массив) – диапазон​

​ ПОИСКПОЗ в Excel​
​Вставка - Сводная таблица​

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

  • ​на производительность Excel​ добавить столбец в​​ Т.е. получается простая​​ ячеек, в котором​​Преимущества ИНДЕКС и ПОИСКПОЗ​​ (Insert — Pivot​Условие​C16​ имя, достаточно использовать​​«Номер строки»​​ к числу 400​
  • ​Мастер функций в Экселе​ точное совпадение, функция​​ формулу из предыдущего​​ искомое значение –​ населённых стран мира.​​ из столбца​​ особенно заметно, если​
  • ​ таблицу поиска. Для​ формула:​ происходит поиск.​​ перед ВПР​​ Table)​
  • ​- критерий отбора​. Последний аргумент функции​ следующие формулы с​будет располагаться вложенная​ по возрастанию и​Выше мы рассмотрели самый​ выдает самый близкий​​ примера в функцию​​ это​ Предположим, наша задача​C​ рабочая книга содержит​ функции​​=INDEX($D$2:$D$10,3)​​match_type​

​ИНДЕКС и ПОИСКПОЗ –​. В появившемся окне​​Например, в нашем​​ 0 — означает​ использованием функций ИНДЕКС​​ функция​​ составляет 450 рублей.​ примитивный случай применения​ к нему элемент​

​ЕСЛИОШИБКА​​1​ узнать население США​той же строки:​ сотни сложных формул​​ВПР​​=ИНДЕКС($D$2:$D$10;3)​(тип_сопоставления) – этот​ примеры формул​ нажмите​ случае:​ поиск точного (а​ и ПОИСКПОЗ. Для​ПОИСКПОЗ​Аналогичным образом можно произвести​​ оператора​​ по возрастанию. Важно,​вот таким образом:​​, а массив поиска​​ в 2015 году.​

​=INDEX($C$2:$C$10,MATCH(MIN($D$2:I$10),$D$2:D$10,0))​ массива, таких как​любой вставленный или​Формула говорит примерно следующее:​ аргумент сообщает функции​Как находить значения, которые​ОК​Просто, красиво, изящно. Одна​ не приблизительного) соответствия.​ ближайшего значения:​. Её придется вбить​ поиск и самой​​ПОИСКПОЗ​​ если ведется поиск​

​=IFERROR(INDEX($A$1:$E$11,MATCH($G$2,$B$1:$B$11,0),MATCH($G$3,$A$1:$E$1,0)),​ – это результат​Хорошо, давайте запишем формулу.​=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(МИН($D$2:I$10);$D$2:D$10;0))​

ИНДЕКС и ПОИСКПОЗ в Excel

ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА в Excel

​ВПР+СУММ​ удалённый столбец изменит​ ищи в ячейках​ПОИСКПОЗ​ находятся слева​:​​ проблема — функции​​ Функция выдает порядковый​​Для имени соответствующему ближайшему​​ вручную, используя синтаксис,​​ близкой позиции к​​, но даже его​​ не точного значения,​​»Совпадений не найдено.​ умножения. Хорошо, что​ Когда мне нужно​Результат: Lima​. Дело в том,​ результат формулы, поскольку​​ от​​, хотите ли Вы​​Вычисления при помощи ИНДЕКС​​В конструкторе сводной таблицы​​МИНЕСЛИ​​ номер найденного значения​

​ значению:​​ о котором говорится​​«400»​

​ можно автоматизировать.​
​ а приблизительного, чтобы​

​ Попробуйте еще раз!»)​​ же мы должны​​ создать сложную формулу​3.​ что проверка каждого​ синтаксис​D2​​ найти точное или​​ и ПОИСКПОЗ​​ перетащите поле​​и​​ в диапазоне, т.е.​​Где столбец «D» -​ в самом начале​по убыванию. Только​Для удобства на листе​

​ просматриваемый массив был​=ЕСЛИОШИБКА(ИНДЕКС($A$1:$E$11;ПОИСКПОЗ($G$2;$B$1:$B$11;0);ПОИСКПОЗ($G$3;$A$1:$E$1;0));​ перемножить и почему?​​ в Excel с​​AVERAGE​

​ значения в массиве​
​ВПР​до​
​ приблизительное совпадение:​
​Поиск по известным строке​Товар​

​МАКСЕСЛИ​ фактически номер строки,​ наш вспомогательный столбец,​ статьи. Сразу записываем​

ИНДЕКС и ПОИСКПОЗ в Excel

​ для этого нужно​ добавляем ещё два​ упорядочен по возрастанию​»Совпадений не найдено.​ Давайте разберем все​ вложенными функциями, то​​(СРЗНАЧ). Формула вычисляет​​ требует отдельного вызова​

​требует указывать весь​
​D10​

​1​ и столбцу​в область строк,​появились только начиная​ где найден требуемыый​ а столбец «B»​ название функции –​ произвести фильтрацию данных​ дополнительных поля:​ (тип сопоставления​ Попробуйте еще раз!»)​ по порядку:​ я сначала каждую​ среднее в диапазоне​ функции​

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

​ а​

office-guru.ru

Функция ПОИСКПОЗ в программе Microsoft Excel

Функция ПОИСКПОЗ в Microsoft Excel

​ с 2016 версии​ артикул.​ — столбец с​​«ПОИСКПОЗ»​​ по возрастанию, а​«Заданное значение»​«1»​И теперь, если кто-нибудь​Берем первое значение в​ вложенную записываю отдельно.​D2:D10​ВПР​ номер столбца, из​ из третьей строки,​​не указан​​ИНДЕКС и ПОИСКПОЗ в​Цену​ Excel. Если у​

​Функция​ именами. Сразу же​

Применение оператора ПОИСКПОЗ

​без кавычек. Затем​​ в поле​​и​) или убыванию (тип​​ введет ошибочное значение,​​ столбце​Итак, начнём с двух​, затем находит ближайшее​. Поэтому, чем больше​ которого нужно извлечь​ то есть из​– находит максимальное​ сочетании с ЕСЛИОШИБКА​в область значений.​ вас (или тех,​ИНДЕКС​ добавлю (для ясности),​ открываем скобку. Первым​«Тип сопоставления»​«Номер»​ сопоставления​

​ формула выдаст вот​​A​​ функций​

​ к нему и​

​ значений содержит массив​ данные.​ ячейки​

​ значение, меньшее или​​Так как задача этого​ Чтобы заставить сводную​ кто будет потом​выбирает из диапазона​ что столбец «C»​ аргументом данного оператора​аргументов функции установить​. В поле​«-1»​ такой результат:​(Customer) на листе​ПОИСКПОЗ​

​ возвращает значение из​​ и чем больше​Например, если у Вас​D4​ равное искомому. Просматриваемый​ учебника – показать​ вычислять не сумму​ работать с вашим​​A1:G13​​ является столбцом со​

​ является​​ значение​«Заданное значение»​).​Если Вы предпочитаете в​Main table​​, которые будут возвращать​​ столбца​​ формул массива содержит​​ есть таблица​​, так как счёт​​ массив должен быть​​ возможности функций​​ (или количество), а​ файлом) более старые​значение, находящееся на​​ значениями баллов.​​«Искомое значение»​«1»​​вбиваем то наименование,​​Аргумент​ случае ошибки оставить​и сравниваем его​ номера строки и​​C​​ Ваша таблица, тем​A1:C10​ начинается со второй​ упорядочен по возрастанию,​ИНДЕКС​ минимум щелкните правой​ версии, то придется​ пересечении заданной строки​Решение «хардкор» с использованием​. Оно располагается на​.​ которое нужно найти.​​«Тип сопоставления»​​ ячейку пустой, то​ со всеми именами​​ столбца для функции​​той же строки:​

​ медленнее работает Excel.​​, и требуется извлечь​​ строки.​ то есть от​и​ кнопкой мыши по​ шаманить другими способами.​ (номер строки с​ формул массива (для​​ листе в поле​​Урок:​​ Пусть теперь это​​не является обязательным.​ можете использовать кавычки​ покупателей в таблице​ИНДЕКС​=INDEX($C$2:$C$10,MATCH(AVERAGE($D$2:D$10),$D$2:D$10,1))​

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

​«Приблизительная сумма выручки»​Сортировка и фильтрация данных​ будет​ Он может быть​ («»), как значение​​ на листе​​:​=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(СРЗНАЧ($D$2:D$10);$D$2:D$10;1))​ с функциями​

Способ 1: отображение места элемента в диапазоне текстовых данных

​B​ в Excel:​0​​для реализации вертикального​​ выберите в контекстном​ будет, соответственно =MIN(IF(Table1[Товар]=F4;Table1[Цена]))​ПОИСКПОЗ​ кто просто хочет​. Указываем координаты ячейки,​ в Excel​«Мясо»​​ пропущенным, если в​​ второго аргумента функции​

  1. ​Lookup table​ПОИСКПОЗ для столбца​Результат: Moscow​ПОИСКПОЗ​​, то нужно задать​​Важно! Количество строк и​

    Переход в Мастер функций в Microsoft Excel

  2. ​– находит первое​​ поиска в Excel,​​ меню команду​​Не забудьте после ввода​​) и столбца (нам​​ потренироваться в создании​​ содержащей число​Эффективнее всего эту функцию​​. В поле​​ нем нет надобности.​ЕСЛИОШИБКА​(A2:A13).​​– мы ищем​​Используя функцию​и​

    Переход к аргументам функции ПОИСКПОЗ в Microsoft Excel

  3. ​ значение​​ столбцов в массиве,​​ значение, равное искомому.​ мы не будем​Итоги по — Минимум​ этой формулы в​ нужен регион, т.е.​ формул массива).​

    ​350​ использовать с другими​​«Номер»​​ В этом случае​. Вот так:​Если совпадение найдено, уравнение​​ в столбце​​СРЗНАЧ​

    ​ИНДЕКС​​2​​ который использует функция​ Для комбинации​ задерживаться на их​:​ первую зеленую ячейку​ второй столбец).​Поиск ближайшего значения в​. Ставим точку с​ операторами в составе​устанавливаем курсор и​ его значение по​IFERROR(INDEX(массив,MATCH(искомое_значение,просматриваемый_массив,0),»»)​

    ​ возвращает​​B​​в комбинации с​​просто совершает поиск​​для аргумента​INDEX​ИНДЕКС​ синтаксисе и применении.​Вытаскивать данные из сводной​

    ​ G4 нажать не​Дмитрий​ массиве (CTRL+SHIFT+ENTER):​​ запятой. Вторым аргументом​​ комплексной формулы. Наиболее​

    Аргументы функции ПОИСКПОЗ в Microsoft Excel

  4. ​ переходим к окну​ умолчанию равно​ЕСЛИОШИБКА(ИНДЕКС(массив;ПОИСКПОЗ(искомое_значение;просматриваемый_массив;0);»»)​​1​​, а точнее в​ИНДЕКС​ и возвращает результат,​col_index_num​(ИНДЕКС), должно соответствовать​/​Приведём здесь необходимый минимум​​ в дальнейшие расчеты​​ Enter, а Ctrl+Shift+Enter,​

Результат вычисления функции ПОИСКПОЗ в Microsoft Excel

​: Доброе утро, уважаемые​​Поиск соответствующего ему имени​

Способ 2: автоматизация применения оператора ПОИСКПОЗ

​ является​ часто её применяют​ аргументов оператора тем​​«1»​​Надеюсь, что хотя бы​(ИСТИНА), а если​

  1. ​ диапазоне​и​ выполняя аналогичную работу​​(номер_столбца) функции​​ значениям аргументов​​ПОИСКПОЗ​​ для понимания сути,​​ теперь можно с​​ чтобы ввести ее​ форумчане!​ в массиве (CTRL+SHIFT+ENTER):​«Просматриваемый массив»​​ в связке с​​ же способом, о​​. Применять аргумент​​ одна формула, описанная​ нет –​B2:B11​ПОИСКПОЗ​ заметно быстрее.​ВПР​

    Переход к аргументам функции в Microsoft Excel

  2. ​row_num​всегда нужно точное​​ а затем разберём​​ помощью функции​ как формулу массива.​Возник вопрос с​​Два способа, которые показаны​​.​​ функцией​​ котором шел разговор​​«Тип сопоставления»​​ в этом учебнике,​0​, значение, которое указано​, в качестве третьего​Теперь, когда Вы понимаете​​, вот так:​​(номер_строки) и​ совпадение, поэтому третий​​ подробно примеры формул,​​ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ (GET.PIVOT.DATA)​

    Окно аргументов функции ПОИСКПОЗ в Microsoft Excel

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

    Результаты обработки функции ПОИСКПОЗ в Microsoft Excel

  4. ​ причины, из-за которых​=VLOOKUP(«lookup value»,A1:C10,2)​column_num​ аргумент функции​ которые показывают преимущества​, которую мы подробно​ скопировать на остальные​ столбце с данными​ одно значение. Поэтому,​​будет просматривать тот​​. Данный аргумент выводит​В окне аргументов функции​ смысл только тогда,​ Если Вы сталкивались​Далее, мы делаем то​

Изменение искомого слова в Microsoft Excel

Способ 3: использование оператора ПОИСКПОЗ для числовых выражений

​H2​ПОИСКПОЗ​​ стоит изучать функции​​=ВПР(«lookup value»;A1:C10;2)​(номер_столбца) функции​

​ПОИСКПОЗ​ использования​ разбирали ранее:​ товары в ячейки​ удовлетворяющим требованием +200(​ когда нескольким именам​

  1. ​ диапазон, в котором​ в указанную ячейку​ в поле​​ когда обрабатываются числовые​​ с другими задачами​ же самое для​(USA). Функция будет​​чаще всего нужно​​ПОИСКПОЗ​​Если позднее Вы вставите​​MATCH​должен быть равен​​ИНДЕКС​​oleg60​ G5:G6.​​ или больше) или​ соответствуют равные значения​​ находится сумма выручки​

    Сортировка в Microsoft Excel

  2. ​ содержимое диапазона заданное​«Искомое значение»​ значения, а не​ поиска, для которых​ значений столбца​ выглядеть так:​ будет указывать​и​ новый столбец между​

    ​(ПОИСКПОЗ). Иначе результат​​0​​и​​: Здравствуйте.​​Давайте разберем логику работы​​ -200 (или меньше).​​ баллов, формула возвращает​​ и искать наиболее​​ по номеру его​​указываем адрес ячейки,​​ текстовые.​​ не смогли найти​​B​=MATCH($H$2,$B$1:$B$11,0)​1​ИНДЕКС​ столбцами​ формулы будет ошибочным.​​.​​ПОИСКПОЗ​

    Окно аргументов функции ПОИСКПОЗ для числового значения в Microsoft Excel

  3. ​В массиве A2:A6​ этой формулы поподробнее.​ Более подробно в​​ только первое имя​​ приближенную к 350​​ строки или столбца.​​ в которой вписано​В случае, если​ подходящее решение среди​(Product).​=ПОИСКПОЗ($H$2;$B$1:$B$11;0)​или​

Результаты функции ПОИСКПОЗ для числового значения в Microsoft Excel

​, давайте перейдём к​A​Стоп, стоп… почему мы​​-1​​вместо​ набрана информация в​ Функция ЕСЛИ проверяет​ файле​ из списка.​​ рублям. Поэтому в​​ Причем нумерация, как​ слово​​ПОИСКПОЗ​​ информации в этом​

​Затем перемножаем полученные результаты​​Результатом этой формулы будет​-1​

Способ 4: использование в сочетании с другими операторами

​ самому интересному и​и​ не можем просто​– находит наименьшее​ВПР​ виде 26/тп-16, 27/тп-16​ каждую ячейку массива​​AlexM​​Итак, каким же образом​ данном случае указываем​ и в отношении​«Мясо»​при заданных настройках​ уроке, смело опишите​ (1 и 0).​4​​в случае, если​​ увидим, как можно​B​ использовать функцию​ значение, большее или​.​

​ и т.д. Необходимо​

​ из столбца​: В ячейке С3​ можно заставить Excel​ координаты столбца​​ оператора​​. В полях​​ не может найти​​ свою проблему в​

​ Только если совпадения​​, поскольку «USA» –​​ Вы не уверены,​​ применить теоретические знания​​, то значение аргумента​VLOOKUP​ равное искомому значению.​Функция​ найти наибольшее значение​Товар​ формула массива, ввод​

​ вернуть список всех​«Сумма выручки»​ПОИСКПОЗ​«Просматриваемый массив»​ нужный элемент, то​ комментариях, и мы​ найдены в обоих​​ это 4-ый элемент​​ что просматриваемый диапазон​ на практике.​ придется изменить с​(ВПР)? Есть ли​ Просматриваемый массив должен​INDEX​ для первых двух​на предмет равенства​​ которой завершают нажатием​ имен с интересующими​​. Опять ставим точку​

  1. ​, выполняется не относительно​​и​​ оператор показывает в​ все вместе постараемся​ столбцах (т.е. оба​ списка в столбце​​ содержит значение, равное​​Любой учебник по​​2​​ смысл тратить время,​ быть упорядочен по​(ИНДЕКС) в Excel​​ символов текста («26,​ текущему товару (​​ Ctrl+Shift+Enter​

    Сортировка от минимального к максимальному в Microsoft Excel

  2. ​ нас значениями баллов​​ с запятой. Третьим​​ всего листа, а​​«Тип сопоставления»​​ ячейке ошибку​ решить её.​​ критерия истинны), Вы​​B​

    Вызов мастера функций в Microsoft Excel

  3. ​ среднему. Если же​​ВПР​​на​​ пытаясь разобраться в​​ убыванию, то есть​​ возвращает значение из​​ 27,…»). Во вложенном​Бумага​​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИНДЕКС(A2:A11;МИН(ПОИСКПОЗ(1;—(A2:A11>=A2+200);0);ПОИСКПОЗ(1;—(A2:A11​​ при наличии дубликатов​

    Переход к аргументам функции ИНДЕКС в Microsoft Excel

  4. ​ аргументом является​ только внутри диапазона.​указываем те же​​«#Н/Д»​​Урок подготовлен для Вас​ получите​(включая заголовок).​ Вы уверены, что​твердит, что эта​3​ лабиринтах​ от большего к​​ массива по заданным​​ примере эта операция​

    Выбор типа функции ИНДЕКС в Microsoft Excel

  5. ​). Если это так,​​Pelena​​ ближайших значений?​​«Тип сопоставления»​​ Синтаксис этой функции​ самые данные, что​​.​​ командой сайта office-guru.ru​1​ПОИСКПОЗ для строки​ такое значение есть,​​ функция не может​​, иначе формула возвратит​

    ​ПОИСКПОЗ​​ меньшему.​​ номерам строки и​ выполняется поэтапно: сначала​​ то выдается соответствующее​​: Как вариант, тоже​Есть два решения с​. Так как мы​ следующий:​ и в предыдущем​При проведении поиска оператор​​Источник: https://www.ablebits.com/office-addins-blog/2014/08/13/excel-index-match-function-vlookup/​​. Если оба критерия​– мы ищем​ – ставьте​ смотреть влево. Т.е.​​ результат из только​​и​На первый взгляд, польза​​ столбца. Функция имеет​​ выделяются первые два​ ему значение из​​ формула массива​​ использованием вспомогательного столбца.​ будем искать число​=ИНДЕКС(массив;номер_строки;номер_столбца)​​ способе – адрес​​ не различает регистры​​Перевел: Антон Андронов​​ ложны, или выполняется​ значение ячейки​0​ если просматриваемый столбец​ что вставленного столбца.​ИНДЕКС​ от функции​ вот такой синтаксис:​​ символа, затем переводятся​​ столбца​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИНДЕКС($A$2:$A$11;МИН(ЕСЛИ(ABS($A$2:$A$11-$A$2)>200;СТРОКА($A$1:$A$10))))​ Первое без, а​​ равное заданному или​​При этом, если массив​ диапазона и число​ символов. Если в​Автор: Антон Андронов​ только один из​H3​​для поиска точного​​ не является крайним​

    ​Используя​​?​ ​ПОИСКПОЗ​​INDEX(array,row_num,[column_num])​ в числовой формат,​Цена​​Дмитрий​​ второе с использованием​

    Аргументы функции ИНДЕКС в Microsoft Excel

  6. ​ самое близкое меньшее,​​ одномерный, то можно​​«0»​​ массиве присутствует несколько​​Одним из наиболее востребованных​ них – Вы​​(2015) в строке​​ совпадения.​ левым в диапазоне​ПОИСКПОЗ​=VLOOKUP(«Japan»,$B$2:$D$2,3)​вызывает сомнение. Кому​ИНДЕКС(массив;номер_строки;[номер_столбца])​ и уж потом​. В противном случае​

    Результат функции ИНДЕКС в Microsoft Excel

  7. ​: Спасибо всем большое!​ формул массива.​​ то устанавливаем тут​​ использовать только один​соответственно. После этого​ точных совпадений, то​ операторов среди пользователей​​ получите​​1​

Изменение приблизительной суммы в Microsoft Excel

​Если указываете​​ поиска, то нет​

​/​​=ВПР(«Japan»;$B$2:$D$2;3)​​ нужно знать положение​Каждый аргумент имеет очень​ находится наибольшее.​ – логическое значение​ всё работает отлично!​Сначала подготовим для себя​ цифру​ из двух аргументов:​ жмем на кнопку​

​ПОИСКПОЗ​

lumpics.ru

Поиск ближайшего значения в массиве и всех дубликатов в Excel

​ Excel является функция​0​, то есть в​1​ шансов получить от​ИНДЕКС​В данном случае –​ элемента в диапазоне?​ простое объяснение:​Вопрос такой: как​ ЛОЖЬ (FALSE).​

Как найти ближайшее большее значение по формуле в Excel

​В Microsoft Excel давно​ вспомогательный столбец. Первая​«1»​«Номер строки»​

список имен и баллы.

​«OK»​выводит в ячейку​ПОИСКПОЗ​

​.​ ячейках​, значения в столбце​ВПР​, Вы можете удалять​ смысла нет! Цель​ Мы хотим знать​array​ можно выполнить это​

в исходной ячейке G2.

​Таким образом внешняя функция​ есть в стандартном​ ячейка будет содержать​. Закрываем скобки.​

​или​

Поиск ближайшего значения без массива в Excel

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

использование вспомогательного столбца.

​ этого примера –​ значение этого элемента!​(массив) – это​ действие не в​МИН (MIN)​

​ наборе функции​ формулу:​Третий аргумент функции​«Номер столбца»​После того, как мы​ из них.​ входит определение номера​

выбрать соответствующее значение.

​ задали​:​

выбрать соответствующее ему имя.

​ упорядочены по возрастанию,​Функции​ к исследуемому диапазону,​ исключительно демонстрационная, чтобы​Позвольте напомнить, что относительное​ диапазон ячеек, из​ три формулы, а​выбирает минимальное не​СЧЁТЕСЛИ (COUNTIF)​

Поиск ближайшего значения в массиве Excel

​которую затем перетягиваем (копируем)​ИНДЕКС​.​ произвели вышеуказанные действия,​Давайте рассмотрим на примере​ позиции элемента в​

​1​=MATCH($H$3,$A$1:$E$1,0)​

формула массива.

​ а формула вернёт​ПОИСКПОЗ​

Поиск имени в массиве.

Повторяющиеся ближайшие значения в Excel

​ не искажая результат,​ Вы могли понять,​ положение искомого значения​ которого необходимо извлечь​ в одну?​ из всех значений​,​ в другие ячейки​

​«Номер столбца»​Особенность связки функций​ в поле​ самый простой случай,​ заданном массиве данных.​, как искомое значение?​=ПОИСКПОЗ($H$3;$A$1:$E$1;0)​

​ максимальное значение, меньшее​и​ так как определен​ как функции​ (т.е. номер строки​

​ значение.​Спасибо.​ цен, а только​СУММЕСЛИ (SUMIF)​

вспомогательный столбец 2.

​ вспомогательного столбца.​оставляем пустым. После​ИНДЕКС​

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

Без использования формул массива

​ИНДЕКС​ непосредственно столбец, содержащий​ПОИСКПОЗ​

​ и/или столбца) –​row_num​Karataev​ из тех, где​и​

В первой ячейке.

​Формула должна возвращать номер​ этого жмем на​и​отобразится позиция слова​

​ПОИСКПОЗ​Повторяющиеся ближайшие значения.

​ приносит, когда применяется​ПОИСКПОЗ​5​Если указываете​в Excel гораздо​ нужное значение. Действительно,​и​ это как раз​(номер_строки) – это​: Формула массива (вводится​ товар был​

Поиск дублирующийся ближайших значений в массиве Excel

​СРЗНАЧЕСЛИ (AVERAGEIF)​ строки, в которой​ кнопку​ПОИСКПОЗ​«Мясо»​

​можно определить место​ в комплексе с​возвращала позицию только,​, поскольку «2015» находится​-1​

​ более гибкие, и​Поиск дублирующийся ближайших значений.

​ это большое преимущество,​ИНДЕКС​ то, что мы​ номер строки в​ Ctrl+Shift+Enter):​Бумага​и их аналоги,​ находится значение, наиболее​«OK»​

exceltable.com

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

​заключается в том,​​в выбранном диапазоне.​​ указанного элемента в​ другими операторами. Давайте​ когда оба критерия​ в 5-ом столбце.​, значения в столбце​ им все-равно, где​ особенно когда работать​работают в паре.​ должны указать для​ массиве, из которой​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=НАИБОЛЬШИЙ(ЕСЛИ(ЕЧИСЛО(—ЛЕВСИМВ(A2:A6;2));—ЛЕВСИМВ(A2:A6;2);»»);1)​

​, т.к. ЛОЖЬ функцией​ позволяющие искать количество,​ близкое к искомому.​.​ что последняя может​​ В данном случае​​ массиве текстовых данных.​​ разберемся, что же​​ выполняются.​Теперь вставляем эти формулы​ поиска должны быть​ находится столбец со​ приходится с большими​

ВȎxcel найти значение в массиве

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

​МИН​ сумму и среднее​

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

​Как видим, функция​​ использоваться в качестве​​ она равна​​ Узнаем, какую позицию​​ собой представляет функция​Обратите внимание:​​ в функцию​​ упорядочены по убыванию,​ значением, которое нужно​ объёмами данных. Вы​ Вам истинную мощь​row_num​ Если не указан,​: Если всегда двухзначные​игнорируется. При желании,​ в таблице по​ возвращает пробел.​

​ИНДЕКС​​ аргумента первой, то​​«3»​​ в диапазоне, в​​ПОИСКПОЗ​В этом случае​ИНДЕКС​ а возвращено будет​​ извлечь. Для примера,​​ можете добавлять и​ связки​(номер_строки) и/или​

planetaexcel.ru

поиск значения в массиве (поиск)

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

​и вуаля:​​ минимальное значение, большее​ снова вернёмся к​ удалять столбцы, не​ИНДЕКС​
​column_num​

​ аргумент​​ формула массива:​ всю функцию ЕСЛИ(…)​
​ условиям. Но что​

​ мы можем вернуться​​ПОИСКПОЗ​ позицию строки или​

excelworld.ru

Поиск минимального или максимального значения по условию

​Данный способ хорош тем,​ товаров, занимает слово​ можно использовать на​​ не обязательный аргумент​​=INDEX($A$1:$E$11,MATCH($H$2,$B$1:$B$11,0),MATCH($H$3,$A$1:$E$1,0))​​ или равное среднему.​​ таблице со столицами​​ беспокоясь о том,​​и​(номер_столбца) функции​column_num​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=МАКС(—ЛЕВБ(A2:A6;2))​ в строке формул​ если нужно найти​ к нашему поиску.​в заранее указанную​ столбца.​ что если мы​«Сахар»​

​ практике.​ функции​=ИНДЕКС($A$1:$E$11;ПОИСКПОЗ($H$2;$B$1:$B$11;0);ПОИСКПОЗ($H$3;$A$1:$E$1;0))​В нашем примере значения​ государств и населением.​

ВȎxcel найти значение в массиве

​ что нужно будет​ПОИСКПОЗ​​INDEX​​(номер_столбца).​​иначе:​​… и нажать на​​ не сумму или​​В первой ячейке диапазона,​ ячейку выводит наименование​Давайте взглянем, как это​

​ захотим узнать позицию​.​Скачать последнюю версию​ИНДЕКС​Если заменить функции​ в столбце​​ На этот раз​ исправлять каждую используемую​, которая легко справляется​​(ИНДЕКС). Как Вы​​column_num​​Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>=МАКС(—ЛЕВБ(A2:A6;ПОИСК(«/»;A2:A6)-1))​ клавиатуре​​ среднее, а минимум​​ в котором вы​«Чай»​ можно сделать на​ любого другого наименования,​Выделяем ячейку, в которую​​ Excel​​. Он необходим, т.к.​​ПОИСКПОЗ​​D​ запишем формулу​​ функцию​​ с многими сложными​ помните, функция​​(номер_столбца) – это​​AlexM​F9​ или максимум по​ хотите иметь список​. Действительно, сумма от​ практике, используя всю​ то не нужно​

Способ 1. Функции МИНЕСЛИ и МАКСЕСЛИ в Excel 2016

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

​ реализации чая (300​ ту же таблицу.​

​ будет каждый раз​

  • ​ результат. Щелкаем по​​ПОИСКПОЗ​ мы задаем всю​ они возвращают, формула​ поэтому мы используем​
  • ​/​​.​ВПР​может возвратить значение,​
  • ​ массиве, из которого​​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=-МИН(-ЛЕВБ(A2:A6;2))​

​ тот самый результирующий​Предположим, нам нужно найти​

Поиск минимального по условию функцией МИНЕСЛИ

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

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

ВȎxcel найти значение в массиве

​Формула массива​ массив, из которого​

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

​ размер искомого значения.​Решая, какую формулу использовать​ заданных строки и​ Если не указан,​Если первые два​​ потом функция​​ каждого товара в​ которая будет возвращать​​ сумме 350 рублей​​ дополнительное поле листа​ просто в поле​около строки формул.​«Ссылки и массивы»​​ какого столбца нужно​​=INDEX($A$1:$E$11,4,5))​. Формула​ место по населению​

​Используя​​ для вертикального поиска,​​ столбца, но она​ то обязательно требуется​ символа не числоКод200?’200px’:»+(this.scrollHeight+5)+’px’);»>=-МИН(ЕСЛИ(ЕЧИСЛО(-ЛЕВБ(A2:A6;2));-ЛЕВБ(A2:A6;2)))​МИН​ базе данных по​​ следующее имя, введите​​ из всех имеющихся​​«Товар»​​«Заданное значение»​Производится запуск​. Он производит поиск​ извлечь значение. В​

ВȎxcel найти значение в массиве

​=ИНДЕКС($A$1:$E$11;4;5))​ИНДЕКС​​ занимает столица России​​ВПР​ большинство гуру Excel​ не может определить,​ аргумент​​jakim​​и выбирает минимальное​ поставщикам:​

ВȎxcel найти значение в массиве

Способ 3. Функция баз данных ДМИН

​ формулу:​ в обрабатываемой таблице​наименование товара, общая​​вписать новое искомое​​Мастера функций​​ заданного элемента в​ нашем случае это​​Эта формула возвращает значение​/​

ВȎxcel найти значение в массиве

​ (Москва).​, помните об ограничении​ считают, что​ какие именно строка​row_num​: Можно воспользоваться и​ значение:​Таким образом, условием будет​

ВȎxcel найти значение в массиве

  • ​=»&» «))))’ class=’formula’>​​ значений.​ сумма выручки от​ слово вместо предыдущего.​
  • ​. Открываем категорию​​ указанном массиве и​ столбец​ на пересечении​ПОИСКПО​
  • ​Как видно на рисунке​​ на длину искомого​ИНДЕКС​ и столбец нас​(номер_строки)​ такой формулой без​Этот вариант использует малоизвестную​​ наименование товара (​​которую затем скопируйте еще​​Если мы изменим число​​ которого равна 350​

​ Обработка и выдача​«Полный алфавитный перечень»​ выдает в отдельную​C​4-ой​З​ ниже, формула отлично​ значения в 255​​/​​ интересуют.​​Если указаны оба аргумента,​​ массивного ввода.​​ (и многими, к​​бумага​ ниже. В результате​ в поле​ рублям или самому​ результата после этого​или​ ячейку номер его​

Способ 4. Сводная таблица

​(Sum), и поэтому​строки и​возвращает «Moscow», поскольку​ справляется с этой​ символов, иначе рискуете​ПОИСКПОЗ​Теперь, когда Вам известна​ то функция​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=AGGREGATE(14;6;—LEFT(A2:A6;2);1)​

​ сожалению, недооцененную) функцию​,​ все выглядит более​«Приблизительная сумма выручки»​​ близкому к этому​ произойдет автоматически.​«Ссылки и массивы»​​ позиции в этом​ мы ввели​​5-го​​ величина населения города​

ВȎxcel найти значение в массиве

​ задачей:​ получить ошибку​​намного лучше, чем​​ базовая информация об​ИНДЕКС​​или такой​​ДМИН (DMIN)​карандаши​ или менее так,​на другое, то​ значению по убыванию.​Теперь давайте рассмотрим, как​. В списке операторов​ диапазоне. Собственно на​3​​столбца в диапазоне​​ Москва – ближайшее​

ВȎxcel найти значение в массиве

​=INDEX($A$2:$A$10,MATCH(«Russia»,$B$2:$B$10,0))​#VALUE!​ВПР​ этих двух функциях,​​возвращает значение из​​Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>=MAX(INDEX(—LEFT(A2:A6;2);0))​из категории​

ВȎxcel найти значение в массиве

planetaexcel.ru

Поиск наибольшего значения в массиве (Формулы/Formulas)

​,​​ как показано на​
​ соответственно автоматически будет​ Данный аргумент указан​ можно использовать​ ищем наименование​ это указывает даже​.​A1:E11​ меньшее к среднему​=ИНДЕКС($A$2:$A$10;ПОИСКПОЗ(«Russia»;$B$2:$B$10;0))​(#ЗНАЧ!). Итак, если​. Однако, многие пользователи​ полагаю, что уже​ ячейки, находящейся на​oleg60​Работа с базой данных​
​ручки​ рисунке ниже. Как​ пересчитано и содержимое​ в поле​ПОИСКПОЗ​
​«ПОИСКПОЗ»​

​ его название. Также​​И, наконец, т.к. нам​, то есть значение​
​ значению (12 269​

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

​), а диапазоном для​​ видите, в результате​​ поля​​«Приблизительная сумма выручки на​
​для работы с​. Найдя и выделив​

​ эта функция при​​ нужно проверить каждую​ ячейки​ 006).​
​ должно возникать проблем​
​ строки, единственное действующее​
​ к использованию​

​ функции​​ и столбца.​ за квалифицированную помощь!​

excelworld.ru

​и требует небольшого​

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

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

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

В этой статье

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

В диалоговом окне надстройки установите флажок Мастер подстановоки нажмите кнопку ОК.

Поиск ТЕКСТовых значений в Excel. Бесплатные примеры и статьи.

Нахождение в MS EXCEL позиции n-го вхождения символа в слове

Находим позицию третьего, четвертого и т.д. вхождения символа в слове (в текстовой строке).

Поиск позиции последнего повтора MS EXCEL

В списке повторяющихся числовых или текстовых значений найдем позицию последнего повтора.

Выделение ячеек c ТЕКСТом с применением Условного форматирования в MS EXCEL

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

Есть ли слово в списке MS EXCEL

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

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

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

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

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

Поиск позиции ТЕКСТа в MS EXCEL с выводом значения из соседнего столбца

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

Выделение ячеек c ТЕКСТом с применением Условного форматирования (с учетом РЕгиСТра) в MS EXCEL

Выделяем ячейки, содержащие искомый текст с учетом РЕгиСТра. Рассмотрим разные варианты: выделение ячеек, содержащих значения в точности совпадающих с искомым текстом; выделение ячеек, которые содержат искомый текст в начале, в конце или середине строки.

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

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

Поиск позиции ТЕКСТа с учетом РЕгиСТра в MS EXCEL и выводом значения из соседнего столбца

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

Поиск в MS EXCEL текстового значения первого или последнего по алфавиту

Найдем текстовое значение, которое при сортировке диапазона по возрастанию будет выведено первым, т.е. первое по алфавиту. Также найдем последнее значение по алфавиту.

Разнесение в MS EXCEL ТЕКСТовых значений и ЧИСЕЛ по разным спискам

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

Поиск в MS EXCEL третьего (n-го) повтора в списках с ТЕКСТом

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

О классификации задач Поиска в EXCEL

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

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

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

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

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

Пример функции ПОИСКПОЗ для поиска совпадения значений в Excel

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

Примеры использования функции ПОИСКПОЗ в Excel

Например, имеем последовательный ряд чисел от 1 до 10, записанных в ячейках B1:B10. Функция =ПОИСКПОЗ(3;B1:B10;0) вернет число 3, поскольку искомое значение находится в ячейке B3, которая является третьей от точки отсчета (ячейки B1).

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

Например, массив <«виноград»;»яблоко»;»груша»;»слива»>содержит элементы, которые можно представить как: 1 – «виноград», 2 – «яблоко», 3 – «груша», 4 – «слива», где 1, 2, 3, 4 – ключи, а названия фруктов – значения. Тогда функция =ПОИСКПОЗ(«яблоко»;<«виноград»;»яблоко»;»груша»;»слива»>;0) вернет значение 2, являющееся ключом второго элемента. Отсчет выполняется не с 0 (нуля), как это реализовано во многих языках программирования при работе с массивами, а с 1.

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

Формула для поиска неточного совпадения текста в Excel

Пример 1. Найти позицию первого частичного совпадения строки в диапазоне ячеек, хранящих текстовые значения.

Вид исходной таблицы данных:

Для нахождения позиции текстовой строки в таблице используем следующую формулу:

Из полученного значения вычитается единица для совпадения результата с id записи в таблице.

Сравнение двух таблиц в Excel на наличие несовпадений значений

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

Вид таблицы данных:

Для сравнения значений, находящихся в столбце B:B со значениями из столбца A:A используем следующую формулу массива (CTRL+SHIFT+ENTER):

Функция ПОИСКПОЗ выполняет поиск логического значения ИСТИНА в массиве логических значений, возвращаемых функцией СОВПАД (сравнивает каждый элемент диапазона A2:A12 со значением, хранящимся в ячейке B2, и возвращает массив результатов сравнения). Если функция ПОИСКПОЗ нашла значение ИСТИНА, будет возвращена позиция его первого вхождения в массив. Функция ЕНД возвратит значение ЛОЖЬ, если она не принимает значение ошибки #Н/Д в качестве аргумента. В этом случае функция ЕСЛИ вернет текстовую строку «есть», иначе – «нет».

Чтобы вычислить остальные значения «протянем» формулу из ячейки C2 вниз для использования функции автозаполнения. В результате получим:

Как видно, третьи элементы списков не совпадают.

Поиск ближайшего большего знания в диапазоне чисел Excel

Пример 3. Найти ближайшее меньшее числу 22 в диапазоне чисел, хранящихся в столбце таблицы Excel.

Вид исходной таблицы данных:

Для поиска ближайшего большего значения заданному во всем столбце A:A (числовой ряд может пополняться новыми значениями) используем формулу массива (CTRL+SHIFT+ENTER):

Функция ПОИСКПОЗ возвращает позицию элемента в столбце A:A, имеющего максимальное значение среди чисел, которые больше числа, указанного в ячейке B2. Функция ИНДЕКС возвращает значение, хранящееся в найденной ячейке.

Для поиска ближайшего меньшего значения достаточно лишь немного изменить данную формулу и ее следует также ввести как массив (CTRL+SHIFT+ENTER):

Особенности использования функции ПОИСКПОЗ в Excel

Функция имеет следующую синтаксическую запись:

=ПОИСКПОЗ( искомое_значение;просматриваемый_массив; [тип_сопоставления])

  • искомое_значение – обязательный аргумент, принимающий текстовые, числовые значения, а также данные логического и ссылочного типов, который используется в качестве критерия поиска (для сопоставления величин или нахождения точного совпадения);
  • просматриваемый_массив – обязательный аргумент, принимающий данные ссылочного типа (ссылки на диапазон ячеек) или константу массива, в которых выполняется поиск позиции элемента согласно критерию, заданному первым аргументом функции;
  • [тип_сопоставления] – необязательный для заполнения аргумент в виде числового значения, определяющего способ поиска в диапазоне ячеек или массиве. Может принимать следующие значения:
  1. -1 – поиск наименьшего ближайшего значения заданному аргументом искомое_значение в упорядоченном по убыванию массиве или диапазоне ячеек.
  2. 0 – (по умолчанию) поиск первого значения в массиве или диапазоне ячеек (не обязательно упорядоченном), которое полностью совпадает со значением, переданным в качестве первого аргумента.
  3. 1 – Поиск наибольшего ближайшего значения заданному первым аргументом в упорядоченном по возрастанию массиве или диапазоне ячеек.
  1. Если в качестве аргумента искомое_значение была передана текстовая строка, функция ПОИСКПОЗ вернет позицию элемента в массиве (если такой существует) без учета регистра символов. Например, строки «МоСкВа» и «москва» являются равнозначными. Для различения регистров можно дополнительно использовать функцию СОВПАД.
  2. Если поиск с использованием рассматриваемой функции не дал результатов, будет возвращен код ошибки #Н/Д.
  3. Если аргумент [тип_сопоставления] явно не указан или принимает число 0, для поиска частичного совпадения текстовых значений могут быть использованы подстановочные знаки («?» — замена одного любого символа, «*» — замена любого количества символов).
  4. Если в объекте данных, переданном в качестве аргумента просматриваемый_массив, содержится два и больше элементов, соответствующих искомому значению, будет возвращена позиция первого вхождения такого элемента.

Поиск на листе Excel

Поиск какого-либо значения в ячейках Excel довольно часто встречающаяся задача при программировании какого-либо макроса. Решить ее можно разными способами. Однако, в разных ситуациях использование того или иного способа может быть не оправданным. В данной статье я рассмотрю 2 наиболее распространенных способа.

Поиск перебором значений

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

Минусами этого так сказать «классического» способа являются: медленная работа и громоздкость. А плюсом является его гибкость, т.к. таким способом можно реализовать сколь угодно сложные варианты поиска с различными вычислениями и т.п.

Поиск функцией Find

Гораздо быстрее обычного перебора и при этом довольно гибкий. В простейшем случае, чтобы найти в колонке A ячейку, содержащую «123» достаточно такого кода:

Вкратце опишу что делают строчки данного кода:
1-я строка: Выбираем в книге лист «Данные»;
2-я строка: Осуществляем поиск значения «123» в колонке «A», результат поиска будет в fcell;
3-я строка: Если удалось найти значение, то fcell будет содержать Range-объект, в противном случае — будет пустой, т.е. Nothing.

Полностью синтаксис оператора поиска выглядит так:

Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)

What — Строка с текстом, который ищем или любой другой тип данных Excel

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

LookIn — Тип искомых данных. Может принимать одно из значений: xlFormulas (формулы), xlValues (значения), или xlNotes (примечания).

LookAt — Одно из значений: xlWhole (полное совпадение) или xlPart (частичное совпадение).

SearchOrder — Одно из значений: xlByRows (просматривать по строкам) или xlByColumns (просматривать по столбцам)

SearchDirection — Одно из значений: xlNext (поиск вперед) или xlPrevious (поиск назад)

MatchCase — Одно из значений: True (поиск чувствительный к регистру) или False (поиск без учета регистра)

MatchByte — Применяется при использовании мультибайтных кодировок: True (найденный мультибайтный символ должен соответствовать только мультибайтному символу) или False (найденный мультибайтный символ может соответствовать однобайтному символу)

SearchFormat — Используется вместе с FindFormat. Сначала задается значение FindFormat (например, для поиска ячеек с курсивным шрифтом так: Application.FindFormat.Font.Italic = True), а потом при использовании метода Find указываем параметр SearchFormat = True. Если при поиске не нужно учитывать формат ячеек, то нужно указать SearchFormat = False.

Чтобы продолжить поиск, можно использовать FindNext (искать «далее») или FindPrevious (искать «назад»).

Примеры поиска функцией Find

Пример 1: Найти в диапазоне «A1:A50» все ячейки с текстом «asd» и поменять их все на «qwe»

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

Пример 2: Правильный поиск значения с использованием FindNext, не приводящий к зацикливанию.

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

Пример 3: Продолжение поиска с использованием Find с параметром After.

Следующий пример демонстрирует применение SearchFormat для поиска по формату ячейки. Для указания формата необходимо задать свойство FindFormat.

Пример 4: Найти все ячейки с шрифтом «курсив» и поменять их формат на обычный (не «курсив»)

Примечание: В данном примере намеренно не используется FindNext для поиска следующей ячейки, т.к. он не учитывает формат (статья об этом: https://support.microsoft.com/ru-ru/kb/282151)

Коротко опишу алгоритм поиска Примера 4. Первые две строки определяют последнюю строку (lLastRow) на листе и последний столбец (lLastCol). 3-я строка задает формат поиска, в данном случае, будем искать ячейки с шрифтом Italic. 4-я строка определяет область ячеек с которой будет работать программа (с ячейки A1 и до последней строки и последнего столбца). 5-я строка осуществляет поиск с использованием SearchFormat. 6-я строка — цикл пока результат поиска не будет пустым. 7-я строка — меняем шрифт на обычный (не курсив), 8-я строка продолжаем поиск после найденной ячейки.

Хочу обратить внимание на то, что в этом примере я не стал использовать «защиту от зацикливания», как в Примерах 2 и 3, т.к. шрифт меняется и после «прохождения» по всем ячейкам, больше не останется ни одной ячейки с курсивом.

Свойство FindFormat можно задавать разными способами, например, так:

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

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

В этом примере используется UsedRange, который так же как и SpecialCells возвращает все используемые ячейки, в т.ч. и те, что были использованы ранее, а сейчас пустые. Функция Find ищет ячейку с любым значением с конца диапазона.

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

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

Для поиска функцией Find по маске (шаблону) можно применять символы:
* — для обозначения любого количества любых символов;
? — для обозначения одного любого символа;

— для обозначения символов *, ? и

. (т.е. чтобы искать в тексте вопросительный знак, нужно написать

?, чтобы искать именно звездочку (*), нужно написать

* и наконец, чтобы найти в тексте тильду, необходимо написать

Поиск даты с помощью Find

Если необходимо найти текущую дату или какую-то другую дату на листе Excel или в диапазоне с помощью Find, необходимо учитывать несколько нюансов:

  • Тип данных Date в VBA представляется в виде #[месяц]/[день]/[год]#, соответственно, если необходимо найти фиксированную дату, например, 01 марта 2018 года, необходимо искать #3/1/2018#, а не «01.03.2018»
  • В зависимости от формата ячеек, дата может выглядеть по-разному, поэтому, чтобы искать дату независимо от формата, поиск нужно делать не в значениях, а в формулах, т.е. использовать LookIn:=xlFormulas

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

Пример 7: Найти текущую дату на листе независимо от формата отображения даты.

Пример 8: Найти 1 марта 2018 г.

Искать часть даты — сложнее. Например, чтобы найти все ячейки, где месяц «март», недостаточно искать «03» или «3». Не работает с датами так же и поиск по шаблону. Единственный вариант, который я нашел — это выбрать формат в котором месяц прописью для ячеек с датами и искать слово «март» в xlValues.

Тем не менее, можно найти, например, 1 марта независимо от года.

Пример 9: Найти 1 марта любого года.

4 способа поиска данных в таблице Excel

Добрый день уважаемый читатель!

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

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

Теперь на примерах рассмотрим все 4 способа поиска данных в таблице Excel и комбинаций работы функции ВПР с другими функциями:

Используем функцию СУММПРОИЗВ

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

=СУММПРОИЗВ((C2:C11=G2)*(B2:B11=G3);D2:D11) Принцип работы формулы следующий: создается условная таблица, в которой значения ячеек «G2» сравнивается с диапазоном «C2:C11» и ячейка «G3» с диапазоном «B2:B11». После этого сравниваются и сопоставляются все эти два массива и переводятся в единицы и нули, где значение единицы ставится строке, где все условия формулы выполнены. Следующая операция – это умножения полученного условного массива на диапазон «D2:D11», а поскольку в массиве всего одна единичка то формула получит результат 146.

Обращаю ваше внимание, если в диапазоне «D2:D11» будут найдены текстовые значения, формула откажется работать. Для более углублённого ознакомления с функцией СУММПРОИЗВ советую почитать мою статью.

Применение функции ВЫБОР

Я описывал уже функцию ВЫБОР, но в таком исполнении еще не упоминал. В нашем случае нужно создать новую таблицу, в которой будут совместными столбики «Период» и «Месяц», всё это виртуально создаст функция ВЫБОР. Формула для работы будет выглядеть так:

<=ВПР(G2&G3;ВЫБОР(<1;2>;C2:C11&B2:B11;D2:D11);2;0)> Основная работа, которую проделывает функция ВЫБОР в своей части «ВЫБОР(<1;2>;C2:C11&B2:B11;D2:D11)» это объединение значений столбиков «Период» и «Город» в общий массив, значения в котором будут прописаны как: «МоскваЯнварь», «БрянскФевраль», …. и т.д. Получив такое объединённое значения столбиков мы сможем легко сделать просмотр и отбор нужного значения, вот теперь я думаю, формула стала ближе.

Очень важно! Поскольку мы работаем с формулой массива, то ввод необходимо производить горячим сочетаниям клавиш Ctrl+Shift+Enter. В этом случае система определит формулу как созданную для массивов и установит фигурные скобочки по обеим сторонам формулы.

Создаем дополнительные столбики

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

Рассмотрим на стандартном примере, когда необходимо определить продажи по двум показателям: «Период» и «Город». В этом случае обыкновенное использование функции ВПР не будет нам подходить, так как функция может возвращать значение по одному условию. В таком случае нам необходимо создать дополнительный столбик, в котором произойдёт объединение двух критериев в один, поэтому в созданном столбике приписываем формулу слияния значений: =B2&C2. А вот теперь результат из столбика D, мы сможем использовать в ячейке H4 нашу формулу:

=ВПР(H2&H3;D2:E11;2;0)

Как видите, наши отдельные условия отбора значений также объединяются аргументом H2&H3 в один критерий. После поиска в указанном диапазоне D2:E11, формула вернёт найденное значение со столбика 2.

Совмещаем функции ПОИСКПОЗ и ИНДЕКС для работы

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

А для нашего поиска данных в таблице Excel будем использовать такую формулу:

Что же она делает, такая большая и непонятная…. Рассмотрим ее в разрезе нескольких блоков или этапов. Формула для функции имеет такой вид ПОИСКПОЗ (1;(B2:B11=G3)*(C2:C11=G2);0) и происходит следующее, со значением в ячейке G3, последовательно сравниваются значения из диапазона B2:B11 и в случае совпадения условий получаем результат ИСТИНА, а если есть отличия получаем ЛОЖЬ. Такой же процесс происходит для значения G2 и диапазона C2:C11. После сравнения этих массивов, которые состоят из аргументов ИСТИНА и ЛОЖЬ, производится сравнения на соответствие значению 1, это ИСТИНА*ИСТИНА, все остальные комбинации будут проигнорированы.

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

Ну, подведя итог можно ответить на закономерный вопрос: «а что же делать?» и «какой способ использовать?». Использовать вы можете абсолютно любой способ, но я бы рекомендовал выбрать вам наиболее удобный, простой и понятный. Я, к примеру, люблю использовать таблицы, которые просто изменять и просты для работы и понимания, чего советую и вам.

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

Время на прочтение
16 мин

Количество просмотров 236K

Добрый день, уважаемые хаброжители!

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

Поиск выдал мне всего одну статью на Хабре по схожей тематике — «Талмуд по формулам в Google SpreadSheet». В ней дано хорошее описание базовых вещей для работы в excel (хотя он и не 100% про сам excel).

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

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

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

Кейс_1: Логические функции и функции поиска совпадений
«У меня есть набор значений в табличке и необходимо что бы при выполнении определенного условия/набора условий выводилось определенное значение» (с) Пользователь

Данные, как правило, представлены в табличной форме:

image

Условие:

  • если значение в столбце «Количество» больше 5,
  • то нужно вывести в колонке «Результат» значение «Заказ не требуется»,

В этом нам поможет формула «ЕСЛИ» (IF), которая относится к логическим формулам и может выдавать в решении любые значения, которые мы заранее записываем в формуле. Обращаю внимание, что любые текстовые значения записываются, используя кавычки.

Синтаксис формулы следующий:
ЕСЛИ(лог_выражение, [значение_если_истина], [значение_если_ложь])

  • Лог_выражение — выражение, дающее в результате значение ИСТИНА или ЛОЖЬ.
  • Значение_если_истина — значение, которое выводится, если логическое выражение истинно
  • Значение_если_ложь — значение, которое выводится, если логическое выражение ложно

Синтаксис формулы для решения:
Вывод результата в ячейку D2:

=ЕСЛИ(C5>5;«Заказ не требуется»;«Необходим заказ»)

На выходе получаем результат:

image

Бывает, что условие носит более сложный характер, например выполнение 2-х и более условий:

  • если значение в столбце «Количество» больше 5, а значение в колонке «Тип» равно «А»
  • то нужно вывести в колонке «Результат» значение «1», в обратном случае «0».

В данном случае мы уже не можем ограничиться использованием одной только формулы «ЕСЛИ», необходимо добавить в ее синтаксис другую формулу. И это будет еще одна логическая формула «И» (AND).
Синтаксис формулы следующий:
И(логическое_значение1, [логическое_значение2], …)

  • Логическое_значение1-2 и т.д. — проверяемое условие, вычисление которого дает значение ИСТИНА или ЛОЖЬ

Синтаксис решения будет следующим:
Вывод результата в ячейку D2:

=ЕСЛИ(И(C2>5;B2=«А»);1;0)

Таким образом, используя сочетание 2-х формул, мы находим решение нашей задачи и получаем результат:

image

Попробуем усложнить задачу – новое условие:

  • если значение в столбце «Количество» равно 10, а значение в колонке «Тип» равно «А»
  • или же значение в столбце «Количество» больше или равно 5, а значение «Тип» равен «Б»
  • то нужно вывести в колонке «Результат» значение «1», в обратном случае «0».

Синтаксис решения будет следующим:
Вывод результата в ячейку D2:

=ЕСЛИ(ИЛИ(И(C2=10;B2=«А»); И(C2>=5;B2=«Б»));1;0)

Как видно из записи, в формулу «ЕСЛИ» включено одно условие «ИЛИ» (OR) и два условия с использованием формулы «И», включенных в него. Если хотя бы одно из условий 2-го уровня имеет значение «ИСТИНА», то в колонку «Результат» будет выведен результат «1», в противном случае будет «0».
Результат:

image

Теперь перейдем к следующей ситуации:
Представим, что в зависимости от значения в столбце «Условие» должно выводиться определенное условие в столбце «Результат», ниже приведено соответствие значений и результата.
Условие:

  • 1 = А
  • 2 = Б
  • 3 = В
  • 4 = Г

При решении задачи с помощью функции «ЕСЛИ», синтаксис будет следующим:
Вывод результата в ячейку B2:

=ЕСЛИ(A2=1;«А»; ЕСЛИ(A2=2;«Б»; ЕСЛИ(A2=3;«В»; ЕСЛИ(A2=4;«Г»;0))))

Результат:

image

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

Альтернативное решение_1:
Использование формулы «ВЫБОР» (CHOOSE),
Синтаксис функции:
ВЫБОР(номер_индекса, значение1, [значение2], …)

  • Номер_индекса — номер выбираемого аргумента-значения. Номер индекса должен быть числом от 1 до 254, формулой или ссылкой на ячейку, содержащую число в диапазоне от 1 до 254.
  • Значение1, значение2,… — значение от 1 до 254 аргументов-значений, из которых функция «ВЫБОР», используя номер индекса, выбирает значение или выполняемое действие. Аргументы могут быть числами, ссылками на ячейки, определенными именами, формулами, функциями или текстом.

При ее использовании, мы сразу заносим результаты условий в зависимости от указанных значений.
Условие:

  • 1 = А
  • 2 = Б
  • 3 = В
  • 4 = Г

Синтаксис формулы:

=ВЫБОР(A2;«А»;«Б»;«В»;«Г»)

Результат аналогичен решению с цепочкой функций «ЕСЛИ» выше.
При применении этой формулы существуют следующие ограничения:
В ячейку «А2» (номер индекса) могут быть указаны только цифры, а значения результата будут выводиться в порядке возрастания от 1 до 254 значений.
Иными словами, функция будет работать только если в ячейке «А2» указаны цифры от 1 до 254 в порядке возрастания и это накладывает определенные ограничения при использовании этой формулы.
Т.е. если мы захотим, что бы значение «Г» выводилось при указании числа 5,

  • 1 = А
  • 2 = Б
  • 3 = В
  • 5 = Г

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

=ВЫБОР(A31;«А»;«Б»;«В»;;«Г»)

Как видно, значение «4» в формуле нам приходится оставить пустым и перенести результат «Г» на порядковый номер «5».

Альтернативное решение_2:
Вот мы и подошли к одной из самых популярных функций Excel, овладение которой автоматически превращает любого офисного работника в «опытного пользователя excel» /sarcasm/.
Синтаксис формулы:
ВПР(искомое_значение, таблица, номер_столбца, [интервальный_просмотр])

  • Искомое_значение – значение, поиск которого осуществляется функцией.
  • Таблица – диапазон ячеек, содержащий данные. Именно в этих ячейках будет происходить поиск. Значения могут быть текстовыми, числовыми или логическими.
  • Номер_столбца — номер столбца в аргументе «Таблица», из которого будет выводиться значение в случае совпадения. Важно понимать, что отсчет столбцов происходит не по общей сетке листа (A.B,C,D и т.д.), а внутри массива, указанного в аргументе «Таблица».
  • Интервальный_просмотр — определяет, какое совпадение должна найти функция — точное или приблизительное.

Важно: функция «ВПР» ищет совпадение только по первой уникальной записи, если искомое_значение присутствует в аргументе «Таблица» несколько раз и имеет разные значения, то функция «ВПР» найдет только самое ПЕРВОЕ совпадение, результаты по всем остальным совпадениям показаны не будутИспользование формулы «ВПР» (VLOOKUP) связано с еще одним подходом в работе с данными, а именно с формированием «справочников».
Суть подхода в создании «справочника» соответствия аргумента «Искомое_значение» определенному результату, отдельно от основного массива, в котором прописываются условия и соответствующие им значения:

image

Затем в рабочей части таблицы уже прописывается формула со ссылкой на справочник, заполненный ранее. Т.е. в справочнике в столбце «D» происходит поиск значения из столбца «А» и при нахождении соответствия выводится значение из столбца «Е» в столбец «В».
Синтаксис формулы:
Вывод результата в ячейку B2:

=ВПР(A2;$D$2:$E$5;2;0)

Результат:

image

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

image

Видно, что строки в столбцах «Продукт» обеих таблиц не совпадают, однако, это не является препятствием для использования функции «ВПР».
Вывод результата в ячейку B2:

=ВПР($A3;$H$3:$M$6;2;0)

Но при решении сталкиваемся с новой проблемой – при «протягивании» написанной нами формулы вправо от столбца «В» до столбца «Е», нам придется вручную заменять аргумент «номер_столбца». Дело это трудоемкое и неблагодарное, потому, на помощь нам приходит другая функция — «СТОЛБЕЦ» (COLUMN).
Синтаксис функции:
СТОЛБЕЦ([ссылка])

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

Если использовать запись типа:

=СТОЛБЕЦ()

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

=ВПР($A3;$H$3:$M$6; СТОЛБЕЦ();0)

Функция «СТОЛБЕЦ» определит номер текущего столбца, который будет использоваться аргументом «Номер_столбца» для определения номера столбца поиска в справочнике.
Кроме того, можно использовать конструкцию:

=СТОЛБЕЦ()-1

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

image

Продолжаем развивать тему и усложняем условие: представим, что у нас есть два справочника с разными данными по продуктам и необходимо вывести в таблицу с результатом значения в зависимости от того, какой тип справочника указан в колонке «Справочник»
Условие:

  • Если в столбце «Справочник» указано число 1, данные должны тянуться из таблицы «Справочник_1», если число 2, то из таблицы «Справочник_2» в соответствии с указанным месяцем

image

Вариант решения, который сразу приходит на ум, следующий:
Вывод результата в ячейку C3:

=ЕСЛИ($B3=1; ВПР($A3;$G$3:$I$6; СТОЛБЕЦ()-1;0); ВПР($A3;$K$3:$M$6; СТОЛБЕЦ()-1;0))

Плюсы: наименование справочника может быть любым (текст, цифры и их сочетание), минусы – плохо подходит, если вариантов более 3-х.
Если же номера справочников всегда представляют собой числа, имеет смысл использовать следующее решение:
Вывод результата в ячейку C3:

=ВПР($A3; ВЫБОР($B3;$G$3:$I$6;$K$3:$M$6); СТОЛБЕЦ()-1;0)

Плюсы: формула может включать до 254 наименований справочников, минусы – их наименование должно быть строго числовым.
Результат для формулы с использованием функции «ВЫБОР»:

image

Бонус: ВПР по двум и более признакам в аргументе «искомое_значение».
Условие:

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

Обе таблицы приведены ниже:

image

Как видно из табличных форм, каждая позиция имеет не только наименование (которое не является уникальным), но также и относится к определенному классу и имеет свой вариант фасовки.
Используя сочетание имени и класса и фасовки, мы можем создать новый признак, для этого в таблице с данными создаем дополнительный столбец «Доп.признак», который заполняем при помощи следующей формулы:

=H3&»_»&I3&»_»&J3

Используя символ «&», объединяем три признака в один (разделитель между словами может быть любым, как и не быть вовсе, главное использовать аналогичное правило и для поиска)
Аналогом формулы может быть функция «СЦЕПИТЬ» (CONCATENATE), в этом случае она будет выглядеть следующим образом:

=СЦЕПИТЬ(H3;»_»;I3;»_»;J3)

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

=ЕСЛИОШИБКА(ВПР(A2&»_»&B2&»_»&C2;$G$2:$K$6;5;0);0)

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

image

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

Кейс_3 Поиск значения в массиве, или когда ВПР не в силах нам помочь

Рассмотрим ситуацию, когда необходимо понять, есть ли в массиве ячеек нужные нам значения.
Задача:

  • в столбце «Условие поиска» указано значение и необходимо определить, присутствует ли оно в столбце «Массив для поиска»

Визуально все выглядит в следующем виде:

image

Как мы видим, функция «ВПР» тут бессильна, т.к. мы ищем не точное совпадение, а именно наличие в ячейке нужного нам значения.
Для решения задачи необходимо использовать комбинацию нескольких функций, а именно:
«ЕСЛИ»
«ЕСЛИОШИБКА»
«СТРОЧН»
«НАЙТИ»

По порядку обо всех, «ЕСЛИ» мы уже разобрали ранее, потому перейдем к функции «ЕСЛИОШИБКА» (IFERROR)

ЕСЛИОШИБКА(значение, значение_при_ошибке)

  • Значение — аргумент, проверяемый на возникновение ошибок.
  • Значение_при_ошибке — значение, возвращаемое при ошибке при вычислении по формуле. Возможны следующие типы ошибок: #Н/Д, #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!, #ЧИСЛО!, #ИМЯ? и #ПУСТО!.

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

«СТРОЧН» (LOWER)

СТРОЧН(текст)

  • Текст — текст, преобразуемый в нижний регистр.

Важно: функция «СТРОЧН» не заменяет знаки, не являющиеся буквами.
Роль в формуле: поскольку функция «НАЙТИ» (FIND) осуществляет поиск и учетом регистра текста, то необходимо привести весь текст к одному регистру, в противном случае «чАй» будет не равно «чай» и т.д. Это актуально, если значение регистра не является условием поиска и отбора значений, в противном случае формулу «СТРОЧН» можно не использовать, так поиск будет более точным.

Теперь подробнее о синтаксисе функции «НАЙТИ» (FIND).

НАЙТИ(искомый_текст, просматриваемый_текст, [нач_позиция])

  • Искомый_текст — текст, который необходимо найти.
  • Просматриваемый_текст — текст, в котором нужно найти искомый текст.
  • Нач_позиция — знак, с которого нужно начать поиск. Первый знак в тексте «просматриваемый_текст» имеет номер 1. Если номер не указан, он по умолчанию считается равным 1.

Синтаксис формулы-решения будет иметь вид:
Вывод результата в ячейку B2:

=ЕСЛИ(ЕСЛИОШИБКА(НАЙТИ(СТРОЧН(A2); СТРОЧН(E2);1);0)=0;«fail»;«bingo!»)

Разберем логику формулы по действиям:

  1. СТРОЧН(A2) – преобразует аргумент «Искомый_текст» в ячейке в А2 в текст с нижним регистром
  2. Функция «НАЙТИ» начинает поиск преобразованного аргумента «Искомый_текст» в массиве «Просматриваемый_текст», который преобразовывается функцией «СТРОЧН(E2)», также в текст с нижним регистром.
  3. В случае если, функция находит совпадение, т.е. возвращает порядковый номер первого символа совпадающего слова/значения, срабатывает условие ИСТИНА в формуле «ЕСЛИ», т.к. полученное значение не равно нулю. Как результат, в столбце «Результат» будет выведено значение «Bingo!»
  4. Если же, функция не находит совпадение т.е. порядковый номер первого символа совпадающего слова/значения не указывается и вместо значения возвращается ошибка, срабатывает условие, заложенное в формулу «ЕСЛИОШИБКА» и возвращается значение равное «0», что соответствует условию ЛОЖЬ в формуле «ЕСЛИ», т.к. полученное значение равно «0». Как результат, в столбце «Результат» будет выведено значение «fail».

image

Как видно из рисунка выше, благодаря функциям «СТРОЧН» и «НАЙТИ» мы находим искомые значения вне зависимости от регистра символов, и места нахождения в ячейке, но необходимо обратить внимание на строку 5.
Условие поиска задано как «111», но в массиве поиска указано значение «1111111 печенюшки», однако формула выдает результат «Bingo!». Это происходит потому, что значение «111» входит в ряд значений «1111111», как следствие находится совпадение. В обратном случае данное условие не сработает.

Кейс_4 Поиск значения в массиве по нескольким условиям, или когда ВПР тем более не в силах нам помочь

Представим ситуацию, когда необходимо найти значение из «Таблица с результатом» в двумерном массиве «Справочник» по нескольким условиям, а именно по значению «Наименование» и «Месяц».
Табличная форма задания будет иметь следующий вид:

image

Условие:

  • В таблицу с результатом необходимо подтянуть данные в соответствии с совпадением условий «Наименование» и «Месяц».

Для решения подобной задачи подойдет комбинация функций «ИНДЕКС» и «ПОИСКПОЗ»

Синтаксис функции «ИНДЕКС» (INDEX)

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

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

Иными словами функция возвращает из указанного массива в аргументе «Массив» значение, которое находится на пересечении координат, указанных в аргументах «Номер_строки» и «Номер_столбца».

Синтаксис функции «ПОИСКПОЗ» (MATCH)

ПОИСКПОЗ(искомое_значение, просматриваемый_массив, [тип_сопоставления])

  • Искомое_значение — значение, которое сопоставляется со значениями в аргументе просматриваемый_массив. Аргумент искомое_значение может быть значением (числом, текстом или логическим значением) или ссылкой на ячейку, содержащую такое значение.
  • Просматриваемый_массив — диапазон ячеек, в которых производится поиск.
  • Тип_сопоставления — необязательный аргумент. Число -1, 0 или 1.

Функция ПОИСКПОЗ выполняет поиск указанного элемента в диапазоне ячеек и возвращает относительную позицию этого элемента в диапазоне.
Суть использования комбинации функций «ИНДЕКС» и «ПОИСКПОЗ» в том, то мы производим поиск координат значений по их наименованию по «осям координат».
Осью Y будет столбец «Наименование», а осью X – строка «Месяцы».

часть формулы:

ПОИСКПОЗ($A4;$I$4:$I$7;0)

возвращает число по оси Y, в данном случае оно будет равно 1, т.к. значение «А» присутствует в искомом диапазоне и имеет относительную позицию «1» в этом диапазоне.
часть формулы:

ПОИСКПОЗ(B$3;$J$3:$L$3;0)

возвращает значение #Н/Д, т.к. значение «1» отсутствует в просматриваемом диапазоне.

Таким образом, мы получили координаты точки (1; #Н/Д) которые функция «ИНДЕКС» использует для поиска в аргументе «Массив».
Полностью написанная функция для ячейки B4 будет иметь следующий вид:

=ИНДЕКС($J$4:$L$7; ПОИСКПОЗ($A4;$I$4:$I$7;0); ПОИСКПОЗ(B$3;$J$3:$L$3;0))

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

=ИНДЕКС($J$4:$L$7;1;#Н/Д))

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

image

Что бы нейтрализовать этот негативный эффект используем функцию «ЕСЛИОШИБКА», о которой мы читали ранее, и заменяем значение, возвращающееся при ошибке на «0», тогда формула будет иметь вид:
Вывод результата в ячейку B4:

=ЕСЛИОШИБКА(ИНДЕКС($J$4:$L$7; ПОИСКПОЗ($A4;$I$4:$I$7;0); ПОИСКПОЗ(B$3;$J$3:$L$3;0));0)

Демонстрация результата:

image

Как видно на картинке, значения «#Н/Д» более не мешают нам в последующих вычислениях с использованием значений в таблице с результатом.

Кейс_5 Поиск значения в диапазоне чисел

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

  • От 0 до 1000 = А
  • От 1001 до 1500 = Б
  • От 1501 до 2000 = В
  • От 2001 до 2500 = Г
  • Более 2501 = Д

image

Функция ПРОСМОТР (LOOKUP) возвращает значение из строки, столбца или массива. Функция имеет две синтаксических формы: векторную и форму массива.

ПРОСМОТР(искомое_значение; просматриваемый_вектор; [вектор_результатов])

  • Искомое_значение — значение, которое функция ПРОСМОТР ищет в первом векторе. Искомое_значение может быть числом, текстом, логическим значением, именем или ссылкой на значение.
  • Просматриваемый_вектор — диапазон, состоящий из одной строки или одного столбца. Значения в аргументе просматриваемый_вектор могут быть текстом, числами или логическими значениями.
  • Значения в аргументе просматриваемый_вектор должны быть расположены в порядке возрастания: …, -2, -1, 0, 1, 2, …, A-Z, ЛОЖЬ, ИСТИНА; в противном случае функция ПРОСМОТР может возвратить неправильный результат. Текст в нижнем и верхнем регистрах считается эквивалентным.
  • Вектор_результатов — диапазон, состоящий из одной строки или столбца. Вектор_результатов должен иметь тот же размер, что и просматриваемый_вектор.

Вывод результата в ячейку B3:

=ПРОСМОТР(E3;$A$3:$A$7;$B$3:$B$7)

image

Аргументы «Просматриваемый_вектор» и «Вектор_результата» можно записать в форме массива – в этом случае не придется выводить их в отдельную таблицу на листе Excel.
В этом случае функция будет выглядеть следующим образом:
Вывод результата в ячейку B3:
=ПРОСМОТР(E3;{0;1001;1501;2001;2501};{«А»;«Б»;«В»;«Г»;«Д»})

Кейс_6 Суммирование чисел по признакам

Для суммирования чисел по определенным признакам можно использовать три разных функции:
СУММЕСЛИ (SUMIF) – суммирует только по одному признаку
СУММЕСЛИМН (SUMIFS) – суммирует по множеству признаков
СУММПРОИЗВ (SUMPRODUCT) – суммирует по множеству признаков
Существует также вариант с использованием «СУММ» (SUM) и функции формулы массивов, когда формула «СУММ» возводится в массив:
({=СУММ(()*())}
но такой подход довольно неудобен и полностью перекрывается по функционалу формулой «СУММПРОИЗВ»
Теперь подробнее по синтаксису «СУММПРОИЗВ»:

СУММПРОИЗВ(массив1, [массив2], [массив3],…)

  • Массив1 — первый массив, компоненты которого нужно перемножить, а затем сложить результаты.
  • Массив2, массив3… — от 2 до 255 массивов, компоненты которых нужно перемножить, а затем сложить результаты.

Условие:

  • Найти общую сумму по стоимости отгрузок по каждому из продуктов за определенный период:

image

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

=СУММПРОИЗВ(($A4=$H$3:$H$11)*($K$3:$K$11>=B$3)*($K$3:$K$11<C$3);($M$3:$M$11)*($L$3:$L$11))

Разберем формулу по частям:

($A4=$H$3:$H$11)

– задаем условие по отбору в столбце «Наименование» таблицы с данными по столбцу «Наименование» в таблице с результатом

($K$3:$K$11>=B$3)*($K$3:$K$11<C$3)

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

($M$3:$M$11)*($L$3:$L$11)

– перемножаем столбцы «Количество» и «Цена» в таблице с данными.
Несомненным плюсом данной функции является свободный порядок записи условий, их можно записывать в любом порядке, на результат это не повлияет.
Результат:

image

Теперь усложним условие и добавим требование, что бы отбор по наименованию «печеньки» происходил только по классам «малые» и «большие», а по наименованию «булки» все, кроме по классу «с джемом»:

Вывод результата в ячейку B4:

=СУММПРОИЗВ(($A4=$H$3:$H$11)*($J$3:$J$11>=B$3)*($J$3:$J$11<C$3)*(($I$3:$I$11=«малые»)+($I$3:$I$11=«большие»));($L$3:$L$11*$K$3:$K$11))

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

(($I$3:$I$11=«малые»)+($I$3:$I$11=«большие»))

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

=СУММПРОИЗВ(($A5=$H$3:$H$11)*($J$3:$J$11>=B$3)*($J$3:$J$11<C$3)*($I$3:$I$11<>«с джемом»);($L$3:$L$11)*($K$3:$K$11))

это:

($I$3:$I$11<>«с джемом»)

– на самом деле, в данной формуле можно было написать условие отбора также как и при отборе по печенькам, но тогда, пришлось бы перечислять три условия в формуле, в данном случае, проще написать исключение – не равно «с джемом» для этого используем значение «<>».
Вообще, если группы признаков/классов заранее известны, то лучше объединять их в эти группы, создавая справочники, чем записывать все условия в функцию, раздувая ее.
Результат:

image

Что ж, вот мы и подошли к концу нашего краткого мануала, который на самом деле мог бы быть намного больше, но целью было все-таки дать решение наиболее встречающихся ситуаций, а не описывать решение частных (но гораздо более интересных случаев).
Надеюсь, что мануал поможет кому-нибудь в решении задач при помощи Excel, ведь это будет значить, что мой труд не пропал зря!

Спасибо за уделенное время!

#Руководства

  • 25 июл 2022

  • 0

Как с помощью массивов ускорить расчёты в таблицах с тысячами значений? Как поменять местами столбцы и строки? Разбираемся на примерах.

Иллюстрация: Meery Mary для Skillbox Media

Ксеня Шестак

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

Часто новичкам в Excel кажется, что массивы — это высший пилотаж в работе с таблицами. На деле всё гораздо проще.

Массивы в Excel — это данные из двух и более смежных ячеек таблицы, которые используют в расчётах как единую группу, одновременно. Массивом может быть одна строка или столбец, несколько строк или столбцов и даже целые таблицы.

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

В статье разберёмся:

  • какие виды массивов есть в Excel;
  • что такое формула массива и как она работает.

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

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

В конце расскажем, как создать формулу массива в «Google Таблицах».

Массивы в Excel бывают одномерными и двумерными.

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

Пример одномерного вертикального массива
Скриншот: Excel / Skillbox Media

Пример одномерного горизонтального массива
Скриншот: Excel / Skillbox Media

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

Пример двумерного массива
Скриншот: Excel / Skillbox Media

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

Формула массива — формула, где в качестве входящих параметров используют диапазоны значений, а не одиночные ячейки. Диапазоны значений обозначаются через двоеточие :. Например, A1:A10 или А1:В10.

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

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

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

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

Допустим, нужно рассчитать смету устройства фундаментов. У нас есть перечень необходимых работ, их объёмы и цена единиц измерения объёмов.

Исходные данные для расчёта сметы устройства фундаментов
Скриншот: Excel / Skillbox Media

Определим стоимость каждой работы.

Можно пойти классическим путём — перемножить первые ячейки столбцов «Количество» и «Цена ед., руб.», а затем растянуть результат вниз на все остальные виды работ. Но если видов будет несколько сотен или тысяч, этот вариант может быть неудобен.

Формула массивов выведет результаты одновременно для всего диапазона — никаких дополнительных действий выполнять не потребуется. Рассмотрим, как это сделать.

Шаг 1. Выделяем столбец, в котором хотим получить результат расчёта, — в нашем случае это диапазон E2:E9. В строке ссылок вводим знак равенства.

Выделяем диапазон, в котором формула массива выведет результат расчёта, и начинаем вводить формулу
Скриншот: Excel / Skillbox Media

Шаг 2. Выделяем первый массив, который участвует в расчётах, — все значения столбца «Количество». Одновременно с этим в строке ссылок появляется выбранный диапазон: B2:B9.

Выделяем первый массив, участвующий в расчётах
Скриншот: Excel / Skillbox Media

Шаг 3. Ставим знак умножения в строке ссылок и выбираем второй массив — все значения столбца «Цена ед., руб.».

Строка ссылок принимает вид: fx=B2:B9*D2:D9. Это значит, что значения первого массива должны умножиться на значения второго массива.

Ставим знак умножения и выделяем второй массив, участвующий в расчётах
Скриншот: Excel / Skillbox Media

Шаг 4. Нажимаем Enter — в столбце «Стоимость, руб.» появляется результат расчёта. Так, в один клик, формула сработала сразу для всех строк.

Формула массива сработала для всех строк одновременно
Скриншот: Excel / Skillbox Media

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

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

Исходные данные для расчёта дополнительных расходов
Скриншот: Excel / Skillbox Media

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

Шаг 1. Выделяем столбец для результата расчёта: С13:С16. В строке ссылок вводим знак равенства.

Выделяем диапазон для результата расчётов и начинаем вводить формулу
Скриншот: Excel / Skillbox Media

Шаг 2. Выделяем массив, который участвует в расчётах, — все значения столбца «Доля от стоимости работ». В формуле строки ссылок появляется выбранный диапазон: B13:B16. Добавляем к нему знак умножения и выбираем ячейку с общей стоимостью работ: E10.

Выделяем массив, участвующий в расчётах, и дописываем формулу
Скриншот: Excel / Skillbox Media

Шаг 3. Нажимаем Enter. Во всём столбце «Стоимость, руб.» появляются результаты расчётов.

Результат работы формулы массива
Скриншот: Excel / Skillbox Media

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

Чтобы получить итоговую стоимость устройства фундаментов, мы суммировали стоимости всех отдельных работ
Скриншот: Excel / Skillbox Media

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

Для этого воспользуемся формулой массивов и оператором СУММ. Они выполнят одновременно два математических действия: перемножат столбцы и суммируют полученные результаты.

Шаг 1. Выделяем ячейку, в которой хотим получить результат расчёта. В строке ссылок вводим знак равенства и оператор СУММ и открываем скобку.

Начинаем вводить формулу массива
Скриншот: Excel / Skillbox Media

Шаг 2. По аналогии с алгоритмом из предыдущего раздела, выделяем первый массив — значения столбца «Количество» и второй массив — значения столбца «Цена ед., руб.». Ставим между ними знак умножения и закрываем скобку.

Строка ссылок принимает вид: fx=СУММ(B2:B9*D2:D9). Это значит, что значения первого массива должны перемножиться со значениями второго массива, а все полученные результаты — суммироваться.

Выделяем первый массив, ставим знак умножения и выделяем второй массив
Скриншот: Excel / Skillbox Media

Шаг 3. Нажимаем Enter. В выбранной ячейке появляется результат расчёта. Формула рассчитала одновременно два действия: перемножила значения ячеек двух массивов и суммировала полученные результаты.

Результат работы формулы массива отразился в одной ячейке
Скриншот: Excel / Skillbox Media

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

Иногда при работе в Excel нужно поменять положение столбцов или строк — транспортировать их. Например, перевести шапку таблицы из горизонтального положения в вертикальное. Делать это вручную долго — особенно, когда ячеек очень много. Ускорить процесс помогут массивы и оператор ТРАНСП:

Шаг 1. Выделяем ячейку, в которой хотим получить результат операции. В строке ссылок вводим знак равенства и оператор ТРАНСП и открываем скобку.

Используем оператор ТРАНСП, чтобы поменять положение шапки таблицы с горизонтального на вертикальное
Скриншот: Excel / Skillbox Media

Шаг 2. Выделяем шапку таблицы и закрываем скобку. Строка ссылок принимает вид: fx=ТРАНСП(A1:E1).

Выделяем диапазон, который нужно транспортировать
Скриншот: Excel / Skillbox Media

Шаг 3. Нажимаем Enter — функция меняет положение шапки таблицы на вертикальное.

За несколько секунд шапка таблицы превратилась из горизонтальной в вертикальную
Скриншот: Excel / Skillbox Media

Как создать формулу массива в «Google Таблицах»? Всё точно так же, как в Excel, но нужно добавить оператор ARRAYFORMULA. Его ставят перед всей формулой массива в строке ссылок. Например, если вы хотите перемножить данные в двух столбцах, формула в готовом виде будет выглядеть так:
fx=ARRAYFORMULA(B2:B9*D2:D9).

Так выглядит работа формулы массива в «Google Таблицах»
Скриншот: Google Таблицы / Skillbox Media

Другие материалы Skillbox Media по Excel

  • Как сделать сводные таблицы в Excel — детальная инструкция со скриншотами
  • Руководство: как сделать ВПР в Excel и перенести данные из одной таблицы в другую
  • Руководство по макросам для новичков — для чего нужны и как их сделать
  • Инструкция: как закреплять строки и столбцы в Excel
  • Руководство по созданию выпадающих списков в Excel — как упростить заполнение таблицы повторяющимися данными

Научитесь: Excel + Google Таблицы с нуля до PRO
Узнать больше

Пример формулы массива в Excel
Пример формулы массива
  • Что такое формула массива в Excel
  • Массивы в Excel
    • Отличие массивов от диапазонов в Excel
    • Размерность массивов
    • Виды массивов
  • Методы создания массивов
    • Массив констант, созданный вручную
    • Именованный массив констант
    • С помощью функций
    • С помощью математических операторов
    • С помощью операторов сравнения
    • С помощью других массивов
    • С помощью комбинаций указанных методов
  • Вывод массива на лист
  • Взаимодействие функций Excel с массивами
  • Формулы массива – примеры формул

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

Не знаю, новичок вы в Excel или уже опытный пользователь, но коль судьба привела вас на эту страницу, в ходе прочтения вы:

  • узнаете все о формулах массива;
  • увидите множество примеров таких формул;
  • сможете начать активно их применять на практике.

Поехали!

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

Будьте на 100% уверены: если формула

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

– это формула массива.

Слишком очевидно и все еще непонятно? Не беда – читаем далее.

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

Массивы в Excel

Массив (array) – это фиксированный набор элементов с фиксированным порядком. Иными словами, все элементы массива, включая их положение в нем, являются его неотъемлемой частью, их порядок и количество нельзя изменить.

Отличие массивов от диапазонов в Excel

В отличие от массива, диапазон (range) – это просто метод адресации к ячейкам в Excel, никак не связанный с самим их содержимым.

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

Содержимое диапазона также можно свободно сортировать, если в нем нет объединенных ячеек.

Если же на лист Excel выведен массив, ни сортировка строк, ни вставка строк и столбцов в середину диапазона, в который он выведен, не возможна – это нарушило бы само его определение.

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

Нельзя изменить часть массива.

Ошибка "Нельзя изменить часть массива" в Excel

Ошибка Excel при попытке нарушить целостность массива

Размерность массивов

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

Одномерные массивы (векторы) в свою очередь могут быть вертикальными и горизонтальными.

два одномерных и один двумерный массив

Одномерные и двумерные массивы в Excel

Трехмерные массивы – довольно редко используемая на практике сущность.

Виды массивов

По типам элементов в них:
По типу данных –

  • числовой массив (массив чисел)
  • строковый массив (текстовые значения)
  • булевый массив (значения ИСТИНА-ЛОЖЬ)
  • смешанного типа

По изменяемости элементов –

  • массив констант,
  • вычисляемый массив

Методы создания массивов

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

Массив констант, созданный вручную

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

При этом разделителем между элементами слева направо является точка с запятой, а разделителем строк – двоеточие.

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

Именованный массив констант

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

Массив цифр как в примере ниже, поможет быстро найти цифры в текстовых ячейках.

создание именованного массива констант на примере цифр
Создаем именованный массив в Excel

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

вывод именованного массива на лист

Используем именованный массив

С помощью функций

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

Единственное условие для создания массива с помощью функции – функция не должна обладать агрегирующим свойством. Например, СУММ, СРЗНАЧ не создадут массив при обращении к диапазону.

На этом сайте есть статья – как дописать символ, слово или текст к нескольким ячейкам. Там рассматриваются несколько способов, в том числе без создания дополнительного столбца. Но вот еще один – с помощью функции СЦЕПИТЬ и формулы массива:

Добавляем текст в ячейки формулой массива с функцией СЦЕПИТЬ

Формула массива с функциями СЦЕПИТЬ и СИМВОЛ

Кавычки-ёлочки в этой формуле нам помогает создать функция СИМВОЛ.

С помощью математических операторов

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

Массивы в Excel, полученные с помощью математических операторов

С помощью операторов сравнения

Аналогично математическим операторам, массивы создаются при сравнении диапазонов с константой или значением ячейки. Результатом операции сравнения являются значения ИСТИНА или ЛОЖЬ.

Массивы в Excel, полученные с помощью операторов сравнения

С помощью других массивов

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

Но можно создать массив и по принципу наоборот – на основе одной ячейки, произведя ее взаимодействие (операторами или функциями) с массивом констант.

Размер результирующего массива в таком случае будет аналогичен размеру массива констант.

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

С помощью комбинаций указанных методов

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

Вывод массива на лист

Для корректного вывода массива на лист нужно выделить диапазон ячеек эквивалентной размерности и размера, использовать метод создания массива (вручную или формулой), и нажать

Ctrl+Shift+Enter

Если выделить недостаточное количество ячеек – будут выведены не все элементы массива, а только те, что соответствуют по порядку.
Если выделить избыточное количество – лишние ячейки выдадут ошибку #Н/Д.

На примере результирующий массив должен быть размером 5*5, но перед вводом формулы массива был выделен диапазон 6*6.

Ошибка НД при несоответствии размера диапазона и массива

Взаимодействие функций Excel с массивами

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

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

Из раздела математических функций к таковым также относятся ПРОИЗВЕД, СУММПРОИЗВ, СУММЕСЛИ, СУММЕСЛИМН.

Практически все статистические функции по природе берут на вход диапазон или массив и возвращают одно число. Наиболее популярные из них – СРЗНАЧ, МИН, МАКС, СЧЁТ, СЧЁТЗ, СЧЁТЕСЛИ.

Среди логических функций агрегирующим свойством обладают функция И и функция ИЛИ.

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

  • учитывают весь массив
  • выводят одно значение

ВЫБОР, ВПР, ГПР, ИНДЕКС, ПОИСКПОЗ – эти функции поиска используются наиболее часто.

Формулы массива – примеры формул

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

Приступаем к практическим шагам:

Учимся формулам массива 1/4:

Как создать алфавит в Excel

Понравилась статья? Поделить с друзьями:
  • Как проверить word файл на вирусы
  • Как проверить грамматику в excel
  • Как присвоить название таблице в excel
  • Как проверить excel на вирусы
  • Как проверить год excel