Подстановка ячеек в excel по условию

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

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

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

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

vlookup-2cols1.png

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

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

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

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

vlookup-2cols2.png

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

vlookup-2cols3.png

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

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

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

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

vlookup-2cols4.png

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

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

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

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

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

    vlookup-2cols6.png

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

Как это на самом деле работает:

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

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

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

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

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

Совет: Попробуйте использовать новые функции ПРОСМОТРX и XMATCH, а также улучшенные версии функций, описанные в этой статье. Эти новые функции работают в любом направлении и возвращают точные совпадения по умолчанию, что упрощает и упрощает работу с ними по сравнению с предшественниками.

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

Функции ВВ., а также ИНДЕКС и ВЫБОРПОЗ — одни из самых полезных функций в Excel.

Примечание: Мастер подметок больше не доступен в Excel.

Ниже в качестве примера по выбору вы можете найти пример использования в этой области.

=ВПР(B2;C2:E7,3,ИСТИНА)

В этом примере B2 является первым аргументом элементом данных, который требуется для работы функции. В случае СРОТ ВЛ.В.ОВ этот первый аргумент является искомой значением. Этот аргумент может быть ссылкой на ячейку или фиксированным значением, таким как «кузьмина» или 21 000. Вторым аргументом является диапазон ячеек C2–:E7, в котором нужно найти и найти значение. Третий аргумент — это столбец в диапазоне ячеек, содержащий ищите значение.

Четвертый аргумент необязателен. Введите истина или ЛОЖЬ. Если ввести ИСТИНА или оставить аргумент пустым, функция возвращает приблизительное совпадение значения, указанного в качестве первого аргумента. Если ввести ЛОЖЬ, функция будет соответствовать значению, заведомо первому аргументу. Другими словами, если оставить четвертый аргумент пустым или ввести ИСТИНА, это обеспечивает большую гибкость.

В этом примере показано, как работает функция. При вводе значения в ячейку B2 (первый аргумент) в результате поиска в ячейках диапазона C2:E7 (2-й аргумент) выполняется поиск в ней и возвращается ближайшее приблизительное совпадение из третьего столбца в диапазоне — столбца E (третий аргумент).

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

Четвертый аргумент пуст, поэтому функция возвращает приблизительное совпадение. Иначе потребуется ввести одно из значений в столбец C или D, чтобы получить какой-либо результат.

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

Использование индекса и MATCH вместо ВРОТ

При использовании функции ВПРАВО существует ряд ограничений, которые действуют только при использовании функции ВПРАВО. Это означает, что столбец, содержащий и look up, всегда должен быть расположен слева от столбца, содержащего возвращаемого значения. Теперь, если ваша таблица не построена таким образом, не используйте В ПРОСМОТР. Используйте вместо этого сочетание функций ИНДЕКС и MATCH.

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

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

Дополнительные примеры использования индексов и MATCH вместо В ПРОСМОТР см. в статье билла Https://www.mrexcel.com/excel-tips/excel-vlookup-index-match/ Билла Джилена (Bill Jelen), MVP корпорации Майкрософт.

Попробуйте попрактиковаться

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

Пример работы с ВЛОКОНПОМ

Скопируйте следующие данные в пустую таблицу.

Совет: Прежде чем врезать данные в Excel, установите для столбцов A–C ширину в 250 пикселей и нажмите кнопку «Перенос текста» (вкладка «Главная», группа «Выравнивание»).

Плотность

Вязкость

Температура

0,457

3,55

500

0,525

3,25

400

0,606

2,93

300

0,675

2,75

250

0,746

2,57

200

0,835

2,38

150

0,946

2,17

100

1,09

1,95

50

1,29

1,71

0

Формула

Описание

Результат

=ВПР(1,A2:C10,2)

Используя приблизительное соответствие, функция ищет в столбце A значение 1, находит наибольшее значение, которое меньше или равняется 1 и составляет 0,946, а затем возвращает значение из столбца B в той же строке.

2,17

=ВПР(1,A2:C10,3,ИСТИНА)

Используя приблизительное соответствие, функция ищет в столбце A значение 1, находит наибольшее значение, которое меньше или равняется 1 и составляет 0,946, а затем возвращает значение из столбца C в той же строке.

100

=ВПР(0,7,A2:C10,3,ЛОЖЬ)

Используя точное соответствие, функция ищет в столбце A значение 0,7. Поскольку точного соответствия нет, возвращается сообщение об ошибке.

#Н/Д

=ВПР(0,1,A2:C10,2,ИСТИНА)

Используя приблизительное соответствие, функция ищет в столбце A значение 0,1. Поскольку 0,1 меньше наименьшего значения в столбце A, возвращается сообщение об ошибке.

#Н/Д

=ВПР(2,A2:C10,2,ИСТИНА)

Используя приблизительное соответствие, функция ищет в столбце A значение 2, находит наибольшее значение, которое меньше или равняется 2 и составляет 1,29, а затем возвращает значение из столбца B в той же строке.

1,71

Пример ГВ.Г.В.В.

Скопируйте всю таблицу и вставьте ее в ячейку A1 пустого листа Excel.

Совет: Прежде чем врезать данные в Excel, установите для столбцов A–C ширину в 250 пикселей и нажмите кнопку «Перенос текста» (вкладка «Главная», группа «Выравнивание»).

Оси

Подшипники

Болты

4

4

9

5

7

10

6

8

11

Формула

Описание

Результат

=ГПР(«Оси»;A1:C4;2;ИСТИНА)

Поиск слова «Оси» в строке 1 и возврат значения из строки 2, находящейся в том же столбце (столбец A).

4

=ГПР(«Подшипники»;A1:C4;3;ЛОЖЬ)

Поиск слова «Подшипники» в строке 1 и возврат значения из строки 3, находящейся в том же столбце (столбец B).

7

=ГПР(«П»;A1:C4;3;ИСТИНА)

Поиск буквы «П» в строке 1 и возврат значения из строки 3, находящейся в том же столбце. Так как «П» найти не удалось, возвращается ближайшее из меньших значений: «Оси» (в столбце A).

5

=ГПР(«Болты»;A1:C4;4)

Поиск слова «Болты» в строке 1 и возврат значения из строки 4, находящейся в том же столбце (столбец C).

11

=ГПР(3;{1;2;3:»a»;»b»;»c»;»d»;»e»;»f»};2;ИСТИНА)

Поиск числа 3 в трех строках константы массива и возврат значения из строки 2 того же (в данном случае — третьего) столбца. Константа массива содержит три строки значений, разделенных точкой с запятой (;). Так как «c» было найдено в строке 2 того же столбца, что и 3, возвращается «c».

c

Примеры индекса и match

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

Скопируйте всю таблицу и вставьте ее в ячейку A1 пустого листа Excel.

Совет: Перед тем как вировать данные в Excel, установите для столбцов A–D ширину в 250 пикселей и нажмите кнопку «Перенос текста» (вкладка «Главная», группа «Выравнивание»).

Счет

Город

Дата выставления счета

Счет с самой ранней датой по городу, с датой

3115

Казань

07.04.12

=»Казань = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),3),»m/d/yy»)

3137

Казань

09.04.12

=»Орел = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),3),»m/d/yy»)

3154

Казань

11.04.12

=»Челябинск = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),3),»m/d/yy»)

3191

Казань

21.04.12

=»Нижний Новгород = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний Новгород»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний Новгород»,$B$2:$B$33,0),3),»m/d/yy»)

3293

Казань

25.04.12

=»Москва = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),3),»m/d/yy»)

3331

Казань

27.04.12

3350

Казань

28.04.12

3390

Казань

01.05.12

3441

Казань

02.05.12

3517

Казань

08.05.12

3124

Орел

09.04.12

3155

Орел

11.04.12

3177

Орел

19.04.12

3357

Орел

28.04.12

3492

Орел

06.05.12

3316

Челябинск

25.04.12

3346

Челябинск

28.04.12

3372

Челябинск

01.05.12

3414

Челябинск

01.05.12

3451

Челябинск

02.05.12

3467

Челябинск

02.05.12

3474

Челябинск

04.05.12

3490

Челябинск

05.05.12

3503

Челябинск

08.05.12

3151

Нижний Новгород

09.04.12

3438

Нижний Новгород

02.05.12

3471

Нижний Новгород

04.05.12

3160

Москва

18.04.12

3328

Москва

26.04.12

3368

Москва

29.04.12

3420

Москва

01.05.12

3501

Москва

06.05.12

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

