Подстановка в excel по одному условию

Логический оператор ЕСЛИ в Excel применяется для записи определенных условий. Сопоставляются числа и/или текст, функции, формулы и т.д. Когда значения отвечают заданным параметрам, то появляется одна запись. Не отвечают – другая.

Логические функции – это очень простой и эффективный инструмент, который часто применяется в практике. Рассмотрим подробно на примерах.

Синтаксис функции ЕСЛИ с одним условием

Синтаксис оператора в Excel – строение функции, необходимые для ее работы данные.

=ЕСЛИ (логическое_выражение;значение_если_истина;значение_если_ложь)

Разберем синтаксис функции:

Логическое_выражение – ЧТО оператор проверяет (текстовые либо числовые данные ячейки).

Значение_если_истина – ЧТО появится в ячейке, когда текст или число отвечают заданному условию (правдивы).

Значение,если_ложь – ЧТО появится в графе, когда текст или число НЕ отвечают заданному условию (лживы).

Пример:

Логическая функция ЕСЛИ.

Оператор проверяет ячейку А1 и сравнивает ее с 20. Это «логическое_выражение». Когда содержимое графы больше 20, появляется истинная надпись «больше 20». Нет – «меньше или равно 20».

Внимание! Слова в формуле необходимо брать в кавычки. Чтобы Excel понял, что нужно выводить текстовые значения.

Еще один пример. Чтобы получить допуск к экзамену, студенты группы должны успешно сдать зачет. Результаты занесем в таблицу с графами: список студентов, зачет, экзамен.

Логический оператор в таблице.

Обратите внимание: оператор ЕСЛИ должен проверить не цифровой тип данных, а текстовый. Поэтому мы прописали в формуле В2= «зач.». В кавычки берем, чтобы программа правильно распознала текст.



Функция ЕСЛИ в Excel с несколькими условиями

Часто на практике одного условия для логической функции мало. Когда нужно учесть несколько вариантов принятия решений, выкладываем операторы ЕСЛИ друг в друга. Таким образом, у нас получиться несколько функций ЕСЛИ в Excel.

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

=ЕСЛИ(логическое_выражение;значение_если_истина;ЕСЛИ(логическое_выражение;значение_если_истина;значение_если_ложь))

Здесь оператор проверяет два параметра. Если первое условие истинно, то формула возвращает первый аргумент – истину. Ложно – оператор проверяет второе условие.

Примеры несколько условий функции ЕСЛИ в Excel:

Вложение логических функций.

Таблица для анализа успеваемости. Ученик получил 5 баллов – «отлично». 4 – «хорошо». 3 – «удовлетворительно». Оператор ЕСЛИ проверяет 2 условия: равенство значения в ячейке 5 и 4.

2 условия оператора ЕСЛИ.

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

Расширение функционала с помощью операторов «И» и «ИЛИ»

Когда нужно проверить несколько истинных условий, используется функция И. Суть такова: ЕСЛИ а = 1 И а = 2 ТОГДА значение в ИНАЧЕ значение с.

Функция ИЛИ проверяет условие 1 или условие 2. Как только хотя бы одно условие истинно, то результат будет истинным. Суть такова: ЕСЛИ а = 1 ИЛИ а = 2 ТОГДА значение в ИНАЧЕ значение с.

Функции И и ИЛИ могут проверить до 30 условий.

Пример использования оператора И:

Пример логического оператора И.

Пример использования функции ИЛИ:

Пример логического оператора ИЛИ.

Как сравнить данные в двух таблицах

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

Чтобы сравнить 2 таблицы в Excel, можно воспользоваться оператором СЧЕТЕСЛИ. Рассмотрим порядок применения функции.

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

Исходные данные (таблицы, с которыми будем работать):

Две таблицы для сравнения.

Выделяем первую таблицу. Условное форматирование – создать правило – использовать формулу для определения форматируемых ячеек:

Условное форматирование в таблице.

В строку формул записываем: =СЧЕТЕСЛИ (сравниваемый диапазон; первая ячейка первой таблицы)=0. Сравниваемый диапазон – это вторая таблица.

Условия для форматирования ячеек.

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

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

Выделяем вторую таблицу. Условное форматирование – создать правило – использовать формулу. Применяем тот же оператор (СЧЕТЕСЛИ).

Логический оператор СЧЕТЕСЛИ.

Скачать все примеры функции ЕСЛИ в Excel

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

Совет: Попробуйте использовать новые функции ПРОСМОТР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

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

Функция ВПР()

Формула ВПРПредположим, у вас есть таблица с данными о работниках. В первой колонке хранится табельный номер сотрудника, в остальных – другие данные (ФИО, отдел и т.д.). Если у вас есть табельный номер, то можно воспользоваться функцией ВПР, чтобы вернуть определенную информацию о сотруднике. Синтаксис формулы =ВПР(искомое_значение; таблица; номер_столбца; [интервальный_просмотр]). Она говорит Excel: «Найди в таблице строку, первая ячейка которой совпадает с искомым_значением, и верни значение ячейки с порядковым номером номер_столбца».

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

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

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

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

Начнем с функции ИНДЕКС. Кошмарное название. Когда кто-нибудь говорит «индекс», у меня в голове не возникает ни единой ассоциации, чем же занимается эта функция. А требует она целых три аргумента: =ИНДЕКС(массив; номер_строки; [номер_столбца]).

Говоря по-простому, Excel идет в массив данных и возвращает значение, находящееся на пересечении указанной строки и столбца. Как будто бы просто. Таким образом, формула =ИНДЕКС($A$2:$C$6;4;2) вернет значение, находящееся в ячейке B5.

формула ИНДЕКС

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

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

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

Она говорит Excel: «Найди искомое_значение  в массиве данных и верни номер строки массива, в которой это значение встречается». Таким образом, чтобы найти в какой строке находиться имя сотрудника в ячейке A10, необходимо прописать формулу =ПОИСКПОЗ(A10; $B$2:$B$6; 0). Если в ячейке A10 будет имя «Колин Фарел», тогда ПОИСКПОЗ вернет 5-ю строку массива B2:B6.

Описание формулы ПОИСКПОЗ

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

=ИНДЕКС($A$2:$B$6;ПОИСКПОЗ(A10;$B$2:$B$6;0);1)

формула индекс и поискпоз

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

формула индекс и поискпоз результат

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