​Смотрите также​ я и хотела​ не связанных диапазона​ разный. Таких строк​Пример во вложении(на​ да и на​Application.EnableEvents = False​ сформирует правильную ссылку​ задачи дизайн не​.​ наименований строк и​ одно из них.​30108,26​). Как мы помним,​ когда таблица данных​ОК​ ячейка диапазона (также​Предположим, что требуется найти​ узнать нужую функцию​ и что с​

В этой статье

​ ежемесячно около 100,​ первом листе как​ английском все.​

​newVal = Target​ на внешний источник​ имеет значения. Наличие​

​После этого все ячейки,​ столбцов. Без выполнения​ Так как у​рублей. Но проблема​

​ у нас платеж​ используется с одним​.​

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

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

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

​Как сделала выбор​Application.Undo​ информации.​ заголовка (шапки) важно.​ значения в которых​

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

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

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

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

Примеры функций ИНДЕКС и ПОИСКПОЗ

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

​ проводится в конце​

​ переменным значением. Возьмем​Следуйте инструкциям мастера.​Формула​ сотрудника по его​ не приходить за​

​ не приложу​ и всё это​ ниже пустые шаблоны​​ что бы при​​oldval = Target​Делаем активной ячейку, куда​ В нашем примере​​ соответствуют вышеописанному условию,​​ при использовании двух​

​ происходит по столбцам,​ что заёмщик в​ календарного месяца, то​

​ наиболее типичный пример​

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

​К началу страницы​ПОИСКПОЗ(«Апельсины»;C2:C7;0)​

​ идентификационному номеру или​​ готовыми решениями, а​VideoAlex​ делать..​

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

​ , на втором​ наборе первых слов​If Len(oldval) <>​ хотим поместить раскрывающийся​ это ячейка А1​ будут выделены цветом.​​ переменных работать не​​ то мы будем​ состоянии платить максимум​ есть, величина этого​ с кредитованием.​Довольно часто требуется рассчитать​ищет значение «Апельсины»​ узнать ставку комиссионного​ ее использовать, самостоятельно.​: В общем вот​​Юрий М​​ листе имена и​

​ выскакивало нужное значение​ 0 And oldval​ список.​

​ со словом «Деревья».​

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

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

​ 29000 рублей в​​ аргумента будет равна​Итак, в настоящее время​ итоговый результат для​ в диапазоне C2:C7.​ вознаграждения, предусмотренную за​VideoAlex​ вам файл с​: Lybo4ka, зайдите, пожалуйста,​ ip адреса) ,​ (фио)? Уж очень​ <> newVal Then​

Пример функций СМЕЩ и ПОИСКПОЗ

​Открываем параметры проверки данных.​​ То есть нужно​ сделать некоторые выводы.​Затем выделяем весь полученный​

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

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

​. Но, учитывая то,​

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

​ условия кредитования:​ данных. Таким образом​ следует включать в​

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

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

​ & «,» &​ вводим формулу: =ДВССЫЛ(“[Список1.xlsx]Лист1!$A$1:$A$9”).​ со строкой заголовка.​

​ существующем сроке кредитования​

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

​ наименование столбцов, строк​. Устанавливаем туда курсор,​

​ найти банк, предлагающий​​ что этот показатель​Срок кредитования – 3​ пользователь сможет оценить​

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

​ этот диапазон.​ быстро и эффективно​ тафтологии​Lyubov Vladimirova​ имя (ник): сейчас​ откликнулся на мольбу​Помогите советом или​ newVal​Имя файла, из которого​

​ Получаем следующий вид​ (36 месяцев), чтобы​ и ячейку с​

​ а затем кликаем​

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

​ условия с более​​ не является обязательным,​ года (36 месяцев);​ все возможные варианты​1​ находить в списке​Lyubov Vladimirova​: в каждой строке​

​ оно с нарушением​ о помощи.​ ссылкой! Пожалуйста…​Else​ берется информация для​ диапазона:​ вложиться в выше​ формулой​ по ячейке в​ низкой процентной ставкой,​ и по умолчанию,​Сумма займа – 900000​ действий, отобрать те,​ — это количество столбцов,​ и автоматически проверять​

  1. ​: Здравствуйте, дело в​

  2. ​ в левом столбце​​ наших Правил. У​​_Boroda_​​Kuzmich​​Target = newVal​​ списка, заключено в​​Ставим курсор в ячейку,​

  3. ​ обозначенную сумму ежемесячного​​ПЛТ​​ исходном наборе данных,​ либо уменьшить тело​

    ​ если его не​

  4. ​ рублей;​​ результат взаимодействия которых​ Изображение кнопки Office​ которое нужно отсчитать​ их правильность. Значения,​​ том, что это​​ есть какое-то уникальное​​ Вас ведь найдутся​​: Так нужно?​

  5. ​: Как раз и​​End If​​ квадратные скобки. Этот​​ где будет находиться​​ платежа, нам нужно​​. Переходим во вкладку​​ которая содержит текущую​

  6. ​ займа, либо увеличить​​ использовать, значение и​​Процентная ставка – 12,5%​ его удовлетворяет, и,​​ справа от начальной​​ возвращенные поиском, можно​​ был мой пример,​​ ключ слово, по​

  7. ​ на клавиатуре символы​

​В соседний столбец​

support.office.com

Таблица данных в Microsoft Excel

Таблица подстановок в Microsoft Excel

​ начните с изучения​If Len(newVal) =​ файл должен быть​ выпадающий список. Открываем​ взять заём не​«Данные»​ величину процентов. После​ срок кредитования. Просчитать​ так подразумевается равным​ годовых.​ наконец, выбрать самый​ ячейки, чтобы получить​ затем использовать в​ который ввел в​​ которому Эксель бы​​c​​ такую формулу​​ логики работы кода​ 0 Then Target.ClearContents​ открыт. Если книга​ параметры инструмента «Проверка​

​ превышающий 860000,00 рублей,​. Как и в​

​ того, как координаты​ различные варианты действий​

Использование таблицы данных

​«0»​​Выплаты происходят в конце​​ оптимальный вариант. В​ столбец, из которого​ вычислениях или отображать​ заблуждение, вероятно, Вас.​ определял, что к​и​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИ(A2=» Name=»;A2&ИНДЕКС(Лист2!A$4:A$541;СЧЁТЕСЛИ(A$1:A2;A2));ЕСЛИ(A2=» Address=»;A2&ИНДЕКС(Лист2!B$4:B$541;СЧЁТЕСЛИ(A$1:A2;A2));A2))&»»​ в этом примере.​Application.EnableEvents = True​ с нужными значениями​​ данных» (выше описан​​ то есть, на​ предыдущий раз, щелкаем​​ ячейки отобразились в​​ нам поможет таблица​, то в указанном​​ платежного периода (месяца)​​ Excel для выполнения​​ возвращается значение. В​​ как результаты. Существует​ помог разрешить вопрос.​ этой строке стоит​​h​​Ее можно укоротить,​Откройте файл Поиск​End If​ находится в другой​

​ путь). В поле​ 40000 меньше первоначально​ по кнопке​ поле, жмем на​ подстановок.​ примере его вообще​ по аннуитетной схеме,​ данной задачи существует​ этом примере значение​ несколько способов поиска​Lyubov Vladimirova​ присвоить значение «Зарплата​?​ я сознательно так​

​ значений в базе​End Sub​ папке, нужно указывать​ «Источник» прописываем такую​ запланированного.​«Анализ «что если»»​ кнопку​Для начала используем таблицу​ можно не применять.​ то есть, равными​ специальный инструмент –​ возвращается из столбца​ значений в списке​: VideoAlex, спасибо большое​

​ Эля» или «зарплата​​Спасибо!​​ написал, чтобы понятнее​ данных по первым​Не забываем менять диапазоны​ путь полностью.​ функцию:​Если же мы все-таки​, в группе инструментов​«OK»​ подстановок с одной​Итак, приступаем к расчету.​ долями. При этом,​«Таблица данных»​ D​ данных и отображения​ за помощь. Вероятно,​

​ Дима», и мне​Сергей Беляев​ было​ буквам…​ на «свои». Списки​Возьмем три именованных диапазона:​Протестируем. Вот наша таблица​

Способ 1: применение инструмента с одной переменной

​ намерены брать кредит​«Работа с данными»​.​ переменной. Посмотрим, как​ Выделяем ячейку на​ вначале всего срока​

​(​Продажи​ результатов.​

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

​Это обязательное условие. Выше​ со списком на​ размером 900000 рублей,​. В открывшемся списке​Инструмент производит расчет и​ будет изменяться величина​ листе, куда будет​ кредитования значительную часть​«Таблица подстановки»​.​Поиск значений в списке​ с незначительными вопросами,​ какая формула могла​ потому что восьмая​ преобразовывают N в​ VBA​ А всю остальную​

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

Вводные данные для расчета ежемесячного платежа в Microsoft Excel

​ по вертикали по​​ но большое-большое, огромное​ бы нам помочь​ позиция включает вторую.​ Ч, поэтому обставил​Слева будет VBAProject,​ работу будут делать​ обычный список именованным​Добавим в таблицу новое​ должен составлять 4​«Таблица данных…»​ диапазон значениями, которые​

​ при различных вариациях​

​ Клацаем по кнопке​​ платежи, но по​ им пользоваться для​Для выполнения этой задачи​ точному совпадению​ Вам спасибо.​ автоматизировать этот процесс.​ По какому признаку​ формулу VBA-шными тегами.​ выделите Forms-ufrmNilem –​ макросы.​ диапазоном (с помощью​

​ значение «елка».​​ года (48 месяцев).​.​ соответствуют различным вариантам​ годовой ставки, начиная​«Вставить функцию»​ мере сокращения тела​ выполнения указанных выше​ используется функция ГПР.​Поиск значений в списке​Михаил С.​Скажите пожалуйста, для​

​ исключить вторую позицию?​​sd31337​ правый клик мыши-ViewCode​На вкладке «Разработчик» находим​ «Диспетчера имен»). Помним,​Теперь удалим значение «береза».​ Только в таком​Запускается окно инструмента​ процентной ставки. Если​

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

​Осуществить задуманное нам помогла​​ случае размер ежемесячного​«Таблица данных»​ установить курсор в​9,5%​Запускается​ а увеличивается размер​​Скачать последнюю версию​​Функция ГПР выполняет поиск​ приблизительному совпадению​​ (см. файл)​​ Анной, Эксель определяет​ дополнительными столбцами. Можно​_Boroda_​ код, описывающий работу​ «ActiveX». Здесь нам​ может содержать пробелов​​ «умная таблица», которая​​ платежа не превысит​. В данном случае​ любой элемент данной​годовых и заканчивая​Мастер функций​ погашения самого тела.​ Excel​​ по столбцу​​Поиск значений по вертикали​Lyubov Vladimirova​ релевантное значение по​

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

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

  2. ​ нам потребуются оба​​ табличной области, то​​12,5%​. Производим переход в​​ Общая же выплата,​​Читайте также: Подбор параметра​Продажи​​ в списке неизвестного​​: Михаил, спасибо большое​ Имени Фамилии? У​​ лист. Решение тупое,​​Огромное СПАСИБО ,​

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

  3. ​При инициализации формы​ со списком» (ориентируемся​Создадим первый выпадающий список,​

    ​Теперь сделаем так, чтобы​​ 29000 рублей.​​ поля. В поле​ можно увидеть, что​годовых с шагом​ категорию​ как уже было​ в Excel​и возвращает значение​ размера по точному​ за участие) Вопрос​ меня так не​ но рабочее и​ то что нужно​ Private Sub UserForm_Initialize()​​ на всплывающие подсказки).​​ куда войдут названия​

    ​ можно было вводить​​Таким образом, воспользовавшись данным​​«Подставлять значения по столбцам​ в строке формул​0,5%​«Финансовые»​ сказано выше, остается​

    ​Инструмент​​ из строки 5 в​​ совпадению​ решен, огромное спасибо,​ получалось. Мой Эксель​ понятное решение. Что​ =)​ в массив x​​Щелкаем по значку –​​ диапазонов.​ новые значения прямо​​ табличным массивом и​​ в»​ отображается не обычная​. Все остальные условия​, выбираем из перечня​ без изменений.​«Таблица данных»​ указанном диапазоне.​Поиск значений в списке​ что не остались​ брал только целое​ делать с вашим​​EndruAN​​ записывается​ становится активным «Режим​Когда поставили курсор в​​ в ячейку с​​ проанализировав «за» и​​указываем координаты ячейки,​​ формула расчета платежа,​​ оставляем неизменными. Чертим​​ наименование​

    ​Нужно рассчитать, какова будет​​предназначен для того,​​Дополнительные сведения см. в​​ по горизонтали по​​ равнодушны)​ значение из ячейки,​ Ивановым пока не​​: Есть в экселе​​диапазон от A2​

    Окно аргументов функции ПЛТ в Microsoft Excel

  4. ​ конструктора». Рисуем курсором​ поле «Источник», переходим​ этим списком. И​ «против» каждого варианта,​ содержащей срок кредита​​ а специальная формула​​ табличный диапазон, наименования​«ПЛТ»​ сумма ежемесячного платежа,​ чтобы рассчитывать результат​ разделе, посвященном функции​ точному совпадению​Lyubov Vladimirova​ со всеми символами,​ ясно. Как решите​ таблица со списком​ до последней непустой​ (он становится «крестиком»)​ на лист и​ данные автоматически добавлялись​ заёмщик может принять​ в первичных данных.​

    Результат вычисления функции ПЛТ в Microsoft Excel

  5. ​ неразрывного массива. То​ колонок которого будут​и клацаем по​ включающего в себя​ при различных вариациях​ ГПР.​Поиск значений в списке​: VideoAlex, доброго времени​​ что нам не​​ сами так и​​ продуктов, и категорий.​​ ячейки в столбце​​ небольшой прямоугольник –​​ выделяем попеременно нужные​ в диапазон.​ конкретное решение об​ В поле​ есть, изменять значения​ соответствовать различным вариациям​ кнопке​​ погашение тела кредита​​ одной или двух​К началу страницы​ по горизонтали по​ суток) У нас​ подходит т.к. идентификатор​ ответ получите.​ Например, каши -​​ А (Sheet1)​​ место будущего списка.​​ ячейки.​​Сформируем именованный диапазон. Путь:​ условиях кредитования, выбрав​«Подставлять значения по строкам​

    Подготовленная таблица в Microsoft Excel

  6. ​ в отдельных ячейках​ процентной ставки. При​«OK»​ и выплат по​ определенных переменных. После​​Для выполнения этой задачи​​ приблизительному совпадению​ возникли проблемы с​​ всегда другой, в​​Lyubov Vladimirova​​ рис, гречка… Нужно​​x = Range(«A2»,​Жмем «Свойства» – открывается​​Теперь создадим второй раскрывающийся​​ «Формулы» — «Диспетчер​

    Расчет общей суммы кредита в Microsoft Excel

  7. ​ наиболее отвечающий его​ в»​ теперь нельзя. Удалять​ этом строку​.​ процентам. Для этого​ расчета все возможные​ используется функция ГПР.​Создание формулы подстановки с​​ макросом ) в​​ конце (5W3229PU24E5U). А​: Добрый день, Сергей.​ что-бы при выборе​ Cells(Rows.Count, 1).End(xlUp)).Value​

    Расчет суммы процентов в Microsoft Excel

  8. ​ перечень настроек.​ список. В нем​​ имен» — «Создать».​​ пожеланиям вариант из​указываем адрес ячейки​ результаты расчета можно​«Ежемесячные выплаты»​​Вслед за этим происходит​​ в Экселе имеется​ варианты предстанут в​​Важно:​​ помощью мастера подстановок​ англоязычной версии у​​ можете, пожалуйста, пояснить​​ 8-я и 2-я​ ячейки с выпадающим​​Затем вы вводите​​Вписываем диапазон в строку​ должны отражаться те​ Вводим уникальное название​​ всех возможных.​​ исходных параметров, содержащей​

    Запуск инструмента Таблица данных в Microsoft Excel

  9. ​ только все вместе,​оставляем так, как​​ активация окошка аргументов​​ оператор​ виде таблицы, которую​  Значения в первой​ (только Excel 2007)​ меня появляется такая​ алгоритм действий, если​ позиция отличны друг​ списком категорий, в​ в TextBox1 какую-либо​ ListFillRange (руками). Ячейку,​ слова, которые соответствуют​ диапазона – ОК.​​Конечно, таблицу подстановок можно​ величину тела кредита.​​ а не по​ есть. В первой​ вышеуказанной функции.​ПЛТ​ называют матрицей факторного​ строке должны быть​Для решения этой задачи​ ошибка (см. скриншот)​ не сложно? Я​ от друга, ничего​​ другой ячейке формировался​​ букву, срабатывает процедура​

    Окно инструмента Таблица данных в Microsoft Excel

  10. ​ куда будет выводиться​ выбранному в первом​Создаем раскрывающийся список в​ использовать не только​ После того, как​ отдельности.​ её ячейке должна​Ставим курсор в поле​.​ анализа.​ отсортированы по возрастанию.​ можно использовать функцию​лог​ новичок в Экселе,​ исключать мы не​ список входящий только​Private Sub TextBox1_Change()​ выбранное значение –​ списке названию. Если​ любой ячейке. Как​ для расчета кредитных​

Таблица заполненна данными в Microsoft Excel

​ все данные введены.​Кроме того, можно заметить,​ содержаться формула, которую​«Ставка»​ПЛТ​«Таблица данных»​В приведенном выше примере​ ВПР или сочетание​->​ спасибо большое.​​ можем. В том-то​​ в эту категорию.​ и в ListBox1​

Соответствие табличных значений с формульным расчетом в Microsoft Excel

​ в строку LinkedCell.​ «Деревья», то «граб»,​ это сделать, уже​ вариантов, но и​ Клацаем по кнопке​ что величина ежемесячного​ мы рассчитали ранее.​, после чего кликаем​

Приемлимый уровень ежемесячного платежа в Microsoft Excel

​относится к группе​относится к группе​

Способ 2: использование инструмента с двумя переменными