​Смотрите также​ я и хотела​ не связанных диапазона​ разный. Таких строк​Пример во вложении(на​ да и на​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

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

Самый быстрый ВПР

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

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

Когда я писал свою первую книжку пять лет назад, то уже делал сравнительный скоростной тест различных способов поиска и подстановки данных функциями ВПР, ИНДЕКС+ПОИСКПОЗ, СУММЕСЛИ и др. С тех пор сменилось три версии Office, появились надстройки Power Query и Power Pivot, кардинально изменившие весь процесс работы с данными. А в прошлом году ещё и обновился вычислительный движок Excel, получив поддержку динамических массивов и новые функции ПРОСМОТРХ, ФИЛЬТР и т.п.

Так что пришла пора снова взяться за секундомер и выяснить — кто же самый быстрый. Ну и, заодно, проверить — какие способы поиска и подстановки данных в Excel вы знаете 🙂

Подопытный кролик

Тест будем проводить на следующем примере:

Исходный пример

Это книга Excel с одним листом, где расположены две таблицы: отгрузки (500 000 строк) и прайс-лист (600 строк). Наша задача — подставить цены из прайс-листа в таблицу отгрузок. Для каждого способа будем вводить формулу в ячейку С2 и копировать вниз на весь столбец, замеряя время, которое потребуется Excel, чтобы просчитать весь столбец из полумиллиона ячеек. Полученные значения, безусловно, зависят от множества факторов (поколение процессора, объем оперативной памяти, текущая загрузка системы, версия Office и т.д.), но нам важны не конкретные цифры, а, скорее, их сравнение друг с другом. Важно понимать прожорливость каждого способа и их ограничения.

Способ 1. ВПР

Сначала — классика 🙂 Легендарная функция вертикального просмотра — ВПР (VLOOKUP) , которая приходит в голову первой в подобных ситуациях:

ВПР

  • B2 — искомое значение, т.е. название товара, который мы хотим найти в прайс-листе
  • $G$2:$H$600 — закреплённая знаками доллара (чтобы не сползала при копировании формулы вниз) абсолютная ссылка на прайс
  • 2 — номер столбца в прайс-листе, откуда мы хотим взять цену
  • 0 или ЛОЖЬ — переключение в режим поиска точного соответствия, когда любое некорректное название товара (например, ФОНЕРА) в столбце B в таблице отгрузок приведёт к появлению ошибки #Н/Д как результата работы функции.

Время вычисления = 4,3 сек.

Способ 2. ВПР с выделением столбцов целиком

Многие пользователи, применяя ВПР, во втором аргументе этой функции, где нужно задать поисковую таблицу (прайс), выделяют не ограниченный диапазон ( $G$2:$H$600 ), а сразу столбцы G:H целиком. Это проще, быстрее, позволяет не думать про F4 и то, что завтра прайс-лист может быть на несколько строк больше. Формула в этом случае выглядит тоже компактнее:

ВПР с выделением столбцов целиком

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

Время вычисления = 14,5 сек.

Способ 3. ИНДЕКС и ПОИСКПОЗ

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

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

Функция ИНДЕКС извлекает из заданного в первом аргументе диапазона (столбца $H$2:$H$600 с ценами в прайс-листе) содержимое ячейки с заданным номером. А номер этот, в свою очередь, определяется функцией ПОИСКПОЗ, у которой три аргумента:

  • Что нужно найти — название товара из B2
  • Где мы это ищем — столбец с названиями товаров в прайсе ( $G$2:$G$600 )
  • Режим поиска: 0 — точный, 1 или -1 — приблизительный с округлением в меньшую или большую сторону, соответственно.

Формула выходит чуть сложнее, но, при этом имеет несколько ощутимых преимуществ перед классической ВПР, а именно:

  • Не нужно отсчитывать номер столбца (как в третьем аргументе ВПР).
  • Можно извлекать данные, которые находятся левее столбца, где просходит поиск.

По скорости, однако же, этот способ проигрывает ВПР почти в два раза:

Время вычисления = 7,8 сек.

Если же, вдобавок, полениться и выделять не ограниченные диапазоны, а столбцы целиком:

ИНДЕКС и ПОИСКПОЗ с выделением столбцов целиком

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

Время вычисления = 28,5 сек.

28 секунд, Карл! В 6 раз медленнее ВПР!

Способ 4. СУММЕСЛИ

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

СУММЕСЛИ

  • Первый аргумент СУММЕСЛИ — это диапазон проверяемых ячеек, т.е. названия товаров в прайсе ( $G$2:$G$600 ).
  • Второй аргумент ( B2 ) — что мы ищем.
  • Третий аргумент — диапазон ячеек с ценами $H$2:$H$600 , числа из которых мы хотим просуммировать, если в соседних ячейках проверяемого диапазона есть искомое значение.

Очевидным минусом такого подхода является то, что он работает только с числами. Также этот способ не удобен, если прайс-лист находится в отдельном файле — придется всё время держать его открытым, т.к. функция СУММЕСЛИ не умеет брать данные из закрытых книг, в отличие от ВПР, для которой это не проблема.

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

Время вычисления = 12,8 сек.

При выделении столбцов целиком, т.е. использовании формулы вида =СУММЕСЛИ( G:G ; B2 ; H:H ) всё ещё хуже:

Время вычисления = 41,7 сек.

Это самый плохой результат в нашем тесте.

Способ 5. СУММПРОИЗВ

Этот подход сейчас встречается не часто, но всё ещё достаточно регулярно. Обычно так любят извращаться пользователи старой школы, ещё хорошо помнящие те времена, когда в Excel было всего 255 столбцов и 56 цветов 🙂

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

СУММПРОИЗВ

Выражение ($G$2:$G$600=B2) , по сути, проверяет каждое название груза в прайс-листе на предмет соответствия искомому значению (ФАНЕРА ПР). Результатом каждого сравнения будет логическое значение ИСТИНА (TRUE ) или ЛОЖЬ (FALSE) , что в Excel интерпретируется как 1 и 0, соответственно. Последующее умножение этих нулей и единиц на цены оставит в живых цену только того товара, который нам, в данном случае, и нужен.

Эта формула является, по сути, формулой массива, но не требует нажатия обычного для них сочетания клавиш Ctrl + Shift + Enter , т.к. функция СУММПРОИЗВ поддерживает массивы уже сама по себе. Возможно, по этой же причине (формулы массива всегда медленнее, чем обычные) такой скорость пересчёта такой формулы — не очень:

Время вычисления = 11,8 сек.

  • Совместимость с любыми, самыми древними версиями Excel.
  • Возможность задавать сложные условия (и несколько)
  • Способность этой формулы работать с данными из закрытых файлов, если добавить перед ней двойное бинарное отрицание (два подряд знака «минус»). СУММЕСЛИМН таким похвастаться не может.

Способ 6. ПРОСМОТР

Ещё один относительно экзотический способ поиска и подстановки данных, наравне с ВПР — это использование функции ПРОСМОТР (LOOKUP) . Только не перепутайте её с новой, буквально, на днях появившейся функцией ПРОСМОТРХ (XLOOKUP) — про неё мы поговорим дальше особо. Функция ПРОСМОТР существовала в Excel начиная с самых ранних версий и тоже вполне может решить нашу задачу:

ПРОСМОТР

  • B2 — название груза, которое мы ищем
  • $G$2:$G$600 — одномерный диапазон-вектор (столбец или строка), где мы ищем совпадение
  • $H$2:$H$600 — такого же размера диапазон, откуда нужно вернуть найденный результат (цену)

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

  • Эта функция требует обязательной сортировки прайс-листа по возрастанию (алфавиту) и без этого не работает.
  • Если в таблице отгрузок искомое значение будет написано с опечаткой (например, АГ Е ДОЛ вместо АГИДОЛ), то функция ПРОСМОТР выдаст не ошибку #Н/Д, а цену для ближайшего предыдущего товара:

При работе с неидеальными данными в реальном мире это гарантированно создаст проблемы, как вы понимаете.

Скорость же вычислений у функции ПРОСМОТР (LOOKUP) весьма приличная:

Время вычисления = 7,6 сек.

Способ 7. Новая функция ПРОСМОТРХ

Эта функция пришла с одним из недавних обновлений пока только пользователям Office 365 и пока отсутствует во всех остальных версиях (Excel 2010, 2013, 2016, 2019). По сравнению с классической ВПР у этой функции есть масса преимуществ (упрощенный синтаксис, возможность искать не только сверху-вниз, возможность сразу задать значение вместо #Н/Д и т.д.) Формула для решения нашей задачи будет выглядеть в этом случае так:

ПРОСМОТРХ

Если не брать в расчёт необязательные 4,5,6 аргументы, то синтаксис этой функции полностью совпадает с её предшественником — функцией ПРОСМОТР (LOOKUP) . Скорость вычислений при тестировании на наши 500000 строк тоже оказалась аналогичной:

Время вычисления = 7,6 сек.

Почти в два раза медленнее, чем у ВПР, вместо которой Microsoft предлагает теперь использовать ПРОСМОТРХ. Жаль.

И, опять же, если полениться и выделить диапазоны в прайс-листе целыми столбцами:

ПРОСМОТРХ и выделение столбцов целиком

. то скорость падает до совершенно неприличных уже значений:

Время вычисления = 28,3 сек.

А если на динамических массивах?

Прошлогоднее (осень 2019) обновление вычислительного движка Microsoft Excel добавило ему поддержку динамических массивов (Dynamic Arrays), о которых я уже писал. Это принципиально новый подход к работе с данными, который можно использовать почти с любыми классическими функциями Excel. На примере ВПР это будет выглядеть так:

ВПР на динамических массивах

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

Скорость пересчета в таком варианте меня, откровенно говоря, ошеломила — пауза между нажатием на Enter после ввода формулы и получением результатов почти отсутствовала.

Время вычисления = 1 сек.

Что интересно, и новая ПРОСМОТРХ, и старая ПРОСМОТР, и связка ИНДЕКС+ПОИСКПОЗ в таком режиме тоже были очень быстрыми — время вычислений не больше 1 секунды! Фантастика.

А вот олдскульные подходы на основе СУММПРОИЗВ и СУММЕСЛИ(МН) с динамическими массивами работать отказались 🙁

Что с умными таблицами?

Обрадовавшись фантастическим результатам, полученным на динамических массивах, я решил вдогон попробовать протестировать разницу в скорости при работе с обычными и «умными» таблицами. Я имею ввиду те самые «красивые таблицы», в которые вы можете преобразовать ваш диапазон с помощью команды Форматировать как таблицу на вкладке Главная (Home — Format as Table) или с помощью сочетания клавиш Ctrl + T .

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

ВПР на умных таблицах

  • [@Груз] — ссылка на ячейку B2, означающая, в данном случае, что нужно взять значение из той же строки из столбца Груз текущей умной таблицы.
  • Таблица2 — ссылка на прайс-лист

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

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

Время вычисления = 1 сек.

У меня есть подозрение, что дело тут не в самих «умных» таблицах, а всё в том же обновлении вычислительного движка, т.к. на старых версиях Excel такого прироста в скорости на умных таблицах я не помню.

Бонус. Запрос Power Query

Замерять, так замерять! Давайте, для полноты картины, сравним наши перечисленные способы еще и с запросом Power Query, который тоже может решить нашу задачу. Кто-то скажет, что некорректно сравнивать пересчёт формул с механизмом обновления запроса, но мне, откровенно говоря, просто самому было интересно — кто быстрее?

  1. Превращаем обе наши таблицы в «умные» с помощью команды Форматировать как таблицу на вкладке Главная (Home — Format as Table) или с помощью сочетания клавиш Ctrl + T .
  2. По очереди загружаем таблицы в Power Query с помощью команды Данные — Из таблицы / диапазона (Data — From Table/Range) .
  3. После загрузки в Power Query возвращаемся обратно в Excel, оставляя загруженные данные как подключение. Для этого в окне Power Query выбираем Главная — Закрыть и загрузить — Закрыть и загрузить в. — Только создать подключение (Home — Close&Load — Close&Load to. — Only create connection) .
  4. После того, как обе исходные таблицы будут загружены как подключения, создадим ещё один, третий запрос, который будет объединять их между собой, подставляя цены из прайса в отгрузки. Для этого на вкладке Данные выберем Получить данные / Создать запрос — Объединить запросы — Объединить (Get Data / New Query — Merge queries — Merge) :

Объединяем запросы

Настройки объединения

Разворачиваем вложенные таблицы после объединения

В отличие от формул, запросы Power Query не обновляются автоматически «на лету», а требуют щелчка правой кнопкой мыши по таблице (или запросу в правой панели) и выбору команды Обновить (Refresh) . Также можно воспользоваться командой Обновить все (Refresh All) на вкладке Данные (Data) .

Время обновления = 8,2 сек.

Итоговая таблица и выводы

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

Итоговая таблица результатов

Само-собой, у каждого из нас свои предпочтения, задачи и тараканы, но для себя я сформулировал выводы после этого тестирования так:

ВПР с несколькими условиями: 5 примеров.

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

Мы предложим вам несколько вариантов решения проблемы поиска по нескольким условиям.

ВПР по нескольким условиям с использованием дополнительного столбца.

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

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

Сразу по трем столбцам функция ВПР искать не может. Поэтому нам нужно объединить их в один. И, поскольку поиск производится всегда в крайнем левом (первом) столбце, то нужно добавить его в нашу таблицу тоже слева.

Вставляем перед таблицей с данными дополнительный столбец A. Затем при помощи оператора & объединяем в нем содержимое B,C и D. Записываем в А7

и копируем в находящиеся ниже ячейки.

Формула поиска в D4 будет выглядеть:

В диапазон поиска включаем и наш дополнительный столбец. Критерий поиска – также объединение 3 значений. И извлекаем результат из 5 колонки.

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

Вид станет приятнее, а на результаты это никак не повлияет.

ВПР по двум условиям при помощи формулы массива.

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

Для этого в верхней части нашего листа запишем критерии поиска: дата и магазин. В ячейке B3 будем выводить сумму выручки.

Формула в B3 выглядит следующим образом:

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

Разберем процесс подробно.

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

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

В результате получим вот такой виртуальный массив данных на основе нашей исходной таблицы:

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

С такой работой функция ВПР вполне справится.

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

И затем нажимаете комбинацию клавиш CTRL+Shift+Enter. При этом Excel поймет, что вы хотите ввести формулу массива и сам подставит скобки.

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

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

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

ВПР по нескольким критериям с применением массивов — способ 2.

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

Условия возьмем те же, что и в предыдущем примере.

Формулу в С4 введем такую:

Естественно, не забываем нажать CTRL+Shift+Enter.

Теперь давайте пошагово разберем, как это работает.

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

Как и в предыдущем примере, мы ищем текст из объединенных в одно целое условий поиска.

Далее определяем данные, среди которых будем искать.

Конструкция вида A7:A20&B7:B20&C7:C20;D7:D20 создает 2 элемента. Первый – это объединение колонок A, B и C из исходных данных. Если помните, то же самое мы делали в нашем дополнительном столбце. Второй D7:D20 – это значения, одно из которых нужно в итоге выбрать.

Функция ВЫБОР позволяет из этих элементов создать массив. как раз и означает, что нужно взять сначала первый элемент, затем второй, и объединить их в виртуальную таблицу – массив.

В первой колонке этой виртуальной таблицы мы будем искать, а из второй – извлекать результат.

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

Двойной ВПР при помощи ИНДЕКС + ПОИСКПОЗ

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

Формула в С4 теперь выглядит так:

И не забываем при вводе нажать CTRL+Shift+Enter! Это формула массива.

Теперь давайте разбираться, как это работает.

Функция ИНДЕКС в нашем случае позволяет извлечь элемент из списка по его порядковому номеру. Список – это диапазон D7:D20, где записаны суммы выручки. А вот порядковый номер, который нужно извлечь, мы определяем при помощи ПОИСКПОЗ.

Синтаксис здесь следующий:

ПОИСКПОЗ(что_ищем; где_ищем; тип_поиска)

Тип поиска ставим 0, то есть точное совпадение. В нашем случае мы будем искать 1. Далее мы определим массив, в котором будем работать.

Выражение (A7:A20=C1)*(B7:B20=C2)*(C7:C20=C3) позволит создать виртуальную таблицу примерно такого вида:

Как видите, первоначально мы последовательно сравниваем каждое значение с нашим критерием отбора. В столбце А у нас записаны месяцы – сравниваем их с месяцем-критерием из ячейки C1. В случае совпадения получаем ИСТИНА, иначе – ЛОЖЬ. Аналогично последовательно проверяем год и название магазина. А затем просто перемножаем значения. Поскольку логические переменные для Excel – это либо 0, либо 1, то произведение их может быть равно 1 только в том случае, если мы имеем по каждой колонке ИСТИНА (то есть,1). Во всех остальных случаях получаем 0.

Убеждаемся, что цифра 1 встречается только единожды.

При помощи ПОИСКПОЗ определяем, на какой позиции она находится. На какой позиции находится 1, на той же позиции находится в массиве и искомая сумма выручки. В нашем случае это 10-я.

Далее при помощи ИНДЕКС извлекаем 10-ю по счету выручку.

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

Достойная замена – функция СУММПРОИЗВ.

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

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

Последовательно по каждой строке диапазона от 2-й до 27-й она проверяет совпадение каждого соответствующего значения с критерием поиска. Эти результаты перемножаются между собой и в итоге еще умножаются на сумму выручки. Если среди трех условий будет хотя бы одно несовпадение, то итогом будет 0. В случае совпадения сумма выручки трижды умножится на 1.

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

В качестве бонуса можно продолжить этот пример и рассчитать общую сумму продаж менеджера в определенном регионе.

Для этого из формулы просто уберем сравнение по дате.

Кстати, возможен и другой вариант расчета с этой же функцией:

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

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

Как объединить две или несколько таблиц в Excel — В этом руководстве вы найдете некоторые приемы объединения таблиц Excel путем сопоставления данных в одном или нескольких столбцах. Как часто при анализе в Excel вся необходимая информация собирается на одном…

ВПР с несколькими таблицами

2 способа извлечь данные из разных таблиц при помощи ВПР. — Задача: Данные, которые нужно найти и извлечь при помощи функции ВПР, находятся в нескольких таблицах. Эти таблицы имеют одинаковую структуру (то есть, одни и те же столбцы, расположенные в одном…
/> Вычисление номера столбца для извлечения данных в ВПР — Задача: Наиболее простым способом научиться указывать тот столбец, из которого функция ВПР будет извлекать данные. При этом мы не будем изменять саму формулу, поскольку это может привести в случайным ошибкам.…
4 способа, как сделать левый ВПР в Excel. — Функция ВПР – одна из самых популярных, когда нужно найти и извлечь из таблицы какие-либо данные. Но при этом она имеет один существенный недостаток. Поиск она производит в крайнем левом…
Формула ВПР в Excel для сравнения двух таблиц — 4 способа — Сравнение таблиц – это задача, которую в Excel приходится довольно часто решать. Например, у нас есть старый прайс-лист и его новая версия. Нужно просмотреть, цены на какие товары изменились и…
Почему не работает ВПР в Excel? — Функция ВПР – это очень мощный инструмент поиска. Но если он по каким-то причинам завершился неудачно, то вы получите сообщение об ошибке #Н/Д (#N/A в английском варианте). Давайте постараемся вместе…
Функция ВПР в Excel: пошаговая инструкция с 5 примерами — ВПР — это функция Excel для поиска и извлечения данных из определенного столбца в таблице. Она поддерживает приблизительное и точное сопоставление, а также подстановочные знаки (* и ?). Значения поиска…
Формула ВПР в Excel — 22 факта, которые нужно знать. — В процессе работы в Excel часто возникает задача извлечения нужных данных из рабочих таблиц. Для этой цели в Excel предусмотрена формула ВПР (VLOOKUP в английском варианте). И хотя ВПР относительно…

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

В этой статье рассмотрим наиболее часто встречающиеся запросы, например: отбор строк таблицы, у которых значение из числового столбца попадает в заданный диапазон (интервал); отбор строк, у которых дата принаждежит определенному периоду; задачи с 2-мя текстовыми критериями и другие. Начнем с простых запросов.

1. Один числовой критерий (Выбрать те Товары, у которых цена выше минимальной)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист Один критерий — число ).

Необходимо отобразить в отдельной таблице только те записи (строки) из Исходной таблицы, у которых цена выше 25.

Решить эту и последующие задачи можно легко с помощью стандартного фильтра . Для этого выделите заголовки Исходной таблицы и нажмите CTRL+SHIFT+L . Через выпадающий список у заголовка Цены выберите Числовые фильтры. , затем задайте необходимые условия фильтрации и нажмите ОК.

Будут отображены записи удовлетворяющие условиям отбора.

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

Критерий (минимальную цену) разместим в ячейке Е6 , таблицу для отфильтрованных данных — в диапазоне D10:E19 .

Теперь выделим диапазон D11:D19 (столбец Товар) и в Строке формул введем формулу массива :

Вместо ENTER нажмите сочетание клавиш CTRL+SHIFT+ENTER .

Те же манипуляции произведем с диапазоном E11:E19 куда и введем аналогичную формулу массива :

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

Чтобы показать динамизм полученного Отчета (Запроса на выборку) введем в Е6 значение 65. В новую таблицу будет добавлена еще одна запись из Исходной таблицы, удовлетворяющая новому критерию.

Если в Исходную таблицу добавить новый товар с Ценой в диапазоне от 25 до 65, то в новую таблицу будет добавлена новая запись.

В файле примера также содержатся формулы массива с обработкой ошибок, когда в столбце Цена содержится значение ошибки, например #ДЕЛ/0! (см. лист Обработка ошибок ).

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

3. Один критерий Дата (Выбрать те Товары, у которых Дата поставки совпадает заданной)

Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист Один критерий — Дата ).

Для отбора строк используются формулы массива, аналогичные Задаче1 (вместо критерия =$B$12:$B$20)*(СТРОКА($B$12:$B$20)-СТРОКА($B$11));$J$12-СТРОКА(A12)+СТРОКА($B$11)+1))