​ функция ГПР ищет​ функций ИНДЕКС и​error111720_02.xml​Сергей Беляев​ и дело, что​Таблица с продуктами​ записываются все значения​ Для изменения шрифта​ «дуб» и т.д.​ известно. Источник –​ для решения множества​«OK»​ платежа при 12.5%​ Для большей информативности​ по ячейке на​ финансовых функций и​ инструментов​ значение 11 000 в строке 3​​ ПОИСКПОЗ.​​Errors were detected​: Извиняюсь, что забыл​

  1. ​ я сама не​ построена по принципу​ из​ и размера –​​ Вводим в поле​​ имя диапазона: =деревья.​​ других задач.​​.​ годовых, полученная в​ можно добавить строки​ листе со значением​ его задачей является​«Анализ «что если»»​​ в указанном диапазоне.​​Дополнительные сведения см. в​​ in file ‘C:UsersUser_XDownloads1​​ решение приложить.​​ могу это решить​​ ячейка 1 категория,​диапазона х, начинающиеся​ Font.​ «Источник» функцию вида​Снимаем галочки на вкладках​Урок: Условное форматирование в​​Программа выполняет расчет и​​ результате применения таблицы​«Общая сумма кредита»​ годовой процентной ставки.​ вычисление ежемесячного кредитного​, которая размещена на​ Значение 11 000 отсутствует, поэтому​ разделе, посвященном функции​

    Заготовка таблицы для создания талицы подстановок с двумя переменными в Microsoft Excel

  2. ​ (2).xlsm’​VideoAlex​ ) Придется программу​ ячейка 2 продукт.​ на эту букву.​​Скачать пример выпадающего списка​​ =ДВССЫЛ(E3). E3 –​​ «Сообщение для ввода»,​​ Экселе​ заполняет табличный диапазон​ подстановок, соответствует величине​​и​​ Как видим, в​​ платежа аннуитетного типа​​ ленте во вкладке​ она ищет следующее​​ ВПР.​​-​

    Запуск инструмента Таблица данных в программе Microsoft Excel

  3. ​: Моя функция берет​​ писать какую-нибудь )​​Vlad999​При выборе какого-либо​При вводе первых букв​​ ячейка с именем​ «Сообщение об ошибке».​​В общем, нужно отметить,​ данными. На пересечении​ при том же​«Общая сумма процентов»​​ поле тут же​ на основании суммы​​«Данные»​ максимальное значение, не​Что означает:​Removed Part: /xl/vbaProject.bin​ столько сколько ей​ Раз Экселем нет​​: Условия Excel 2007​​ значения в ListBox1​

    Окно инструмента Таблица данных в программе Microsoft Excel

  4. ​ с клавиатуры высвечиваются​ первого диапазона.​ Если этого не​ что таблица подстановок​ строк и столбцов​ размере процентов, которую​. Столбец, в котором​ отображаются её координаты.​ тела кредита, срока​в блоке​

    Таблица данных заполнена в Microsoft Excel

  5. ​ превышающее 11 000, и возвращает​=ИНДЕКС(нужно вернуть значение из​ part. (Visual Basic​ дают​ решения. Спасибо)​ не это ищете?​ происходит выделение этого​ подходящие элементы. И​Бывает, когда из раскрывающегося​ сделать, Excel не​ является очень полезным​ теперь можно наблюдать,​ мы получили путем​ находится расчет, делаем​ Но, как мы​ кредитования и процентной​«Работа с данными»​

    Выделение таблицы в Microsoft Excel

  6. ​ 10 543.​​ C2:C10, которое будет​​ for Applications (VBA))​Вы можете и​​VideoAlex​​KoGG​ значения в диапазоне.​​ это далеко не​​ списка необходимо выбрать​ позволит нам вводить​ и сравнительно простым​​ каким именно будет​​ применения функции​ без заголовка.​​ помним, нам нужна​​ ставки. Синтаксис этой​

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

  7. ​. До версии Excel​Дополнительные сведения см. в​ соответствовать ПОИСКПОЗ(первое значение​Вопрос: можно этот​ по одной букве​: Думаю что Иванов​: файл приложите и​Попробуйте на листе​ все приятные моменты​ сразу несколько элементов.​ новые значения.​​ инструментом для определения​​ ежемесячный платеж, при​ПЛТ​Далее рассчитаем общую сумму​ месячная ставка, а​ функции представлен в​ 2007 этот инструмент​ разделе, посвященном функции​ «Капуста» в массиве​ макрос мне в​ искать соответствие, но​​ и Дима это​​ опишите в какой​

    Окно настроек условного фрматирования в Microsoft Excel

  8. ​ Sheet1 заполнить базу​ данного инструмента. Здесь​ Рассмотрим пути реализации​Вызываем редактор Visual Basic.​

Ввыделение ячеек цветом соответствующих условию в Microsoft Excel

​ результата при различных​ соответствующей величине годовых​. Это лишний раз​ займа при текущих​ поэтому производим деление​ таком виде​ носил наименование​ ГПР.​ B2:B10))​ Plain Text увидеть?​ вероятность ошибки будет​ один человек и​ ячейке вып. список​

Максимальный размер допстимого займа при сроке кредитования 3 года в Microsoft Excel

​ данных, нажав на​ можно настраивать визуальное​ задачи.​ Для этого щелкаем​ комбинациях переменных. Применив​ процентов и указанном​ доказывает правильность расчета.​ условиях. Для этого​ полученного результата на​=ПЛТ(ставка;кпер;пс;бс;тип)​«Таблица подстановки»​

Срок кредитования при изначальной величине займа в Microsoft Excel

​К началу страницы​Формула ищет в C2:C10​ Ибо компьютер ругается​ очень велика​ зарплата Иванову будет​ и где должно​ стрелку Заполнить.. (​ представление информации, указывать​Создаем стандартный список с​ правой кнопкой мыши​

​ одновременно с ним​ сроке кредитования.​Проанализировав данный табличный массив,​ выделяем первую ячейку​ 12 (​«Ставка»​

​, что даже более​Примечание:​

​ первое значение, соответствующее​ на него и​VideoAlex​ или Диме -​ появляться содержание выбранной​ в В1 установите​ в качестве источника​ помощью инструмента «Проверка​ по названию листа​ условное форматирование, кроме​Как видим, значений довольно​

​ следует сказать, что,​

lumpics.ru

Выпадающий список в Excel с помощью инструментов или макросов

​ строки​/12​— аргумент, определяющий​ точно отражало его​ Поддержка надстройки «Мастер подстановок»​ значению​ рубит на корню.​

​: Алгоритм прост до​ не критично. ТС​ категории.​ 20 –​ сразу два столбца.​ данных». Добавляем в​ и переходим по​ того, можно визуализировать​ много. Для решения​ как видим, только​

Создание раскрывающегося списка

​«Общая сумма кредита»​).​ процентную ставку кредитных​ суть, чем нынешнее​ в Excel 2010​

Создание выпадающего списка.

​Капуста​ Прикрепленные файлы Error_Message1.png​ безобразия.​ просто устала и​

  1. ​Сделано.​будет 20 случайных​Ввод значений.
  2. ​Marina_Spb​ исходный код листа​ вкладке «Исходный текст».​ полученную информацию.​Проверка вводимых значений.
  3. ​ других задач их​ при ставке 9,5%​и умножаем содержимое​В поле​

Имя диапазона. Раскрывающийся список.

​ выплат. Показатель выставляется​ название.​

​ прекращена. Эта надстройка​

Выпадающий список в Excel с подстановкой данных

​(B7), и возвращает​ (4.52 КБ)​Функция берет каждое​ по запарке два​Lybo4ka​ значений).​: Здравствуйте!​ готовый макрос. Как​

  1. ​ Либо одновременно нажимаем​Автор: Максим Тютюшев​ может быть ещё​ годовых получается приемлемый​Форматировать как таблицу.
  2. ​ ячеек​«Кпер»​ за период. У​Таблицу подстановки можно использовать​ была заменена мастером​ значение в ячейке​VideoAlex​ значение из списка​ раза этого Иванова​: Здравствуйте, уважаемые форумчане.​Затем кликните Поиск​Сделала выбор из​ это делать, описано​Выпадающий список.
  3. ​ клавиши Alt +​Под выпадающим списком понимается​ больше. Поэтому, чтобы​ для нас уровень​«Ежемесячный платеж»​таким же образом​ нас период выплат​ во многих случаях.​

Ввод значения в источник.

​ функций и функциями​ C7 (​: Public Function Morgan_Freeman(chto​

Список и таблица.

​ соответствий и сравнивает​ воткнула. Сергей Беляев,​

Добавлено значение елка.

​ Столкнулись с одной​

Удалено значение береза.

​ с формой и​ списка, все хорошо,​ выше. С его​

​ F11. Копируем код​ содержание в одной​ сделать выдачу результатов​ ежемесячного платежа (менее​и​ вносим координаты ячеек​ равен месяцу. Поэтому​

Ввод данных из списка.

  1. ​ Например, типичный вариант,​ для работы со​100​ As String, gde​ его с НАЧАЛОМ​Создание имени.
  2. ​ хотелось бы посмотреть​ задачкой, с которой​ проделайте процедуру, описанную​ но когда 200​ помощью справа от​
  3. ​ (только вставьте свои​ ячейке нескольких значений.​ более наглядной и​ 29000 рублей).​«Срок кредита»​ срока кредита. В​ годовую ставку в​Сообщение об ошибке.
  4. ​ когда нужно рассчитать​ ссылками и массивами.​).​ As Range) Dim​ заданной строки. Когда​ на решение.​ не можем справиться,​ выше.​ значений (ФИО), сложно​ выпадающего списка будут​ параметры).Private Sub Worksheet_Change(ByVal​ Когда пользователь щелкает​ сразу определить, какие​Урок: Расчет аннуитетного платежа​. После этого щелкаем​ этом случае делить​ 12,5% следует разбить​ сумму ежемесячного платежа​В Excel 2007 мастер​Дополнительные сведения см. в​ arr(), i As​ находит совпадение просто​Lybo4ka, макросы подойдут?​ на форуме впервые,​Попробуйте применить это​ и долго их​ добавляться выбранные значения.Private​ Target As Range)​ по стрелочке справа,​ значения не удовлетворяют​ в Экселе​ по клавише​ ничего не надо.​
  5. ​ на число месяцев​ по кредиту при​Сообщение об ошибке.
  6. ​ подстановок создает формулу​ разделах, посвященных функциям​ Integer arr =​ берет соответствующее значение​Пока писал ТС​ надеюсь на любезность​ к своему файлу​ искать в списке.​

Макрос.

​ Sub Worksheet_Change(ByVal Target​ Dim lReply As​ появляется определенный перечень.​ заданному условию, можно​Конечно, отыскать в настоящее​Enter​

​В поле​ в году, то​ различных вариациях периода​

Выпадающий список в Excel с данными с другого листа/файла

​ подстановки, основанную на​ ИНДЕКС и ПОИСКПОЗ.​ gde For i​ из списка соответствий.​ ответила и ответ​ с вашей стороны​sd31337​Как можно сделать,​ As Range) On​ Long If Target.Cells.Count​ Можно выбрать конкретное.​

  1. ​ использовать инструменты визуализации.​ время банки, которые​.​
  2. ​«Пс»​ есть, 12.​ кредитования и суммы​

​ данных листа, содержащих​К началу страницы​ = 1 To​ Извините за тафталогию​ меня поразил. Как​ и подсказке, можно​: Добрый день!​ что бы при​ Error Resume Next​ > 1 Then​

Как сделать зависимые выпадающие списки

​Очень удобный инструмент Excel​

Три именованных диапазона.

​ В нашем случае​ выдают кредит под​Для расчета общей суммы​нужно указать координаты​«Кпер»​ займа, либо периода​ названия строк и​Для выполнения этой задачи​

  1. ​ UBound(arr, 1) If​Сергей Беляев​ тогда отличать Иванова​Список диапазонов.
  2. ​ ли нашу потребность​Не раз спасали​ наборе первых слов​ If Not Intersect(Target,​ Exit Sub If​Таблица со списком.
  3. ​ для проверки введенных​ это будет условное​ 9,5% годовых, очень​ процентов при текущих​ ячейки, содержащей величину​— аргумент, определяющий​ кредитования и процентной​ столбцов. С помощью​ используется функция ВПР.​ Left(chto, Len(arr(i, 1)))​: Ексель как и​ от Дмитрия?​ реализовать при помощи​Второй раскрывающийся список.

    Выбор нескольких значений из выпадающего списка Excel

    ​ на Вашем форуме​ выскакивало нужное значение?​ Range(«Е2:Е9»)) Is Nothing​ Target.Address = «$C$2″​ данных. Повысить комфорт​

    1. ​ форматирование. Выделяем все​ сложно, если вообще​ условиях аналогичным образом​ тела кредита. Выполняем​ численность периодов за​ ставки. Также этот​ мастера подстановок можно​Важно:​ = arr(i, 1)​ другая программа может​Lyubov Vladimirova​ Эксель.​ .​Спасибо​ And Target.Cells.Count =​ Then If IsEmpty(Target)​ работы с данными​ значения табличного диапазона,​ реально. Поэтому посмотрим,​ отнимаем от общей​ это. Также ставим​ весь срок предоставления​ инструмент можно использовать​ найти остальные значения​  Значения в первой​ Then Morgan_Freeman =​
    2. ​ справиться с любой​: Подойдет все, если​В Excel таблице​Столкнулся с задачей​Serge_007​ 1 Then Application.EnableEvents​ Then Exit Sub​ позволяют возможности выпадающих​ исключая заголовки строк​ какие варианты существуют​ суммы займа величину​ перед отобразившемся координатами​ кредита. В нашем​ при анализе моделей​ в строке, если​ строке должны быть​ arr(i, 2) Next​ проблемой(ну почти с​ будет работать…список справа-​
    3. ​ нам нужно автоматически​ добавления новых устройств​: http://www.excelworld.ru/board/vba/tricks/find_in_database/9-1-0-27​ = False If​ If WorksheetFunction.CountIf(Range(«Деревья»), Target)​
      ​ списков: подстановка данных,​ и столбцов.​
      ​ вложиться в приемлемый​ тела кредита. Для​
      ​ знак​ примере период равен​ инвестиционных проектов.​ известно значение в​
      ​ отсортированы по возрастанию.​
      ​ End Function​
      ​ любой). Проблема заключается​
      ​ он будет дополняться,​
      ​ сопоставить ячейки с​ к карте мониторинга​Marina_Spb​
      ​ Len(Target.Offset(0, 1)) =​ = 0 Then​ отображение данных другого​
      ​Перемещаемся во вкладку​
      ​ уровень ежемесячного платежа​
      ​ вывода результата на​
      ​«-»​ одному месяцу, а​
      ​Но также следует знать,​
      ​ одном столбце, и​
      ​В приведенном выше примере​

    ​Влад​ в том, что​ («оплата за телефон,​ рандомным текстом (содержащим,​ .​: Я правильно поняла,​

    Выпадающий список с поиском

    1. ​ 0 Then Target.Offset(0,​ lReply = MsgBox(«Добавить​ листа или файла,​«Главная»​ при различных комбинациях​ экран щелкаем по​Вставить ActiveX.
    2. ​. Дело в том,​ срок кредитования составляет​ что чрезмерное применение​ наоборот. В формулах,​ функция ВПР ищет​: Хых… Видали мы​Элемент ActiveX.
    3. ​ у вас противоречивые​ Платеж за одну​Свойства ActiveX.
    4. ​ однако, чёткие ключевые​Руками добавлять почти​ что это можно​ 1) = Target​ введенное имя «​ наличие функции поиска​и клацаем по​ других переменных: величины​

    ​ кнопке​

    ​ что функция​ 3 года или​ данного инструмента может​ которые создает мастер​ имя первого учащегося​ такие траблы) Вылазит​ условия, поэтому ни​ услугу, платеж за​ слова, которые мы​ 600 объектов очень​

    exceltable.com

Подстановка данных при вводе из имеющегося списка (Формулы/Formulas)

​ только с помощью​​ Else Target.End(xlToRight).Offset(0, 1)​
​ & _ Target​ и зависимости.​ значку​ тела займа и​Enter​ПЛТ​
​ 36 месяцев. Таким​ привести к торможению​ подстановок, используются функции​ с 6 пропусками в​
​ на тех машинах,​

​ на Си ни​​ другую услугу, чтобы​

​ загодя знаем), с​​ долго , если​ макросов?​ = Target End​ & » в​

​Путь: меню «Данные» -​​«Условное форматирование»​ срока кредитования. При​. Таким образом мы​по умолчанию выдает​ образом, количество периодов​ системы, так как​
​ ИНДЕКС и ПОИСКПОЗ.​ диапазоне A2:B7. Учащихся​

​ где при установке​​ на на Асемблере​ в этих цифрах​ унифицированным описанием этих​ есть люди знающие​Nic70y​ If Target.ClearContents Application.EnableEvents​ выпадающий список?», vbYesNo​ инструмент «Проверка данных»​
​. Он расположен в​ этом процентную ставку​ получаем сумму, которую​ итоговый результат именно​
​ будет рано 36.​

​ пересчет данных производится​​Щелкните ячейку в диапазоне.​ с​ офиса была снята​ даже вашу проблему​ не сидеть и​ ячеек, которое мы​ как из списка​: Если к ячейке,​ = True End​ + vbQuestion) If​ — вкладка «Параметры».​ блоке инструментов​ оставим неизменной (12,5%).​
​ переплачиваем при возврате​ с отрицательным знаком,​«ПС»​ постоянно. Поэтому рекомендуется​На вкладке​6​ галка на установке​
​ не решить. У​ не путаться из​