Примечание : После ввода формулы вместо клавиши ENTER (ВВОД) нужно нажать сочетание клавиш CTRL+SHIFT+ENTER. Это сочетание клавиш используется для ввода формул массива.

Скопируйте формулу массива вниз на нужное количество ячеек. Формула вернет только те значения Товаров, которые были поставлены в диапазоне указанных дат. В остальных ячейках будут содержаться ошибки #ЧИСЛО! Ошибки в файле примера (Лист 4.Диапазон Дат) скрыты с помощью Условного форматирования .

Аналогичную формулу нужно ввести и для дат в столбец E.

В ячейке J12 вычислено количество строк исходной таблицы, удовлетворяющих критериям:

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

Для ввода первой формулы выделите диапазон ячеек G12:G20 . После ввода формулы вместо клавиши ENTER (ВВОД) нужно нажать сочетание клавиш CTRL+SHIFT+ENTER.

Решение3 : Если столбец Дат СОРТИРОВАН, то можно не использовать формулы массива.

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

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

5. Один критерий Дата (Выбрать те Товары, у которых Дата поставки не раньше/ не позже заданной)

Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист Один критерий — Дата (не позже) ).

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

= ИНДЕКС(A12:A20;НАИМЕНЬШИЙ(ЕСЛИ($E$7 C15;И($B$7>=B15;$B$7 =$B$13:$B$21)*($B$13:$B$21>0);СТРОКА($B$13:$B$21);»»);СТРОКА($B$13:$B$21)-СТРОКА($B$12)) -СТРОКА($B$12))