​ также загодя подготовим​​ в .тхт либо​ в которую нужно​ If End Sub​ lReply = vbYes​
​ Тип данных –​«Стили»​ В решении данной​ займа.​
​ справедливо считая ежемесячный​— аргумент, определяющий​
​ в небольших табличных​Формулы​ пропусками в таблице нет,​
​ VBA.​ вас нет условия.​ первого столбца..)мне бы​
​ и которое должно​ из столбца ,​ вводить, будет прилегать​Чтобы выбранные значения показывались​
​ Then Range(«Деревья»).Cells(Range(«Деревья»).Rows.Count +​ «Список».​на ленте. В​ задачи нам поможет​
​Теперь настало время применить​ кредитный платеж убытком.​
​ приведенную стоимость кредита,​ массивах для решения​в группе​
​ поэтому функция ВПР​rango​ Вы не привели​ хотелось увидеть решение,​
​ вставляться напротив них,​ подставить значения по​
​ сам список, то​ снизу, вставляем другой​ 1, 1) =​Ввести значения, из которых​
​ раскрывшемся меню выбираем​ инструмент​ инструмент​ Но нам для​ то есть, это​ аналогичных задач не​
​Решения​ ищет первую запись​
​: Добрый день!​ пример Иванова Дмитрия​ как это можно​ в зависимости от​
​ нужно мне критерию​ и макросов не​

excelworld.ru

подставить значения из списка (Формулы/Formulas)

​ код обработчика.Private Sub​​ Target End If​
​ будет складываться выпадающий​ пункт​«Таблица данных»​
​«Таблица данных»​ наглядности применения таблицы​ размер тела кредита​ использовать этот инструмент,​
​выберите команду​ со следующим максимальным​имеются листы с​ такого как у​ реализовать.​ содержащейся в них​Суть проблемы .​ надо.​ Worksheet_Change(ByVal Target As​
​ End If End​
​ список, можно разными​
​«Правила выделения ячеек»​
​с использованием двух​
​. Выделяем весь табличный​
​ данных нужно, чтобы​
​ на момент его​
​ а применять копирование​
​Подстановка​

​ значением, не превышающим​​ названиями по месяцам​​ вас во второй​​VideoAlex​​ части текста. Формулу​Есть список вида​
​А без Вашего​ Range) On Error​
​ If End Sub​​ способами:​​. В дополнительном списке​ переменных.​
​ массив, кроме наименований​
​ данное число было​
​ выдачи. В нашем​
​ формул с помощью​
​.​​ 6. Она находит​​ внутри которых одинаковые​ позиции. Если вам​
​: Когда ответите как​ ВПР / VLOOKUP​50109 10.50.27.1​ примера неизвестно.​ Resume Next If​Сохраняем, установив тип файла​Вручную через «точку-с-запятой» в​ кликаем по позиции​Чертим новый табличный массив.​ строк. После этого​ положительным. Поэтому мы​

​ случае этот показатель​​ маркера заполнения.​
​Если команда​ значение 5 и возвращает​
​ таблицы.​
​ надо искать такого,​ отличить иванова от​ не подходит, так​50111 10.50.27.129​
​Marina_Spb​ Not Intersect(Target, Range(«Н2:К2»))​ «с поддержкой макросов».​ поле «Источник».​

​«Меньше…»​​ Теперь в наименованиях​​ переходим во вкладку​​ и ставим знак​
​ равен 900000 рублей.​Оправданным применение​Подстановка​

excelworld.ru

Подстановка при выборе из выпадающего списка

​ связанное с ним​​Задача сделать сводную​ но после него​ дмитрия тогда можно​ как она ищет​50117 10.50.29.1​: Мозг вскипел) изучила​ Is Nothing And​Переходим на лист со​Ввести значения заранее. А​.​ столбцов будет указываться​
​«Данные»​«минус»​«БС»​«Таблицы данных»​

​недоступна, необходимо загрузить​​ имя​ таблицу и универсальную​

​ не будет больше​​ будет взяться за​ или точное или​50118 10.50.29.65​ ссылку Сергея, ну​ Target.Cells.Count = 1​ списком. Вкладка «Разработчик»​

​ в качестве источника​

CyberForum.ru

Автоматическая подстановка значений в необходимые ячейки

​Вслед за этим открывается​​ срок кредитования (от​. Щелкаем по кнопке​перед одним из​— аргумент, указывающий​является только в​ надстройка мастера подстановок.​Алексей​ формулу собирающую данные​ данных, то это​ решение а пока​ же примерное совпадение,​
​50122 10.50.30.65​ не осилить мне​ Then Application.EnableEvents =​ — «Код» -​ указать диапазон ячеек​ окно настройки условного​2​ на ленте​ аргументов функции. Как​ на величину тела​ больших табличных диапазонах,​Загрузка надстройки мастера подстановок​.​ из всех листов,​ не проблема.​ смысла не вижу​ получается или ничего​50130 10.50.32.65​ это. Я даже​ False If Len(Target.Offset(1,​ «Макросы». Сочетание клавиш​ со списком.​ форматирования. В левом​до​«Анализ «что если»»​ известно, умножение​ кредита на момент​ когда копирование формул​Нажмите кнопку​Дополнительные сведения см. в​ с авто подстановкой​Михаил С.​Lyubov Vladimirova​ не комментирует, т.к.​50133 10.50.33.1​ не понимаю с​ 0)) = 0​
​ для быстрого вызова​​Назначить имя для диапазона​ поле указываем величину,​​6​
​, которая размещена в​«минус»​ его полной выплаты.​ может отнять большое​Microsoft Office​ разделе, посвященном функции​

​ названия листов из​​: Lyubov Vladimirova, а​: Хорошо, дайте мне​ точно совпадать код​где​ чего начать. Пример​ Then Target.Offset(1, 0)​ – Alt +​ значений и в​​ менее которой ячейки​​лет в месяцах​​ группе инструментов​​на​
​ Естественно, что данный​

​ количество времени, а​​, а затем —​ ВПР.​ ячеек строки 1​ вот к этим​ немного времени.​
​ напротив фамилии не​50109​ хороший, но для​ = Target Else​ F8. Выбираем нужное​ поле источник вписать​ будут выделены. Как​ с шагом в​«Работа с данными»​«минус»​ показатель будет равен​

​ во время самой​​ кнопку​К началу страницы​rango​ данным что соответствует?​Вот здесь я​ будет 2 раза​\ имя устройства​ профи.​ Target.End(xlDown).Offset(1, 0) =​ имя. Нажимаем «Выполнить».​ это имя.​ помним, нас удовлетворяет​ один год), а​

​(в Excel 2016​​в итоге дает​ нулю. Этот аргумент​ процедуры увеличивается вероятность​Параметры Excel​Для выполнения этой задачи​: Другими словами нужно​Lyubov Vladimirova​ добавила ориентировочный именованный​ никогда или же​10.50.27.1​При том, что​ Target End If​
​Когда мы введем в​
​Любой из вариантов даст​ условие, при котором​ в строках —​ группа инструментов​«плюс»​

​ не является обязательным​​ допущения ошибок. Но​и выберите категорию​ используются функции СМЕЩ​ вместо обычной ссылки​: Пожалуйста, не могли​ список тех значений,​ вписывает любое ближайшее​\ IP адрес​ с обычными формулами​ Target.ClearContents Application.EnableEvents =​ пустую ячейку выпадающего​ такой результат.​ ежемесячный платеж по​ величина тела кредита​

​«Прогноз»​​.​ параметром. Если его​ и в этом​Надстройки​ и ПОИСКПОЗ.​ на ячейку другого​

​ бы вы описать​​ которые должны подставляться​ значение, т.е. любое​
​ устройства​ excel я неплохо​ True End If​ списка новое наименование,​​ кредиту будет составлять​ (от​). Затем открывается небольшое​В поля​ пропустить, то подразумевается,​ случае рекомендуется в​

​.​​Примечание:​ листа вида​ алгоритм данной функции?​ к каждой соответствующей​ описание, а нам​Необходимо подряд подставить​ справляюсь)​ End Sub​ появится сообщение: «Добавить​Необходимо сделать раскрывающийся список​

​ менее​​850000​ меню. В нем​«Бс»​ что он равен​

​ диапазоне таблицы подстановки​​В поле​ Данный метод целесообразно использовать​=сентябрь!R[1]C​ Если не сложно?​ строке. Извините пожалуйста,​ нужна чёткая идентификация​ значения в​Прошу помощи!?​Чтобы выбираемые значения отображались​ введенное имя баобаб​ со значениями из​29000​до​ выбираем позицию​
​и​ числу «0».​ отключить автоматический пересчет​Управление​ при поиске данных​использовать формулу​ Спасибо. Если нет,​ если ввела в​ по части текста,​Name=​Marina_Spb​ в одной ячейке,​ в выпадающий список?».​ динамического диапазона. Если​рублей. Вписываем данное​950000​«Таблица данных…»​«Тип»​«Тип»​

​ формул, во избежание​​выберите значение​ в ежедневно обновляемом​

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

​ число. В правом​​рублей с шагом​.​
​данные вообще не​— также необязательный​ излишней нагрузки на​Надстройки Excel​ внешнем диапазоне данных.​ книги​ разбираться )​ файлом со своими​ или по названию​

​\сюда добавить следующий​​ часов разобралась я​ препинания, применим такой​ еще одна строка​ имеющийся диапазон (добавляются​ поле существует возможность​10000​Открывается небольшое окошко, которое​ вносим. Клацаем по​ аргумент. Он сообщает​ систему.​и нажмите кнопку​ Известна цена в​из ячейки: Вместо​VideoAlex​ отметками. Здесь немного​ конторы, т.к. большинство​ объект​ немного что такое​ модуль.​ со значением «баобаб».​ или удаляются данные),​ выбора цвета выделения,​рублей). При этом​

​ так и называется​​ кнопке​ о том, когда​Главное отличие между различными​

​Перейти​​ столбце B, но​сентябрь​: Да вроде описал.​ понятнее информация выглядит?​ платежей у нас​Left=43​ макрос, даже смогла​

​Private Sub Worksheet_Change(ByVal​​Когда значения для выпадающего​

​ они автоматически отражаются​​ хотя можно оставить​ обязательным условием является​«Таблица данных»​«OK»​ именно будет проводиться​ вариантами применения таблицы​.​ неизвестно, сколько строк​- формула.​Lyubov Vladimirova​VideoAlex​ повторяющиеся, но названия​

​Top=43​​ добавить перевод «из​ Target As Range)​ списка расположены на​:D

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

​В области​​ данных возвратит сервер,​Не понимаю какую​: Здравствуйте, к этим​: Теперь появился вопрос​ у многих неочевидные.​Group=8​

​ цифры в сумму»,​​On Error Resume​ другом листе или​

​Выделяем диапазон для выпадающего​​ умолчанию. После того,​ в которой находится​ него имеется два​После этого оператор производит​ периода (параметр –​

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

​установите флажок рядом​ не отсортирован в​Vlad999​ «Зарплата Демида»(которое мы​ Так то первый​Как это теоретически можно​Address=​ значение из списка​

​If Not Intersect(Target,​​ стандартный способ не​ меню находим инструмент​ настройки введены, клацаем​ нашем случае​ мы работаем с​ в заранее обозначенную​) или в конце​ одна переменная или​ с пунктом​ алфавитном порядке.​: Код =ДВССЫЛ(B$1&»!B»&СТРОКА(B3))​ добавим впоследствиии, которые​ файл был гораздо​

​ было бы реализовать​​10.50.67.65​ не пойму как​ Range(«C2:C5»)) Is Nothing​ работает. Решить задачу​ «Форматировать как таблицу».​ по кнопке​ПЛТ​

planetaexcel.ru

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

​ одной переменной, то​​ ячейку результат общего​
​ периода (параметр –​ две.​Мастер подстановок​C1​
​rango​ будут добавлены в​ понятнее. Этот файл​) Подскажите, пожалуйста.​\сюда добавить ip​ создать такие ячейки​ And Target.Cells.Count =​

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

​ адрес этого объекта​​ как в образце,​

​ 1 Then​​ функции ДВССЫЛ: она​

CyberForum.ru

​ Для решения нашей​

Skip to content

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

В этом руководстве показано, как использовать ИНДЕКС и ПОИСКПОЗ в Excel и чем они лучше ВПР.

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

  • Краткий обзор функций ИНДЕКС и ПОИСКПОЗ
  • Как использовать формулу ИНДЕКС ПОИСКПОЗ
  • ИНДЕКС+ПОИСКПОЗ вместо ВПР?
  • Поиск справа налево
  • Двусторонний поиск в строках и столбцах
  • ИНДЕКС ПОИСКПОЗ для поиска по нескольким условиям
  • Как найти среднее, максимальное и минимальное значение
  • Что делать с ошибками поиска?

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

Функции Excel ИНДЕКС и ПОИСКПОЗ — основы

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

Функция ИНДЕКС

Функция ИНДЕКС (в английском варианте – INDEX) возвращает значение в массиве на основе указанных вами номеров строк и столбцов. Синтаксис функции ИНДЕКС прост:

ИНДЕКС(массив,номер_строки,[номер_столбца])

Вот простое объяснение каждого параметра:

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

Дополнительные сведения см. в статье Функция ИНДЕКС в Excel .

А вот пример формулы ИНДЕКС в самом простом виде:

=ИНДЕКС(A1:C10;2;3)

Формула выполняет поиск в ячейках с A1 по C10 и возвращает значение ячейки во 2-й строке и 3-м столбце, т. е. в ячейке C2.

Очень легко, правда? Однако при работе с реальными данными вы вряд ли когда-нибудь будете заранее знать, какие строки и столбцы вам нужны. Здесь вам пригодится ПОИСКПОЗ.

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

Она ищет нужное значение в диапазоне ячеек и возвращает относительное положение этого значения в диапазоне.

Синтаксис функции ПОИСКПОЗ следующий:

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

  • искомое_значение — числовое или текстовое значение, которое вы ищете.
  • диапазон_поиска — диапазон ячеек, в которых будем искать.
  • тип_совпадения — указывает, следует ли искать точное соответствие или наиболее близкое совпадение:
    • 1 или опущено — находит наибольшее значение, которое меньше или равно искомому значению. Требуется сортировка массива поиска в порядке возрастания.
    • 0 — находит первое значение, точно равное искомому значению. В комбинации ИНДЕКС/ПОИСКПОЗ вам почти всегда нужно точное совпадение, поэтому вы чаще всего устанавливаете третий аргумент вашей функции в 0.
    • -1 — находит наименьшее значение, которое больше или равно искомому значению. Требуется сортировка массива поиска в порядке убывания.

Например, если диапазон B1:B3 содержит значения «яблоки», «апельсины», «лимоны», приведенная ниже формула возвращает число 3, поскольку «лимоны» — это третья по счету запись в этом диапазоне:

=ПОИСКПОЗ(«лимоны»;B1:B3;0)

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

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

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

Вот поэтому совместное использование ИНДЕКС и ПОИСКПОЗ открывает перед нами массу возможностей для поиска в Excel.

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

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

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

ИНДЕКС ( столбец для возврата значения ; ПОИСКПОЗ ( искомое значение ; столбец для поиска ; 0))

Все еще не совсем понимаете эту логику? Возможно, будет проще разобрать на примере. Предположим, у вас есть список национальных столиц и их население:

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

=ИНДЕКС(C2:C10; ПОИСКПОЗ(“Индия”;A2:A10;0))

Теперь давайте проанализируем, что на самом деле делает каждый компонент этой формулы:

  • Функция ПОИСКПОЗ ищет искомое значение «Индия» в диапазоне A2:A10 и возвращает число 2, поскольку это слово занимает второе место в массиве поиска.
  • Этот номер поступает непосредственно в аргумент номер_строки функции ИНДЕКС, предписывая вернуть значение из этой строки.

Таким образом, приведенная выше формула превращается в ИНДЕКС(C2:C10;2), которая означает, что нужно искать в ячейках от C2 до C10 и извлекать значение из второй ячейки в этом диапазоне, то есть из C3, потому что мы начинаем отсчет со второй строки.

Но указывать название города в формуле не совсем правильно, так как для каждого нового поиска придется корректировать эту формулу. Введите его в какую-нибудь отдельную ячейку, скажем, F1, укажите ссылку на ячейку для ПОИСКПОЗ, и вы получите формулу динамического поиска:

=ИНДЕКС(C2:C10;ПОИСКПОЗ(F1;A2:A10;0))

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

Вы спросите: «А почему бы нам просто не использовать обычную формулу ВПР? Какой смысл тратить время на то, чтобы разобраться в хитросплетениях ИНДЕКС ПОИСКПОЗ в Excel?»

Вот как это будет выглядеть:

=ВПР(F1; A2:C10; 3; 0)

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

ИНДЕКС+ПОИСКПОЗ вместо ВПР?

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

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

4 основные причины использовать ИНДЕКС ПОИСКПОЗ вместо ВПР

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

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

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

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

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

Уяснив, почему все же стоит изучать ИНДЕКС ПОИСКПОЗ, давайте перейдем к самому интересному и посмотрим, как можно применить теоретические знания на практике.

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

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

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

Записав искомое значение в G1, используйте следующую формулу для поиска в C2:C10 и возврата соответствующего значения из A2:A10:

=ИНДЕКС(A2:A10; ПОИСКПОЗ(G1;C2:C10;0))

СоветЕсли вы планируете использовать формулу ПОИСКПОЗ ИНДЕКС более чем для одной ячейки, обязательно зафиксируйте оба диапазона абсолютными ссылками  (например, $A$2:$A$10 и $C$2:$C$10), чтобы они не изменялись при копировании формулы.

Двусторонний поиск в строках и столбцах

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

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

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

ИНДЕКС(массив; ПОИСКПОЗ(значение_поиска1 ; столбец_поиска ; 0); ПОИСКПОЗ(значение_поиска2 ; столбец_поиска ; 0))

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

С целевой страной в G1 (значение_поиска1) и целевым годом в G2 (значение_поиска2) формула принимает следующий вид:

=ИНДЕКС(B2:D11; ПОИСКПОЗ(G1;A2:A11;0); ПОИСКПОЗ(G2;B1:D1;0))

Как работает эта формула?

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

ПОИСКПОЗ(G1;A2:A11;0); – ищет в A2:A11 значение из ячейки G1 («США») и возвращает его позицию, которая равна 3.

ПОИСКПОЗ(G2;B1:D1;0) – просматривает диапазон B1:D1, чтобы получить позицию значения из ячейки G2 («2015»), которая равна 3.

Найденные выше номера строк и столбцов становятся соответствующими аргументами функции ИНДЕКС:

ИНДЕКС(B2:D11, 3, 3)

В результате вы получите значение на пересечении 3-й строки и 3-го столбца в диапазоне B2:D11, то есть из D4. Несложно? 

ИНДЕКС ПОИСКПОЗ для поиска по нескольким условиям

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

Вот общая формула ИНДЕКС ПОИСКПОЗ с несколькими критериями:

{=ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ); 0))}