Условие $E$7=$A$13:$A$21 гарантирует, что будут отобраны товары только определенного типа. Условие $E$8>=$B$13:$B$21 гарантирует, что будут отобраны даты не позже заданной (включая). Условие $B$13:$B$21>0 необходимо, если в диапазоне дат имеются пустые ячейки. Знак * (умножение) используется для задания Условия И (все 3 критерия должны выполняться для строки одновременно).

Примечание . Случай, когда список несортирован, рассмотрен в статье Поиск ДАТЫ (ЧИСЛА) ближайшей к заданной, с условием в MS EXCEL. Несортированный список .

7. Один Текстовый критерий (Выбрать Товары определенного вида)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист Один критерий — Текст ).

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

8. Два Текстовых критерия (Выбрать Товары определенного вида, поставленные в заданный месяц)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист 2 критерия — текст (И) ).

Для отбора строк используется формула массива:

Выражение ($F$6=$A$11:$A$19)*($F$7=$B$11:$B$19) задает оба условия (Товар и Месяц).

Выражение СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК($A$11:$A$19))) формирует массив последовательных чисел , т.е. номера строк в таблице.

9. Два Текстовых критерия (Выбрать Товары определенных видов)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист 2 критерия — текст (ИЛИ) ).

В отличие от Задачи 7 отберем строки с товарами 2-х видов ( Условие ИЛИ ).