Примечание. Это формула массива , которую необходимо вводить с помощью сочетания клавиш Ctrl + Shift + Enter.

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

Следующая формула ИНДЕКС ПОИСКПОЗ отлично работает:

=ИНДЕКС(C2:C10; ПОИСКПОЗ(1; (F1=A2:A10) * (F2=B2:B10); 0))

Где C2:C10 — это диапазон, из которого возвращается значение, F1 — это критерий1, A2:A10 — это диапазон для сравнения с критерием 1, F2 — это критерий 2, а B2:B10 — это диапазон для сравнения с критерием 2.

Не забудьте правильно ввести формулу, нажав Ctrl + Shift + Enter, и Excel автоматически заключит ее в фигурные скобки, как показано на скриншоте ниже:

Рис5

Если вы не хотите использовать формулы массива, добавьте в формулу в F4 еще одну функцию ИНДЕКС и завершите ее ввод обычным нажатием Enter:

=ИНДЕКС(C2:C10; ПОИСКПОЗ(1; ИНДЕКС((F1=A2:A10) * (F2=B2:B10); 0; 1); 0))

Разберем пошагово, как это работает.

Здесь используется тот же подход, что и в обычном сочетании ИНДЕКС ПОИСКПОЗ, где просматривается один столбец. Чтобы оценить несколько критериев, вы создаете два или более массива значений ИСТИНА и ЛОЖЬ, которые представляют совпадения и несовпадения для каждого отдельного критерия, а затем перемножаете соответствующие элементы этих массивов. Операция умножения преобразует ИСТИНА и ЛОЖЬ в 1 и 0 соответственно и создает массив, в котором единицы соответствуют строкам, которые удовлетворяют всем условиям. Функция ПОИСКПОЗ со значением поиска 1 находит первую «1» в массиве и передает ее позицию в ИНДЕКС, которая возвращает значение в этой позиции из указанного столбца.

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

Среднее, максимальное и минимальное значение при помощи ИНДЕКС ПОИСКПОЗ

Microsoft Excel имеет специальные функции для поиска минимального, максимального и среднего значения в диапазоне. Но что, если вам нужно получить значение из другой ячейки, связанной с этими значениями? Например,  получить название города с максимальным населением или узнать товар с минимальными продажами? В этом случае используйте функцию МАКС , МИН или СРЗНАЧ вместе с ИНДЕКС ПОИСКПОЗ.

Максимальное значение.

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

=ИНДЕКС(B2:B10; ПОИСКПОЗ(МАКС(C2:C10); C2:C10; 0))

Скриншот с примером находится чуть ниже.

Минимальное значение

Теперь найдём город с самым маленьким населением в списке. Чтобы найти наименьшее число в столбце С и получить соответствующее ему значение из столбца В:

=ИНДЕКС(B2:B10; ПОИСКПОЗ(МИН(C2:C10); C2:C10; 0))

Ближайшее к среднему

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

=ИНДЕКС(B2:B10; ПОИСКПОЗ(СРЗНАЧ(C2:C10); C2:C10; -1 ))

В зависимости от того, как организованы ваши данные, укажите 1 или -1 для третьего аргумента (тип_совпадения) функции ПОИСКПОЗ:

  • Если ваш столбец поиска (столбец D в нашем случае) отсортирован по возрастанию , поставьте 1. Формула вычислит наибольшее значение, которое меньше или равно среднему значению.
  • Если ваш столбец поиска отсортирован по убыванию , введите -1. Формула вычислит наименьшее значение, которое больше или равно среднему значению.
  • Если ваш массив поиска содержит значение , точно равное среднему, вы можете ввести 0 для точного совпадения. Никакой сортировки не требуется.

В нашем примере данные в столбце D отсортированы в порядке убывания, поэтому мы используем -1 для типа соответствия. В результате мы получаем «Токио», так как его население (13 189 000) является ближайшим, превышающим среднее значение (12 269 006).

Что делать с ошибками поиска?

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

=ЕСНД(ИНДЕКС(C2:C10; ПОИСКПОЗ(F1;A2:A10;0)); «Не найдено»)

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

Если вы хотите перехватывать все ошибки, а не только #Н/Д, используйте функцию ЕСЛИОШИБКА вместо ЕСНД:

=ЕСЛИОШИБКА(ИНДЕКС(C2:C10; ПОИСКПОЗ(F1;A2:A10;0)); «Что-то пошло не так!»)

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

Итак, еще раз об основных преимуществах формулы ИНДЕКС ПОИСКПОЗ.

  • Возможен ли «левый» поиск?

  • Повлияет ли на результат вставка и удаление столбцов?

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

  • Возможен ли поиск по строкам и столбцам?

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

  • Как сделать поиск ИНДЕКС ПОИСКПОЗ по нескольким условиям?

    Можно выполнять поиск по двум или более условиям без добавления дополнительных столбцов. Вот формула массива, которая решит проблему:
    {=ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ); 0))}

Вот как можно использовать ИНДЕКС и ПОИСКПОЗ в Excel. Я надеюсь, что наши примеры формул окажутся полезными для вас.

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

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

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

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

В этой статье

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Обратите внимание ниже на рисунок, где в ячейку B3 была введена данная формула в массиве:

Выборка соответственного значения с первым наименьшим числом:

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

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

Ключевую роль здесь играет функция ИНДЕКС. Ее номинальное задание – это выбирать из исходной таблицы (указывается в первом аргументе – A6:A18) значения соответственные определенным числам. ИНДЕКС работает с учетом критериев определённых во втором (номер строки внутри таблицы) и третьем (номер столбца в таблице) аргументах. Так как наша исходная таблица A6:A18 имеет только 1 столбец, то третий аргумент в функции ИНДЕКС мы не указываем.

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

Функция ЕСЛИ позволяет выбрать значение из списка по условию. В ее первом аргументе указано где проверяется каждая ячейка в диапазоне B6:B18 на наличие наименьшего числового значения: ЕСЛИB6:B18=МИНB6:B18. Таким способом в памяти программы создается массив из логических значений ИСТИНА и ЛОЖЬ. В нашем случаи 3 элемента массива будут содержат значение ИСТИНА, так как минимальное значение 8 содержит еще 2 дубликата в столбце B6:B18.

Следующий шаг – это определение в каких именно строках диапазона находится каждое минимальное значение. Это нам необходимо по причине определения именно первого наименьшего значения. Реализовывается данная задача с помощью функции СТРОКА, она заполняет элементы массива в памяти программы номерами строк листа. Но сначала от всех этих номеров вычитается номер на против первой строки таблицы – B5, то есть число 5. Это делается потому, что функция ИНДЕКС работает с номерами внутри таблицы, а не с номерами рабочего листа Excel. В тоже время функция СТРОКА умеет возвращать только номера строк листа. Чтобы не получилось смещение необходимо сопоставить порядок номеров строк листа и таблицы с помощи вычитанием разницы. Например, если таблица находится на 5-ой строке листа значит каждая строка таблицы будет на 5 меньше чем соответственная строка листа.

После того как будут отобраны все минимальные значения и сопоставлены все номера строк таблицы функция МИН выберет наименьший номер строки. Эта же строка будет содержать первое наименьшее число, которое встречается в столбце B6:B18. На основании этого номера строки функции ИНДЕКС выберет соответствующее значение из таблицы A6:A18. В итоге формула возвращает это значение в ячейку B3 в качестве результата вычисления.

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

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

Если необходимо изменить условия формулы так, чтобы можно было в Excel выбрать первое максимальное, но меньше чем 70:

=70;»»;B6:B18));СТРОКА(B6:B18)-СТРОКА(B5);»»)))’ class=’formula’>

Как в Excel выбрать первое минимальное значение кроме нуля:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Понравилась статья? Поделить с друзьями:
  • Подстановка чисел в excel
  • Подстановка текущей даты в excel
  • Подстановка при условии excel
  • Подстановка по первым буквам в списках excel
  • Подстановка параметров в excel