Для отбора строк используется формула массива:

= ИНДЕКС(A$11:A$19; НАИБОЛЬШИЙ((($E$6=$A$11:$A$19)+($E$7=$A$11:$A$19))*(СТРОКА($A$11:$A$19)-СТРОКА($A$10)); СЧЁТЕСЛИ($A$11:$A$19;$E$6)+СЧЁТЕСЛИ($A$11:$A$19;$E$7)-ЧСТРОК($A$11:A11)+1))

Условие ($E$6=$A$11:$A$19)+($E$7=$A$11:$A$19) гарантирует, что будут отобраны товары только заданных видов из желтых ячеек (Товар2 и Товар3). Знак + (сложение) используется для задания Условие ИЛИ (должен быть выполнен хотя бы 1 критерий).

Вышеуказанное выражение вернет массив . Умножив его на выражение СТРОКА($A$11:$A$19)-СТРОКА($A$10) , т.е. на массив последовательных чисел , получим массив позиций (номеров строк таблицы), удовлетворяющих критериям. В нашем случае это будет массив .

С помощью функции НАИБОЛЬШИЙ() выведем 3 значения из позиции 5 (строка 15 листа), 6 (16) и 7 (17), т.е. значения Товар2, Товар2 и Товар3. Для этого используем выражение СЧЁТЕСЛИ($A$11:$A$19;$E$6)+СЧЁТЕСЛИ($A$11:$A$19;$E$7)-ЧСТРОК($A$11:A11)+1 , которое последовательно (начиная со строки 11) будет возвращать числа 3; 2; 1; 0; -1; -2; . Формула НАИБОЛЬШИЙ(. ;3) вернет число 5, НАИБОЛЬШИЙ(. ;2) вернет число 6, НАИБОЛЬШИЙ(. ;1) вернет число 7, а НАИБОЛЬШИЙ(. ;0) и далее вернет ошибку, которую мы скроем условным форматированием .

И наконец, с помощью функции ИНДЕКС() последовательно выведем наши значения из соответствующих позиций: = ИНДЕКС(A$11:A$19;5) вернет Товар2, = ИНДЕКС(A$11:A$19;6) вернет Товар2, = ИНДЕКС(A$11:A$19;7) вернет Товар3.

10. Отбор значений с учетом повторов

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

Наиболее популярные статьи из этого раздела:

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

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

Предположим, что нас интересует сколько и каких партий товаров поставлялось по цене от 1000р. до 2000р. (критерий 1). Причем, партий с одинаковой ценой должно быть минимум 3 (критерий 2).

Решением является формула массива:

Эта формула возвращает номера строк, которые удовлетворяют обоим критериям.

Формула =СУММПРОИЗВ(($C$14:$C$27>=$B$7)*($C$14:$C$27 =$B$10)) подсчитывает количество строк, которые удовлетворяют критериям.

В файле примера на листе «10.Критерий — колич-во повторов» настроено Условное форматирование , которое позволяет визуально определить строки удовлетворяющие критериям, а также скрыть ячейки, в которых формула массива возвращает ошибку #ЧИСЛО!

11. Используем значение критерия (Любой) или (Все)

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

В файле примера на листе «11. Критерий Любой или (Все)» реализован данный вариант критерия.

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

Остальная часть формулы аналогична рассмотренным выше.

12. Актуальная цена

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

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

2) определяем последнюю (максимальную) дату для каждого товара с помощью формулы массива =МАКС((Таблица1[товар]=E8)*Таблица1[дата])

3) наконец, выводим актуальную цену =СУММЕСЛИМН(Таблица1[цена];Таблица1[товар];E8;Таблица1[дата];F8)

Для товара не должно быть повторов дат, иначе цены будут суммироваться (если повторяется последняя дата).

Понравилась статья? Поделить с друзьями:
  • Подставлять значения по столбцам excel
  • Подсказки на игру word уровень
  • Подставляемый текст для excel
  • Подсказки к игре word life
  • Подставляемые функции в excel