Содержание
- Выполнение выборки
- Способ 1: применение расширенного автофильтра
- Способ 2: применение формулы массива
- Способ 3: выборка по нескольким условиям с помощью формулы
- Способ 4: случайная выборка
- Вопросы и ответы
При работе с таблицами Excel довольно часто приходится проводить отбор в них по определенному критерию или по нескольким условиям. В программе сделать это можно различными способами при помощи ряда инструментов. Давайте выясним, как произвести выборку в Экселе, используя разнообразные варианты.
Выполнение выборки
Выборка данных состоит в процедуре отбора из общего массива тех результатов, которые удовлетворяют заданным условиям, с последующим выводом их на листе отдельным списком или в исходном диапазоне.
Способ 1: применение расширенного автофильтра
Наиболее простым способом произвести отбор является применение расширенного автофильтра. Рассмотрим, как это сделать на конкретном примере.
- Выделяем область на листе, среди данных которой нужно произвести выборку. Во вкладке «Главная» щелкаем по кнопке «Сортировка и фильтр». Она размещается в блоке настроек «Редактирование». В открывшемся после этого списка выполняем щелчок по кнопке «Фильтр».
Есть возможность поступить и по-другому. Для этого после выделения области на листе перемещаемся во вкладку «Данные». Щелкаем по кнопке «Фильтр», которая размещена на ленте в группе «Сортировка и фильтр».
- После этого действия в шапке таблицы появляются пиктограммы для запуска фильтрования в виде перевернутых острием вниз небольших треугольников на правом краю ячеек. Кликаем по данному значку в заглавии того столбца, по которому желаем произвести выборку. В запустившемся меню переходим по пункту «Текстовые фильтры». Далее выбираем позицию «Настраиваемый фильтр…».
- Активируется окно пользовательской фильтрации. В нем можно задать ограничение, по которому будет производиться отбор. В выпадающем списке для столбца содержащего ячейки числового формата, который мы используем для примера, можно выбрать одно из пяти видов условий:
- равно;
- не равно;
- больше;
- больше или равно;
- меньше.
Давайте в качестве примера зададим условие так, чтобы отобрать только значения, по которым сумма выручки превышает 10000 рублей. Устанавливаем переключатель в позицию «Больше». В правое поле вписываем значение «10000». Чтобы произвести выполнение действия, щелкаем по кнопке «OK».
- Как видим, после фильтрации остались только строчки, в которых сумма выручки превышает 10000 рублей.
- Но в этом же столбце мы можем добавить и второе условие. Для этого опять возвращаемся в окно пользовательской фильтрации. Как видим, в его нижней части есть ещё один переключатель условия и соответствующее ему поле для ввода. Давайте установим теперь верхнюю границу отбора в 15000 рублей. Для этого выставляем переключатель в позицию «Меньше», а в поле справа вписываем значение «15000».
Кроме того, существует ещё переключатель условий. У него два положения «И» и «ИЛИ». По умолчанию он установлен в первом положении. Это означает, что в выборке останутся только строчки, которые удовлетворяют обоим ограничениям. Если он будет выставлен в положение «ИЛИ», то тогда останутся значения, которые подходят под любое из двух условий. В нашем случае нужно выставить переключатель в положение «И», то есть, оставить данную настройку по умолчанию. После того, как все значения введены, щелкаем по кнопке «OK».
- Теперь в таблице остались только строчки, в которых сумма выручки не меньше 10000 рублей, но не превышает 15000 рублей.
- Аналогично можно настраивать фильтры и в других столбцах. При этом имеется возможность сохранять также фильтрацию и по предыдущим условиям, которые были заданы в колонках. Итак, посмотрим, как производится отбор с помощью фильтра для ячеек в формате даты. Кликаем по значку фильтрации в соответствующем столбце. Последовательно кликаем по пунктам списка «Фильтр по дате» и «Настраиваемый фильтр».
- Снова запускается окно пользовательского автофильтра. Выполним отбор результатов в таблице с 4 по 6 мая 2016 года включительно. В переключателе выбора условий, как видим, ещё больше вариантов, чем для числового формата. Выбираем позицию «После или равно». В поле справа устанавливаем значение «04.05.2016». В нижнем блоке устанавливаем переключатель в позицию «До или равно». В правом поле вписываем значение «06.05.2016». Переключатель совместимости условий оставляем в положении по умолчанию – «И». Для того, чтобы применить фильтрацию в действии, жмем на кнопку «OK».
- Как видим, наш список ещё больше сократился. Теперь в нем оставлены только строчки, в которых сумма выручки варьируется от 10000 до 15000 рублей за период с 04.05 по 06.05.2016 включительно.
- Мы можем сбросить фильтрацию в одном из столбцов. Сделаем это для значений выручки. Кликаем по значку автофильтра в соответствующем столбце. В выпадающем списке щелкаем по пункту «Удалить фильтр».
- Как видим, после этих действий, выборка по сумме выручки будет отключена, а останется только отбор по датам (с 04.05.2016 по 06.05.2016).
- В данной таблице имеется ещё одна колонка – «Наименование». В ней содержатся данные в текстовом формате. Посмотрим, как сформировать выборку с помощью фильтрации по этим значениям.
Кликаем по значку фильтра в наименовании столбца. Последовательно переходим по наименованиям списка «Текстовые фильтры» и «Настраиваемый фильтр…».
- Опять открывается окно пользовательского автофильтра. Давайте сделаем выборку по наименованиям «Картофель» и «Мясо». В первом блоке переключатель условий устанавливаем в позицию «Равно». В поле справа от него вписываем слово «Картофель». Переключатель нижнего блока так же ставим в позицию «Равно». В поле напротив него делаем запись – «Мясо». И вот далее мы выполняем то, чего ранее не делали: устанавливаем переключатель совместимости условий в позицию «ИЛИ». Теперь строчка, содержащая любое из указанных условий, будет выводиться на экран. Щелкаем по кнопке «OK».
- Как видим, в новой выборке существуют ограничения по дате (с 04.05.2016 по 06.05.2016) и по наименованию (картофель и мясо). По сумме выручки ограничений нет.
- Полностью удалить фильтр можно теми же способами, которые использовались для его установки. Причем неважно, какой именно способ применялся. Для сброса фильтрации, находясь во вкладке «Данные» щелкаем по кнопке «Фильтр», которая размещена в группе «Сортировка и фильтр».
Второй вариант предполагает переход во вкладку «Главная». Там выполняем щелчок на ленте по кнопке «Сортировка и фильтр» в блоке «Редактирование». В активировавшемся списке нажимаем на кнопку «Фильтр».
При использовании любого из двух вышеуказанных методов фильтрация будет удалена, а результаты выборки – очищены. То есть, в таблице будет показан весь массив данных, которыми она располагает.
Урок: Функция автофильтр в Excel
Способ 2: применение формулы массива
Сделать отбор можно также применив сложную формулу массива. В отличие от предыдущего варианта, данный метод предусматривает вывод результата в отдельную таблицу.
- На том же листе создаем пустую таблицу с такими же наименованиями столбцов в шапке, что и у исходника.
- Выделяем все пустые ячейки первой колонки новой таблицы. Устанавливаем курсор в строку формул. Как раз сюда будет заноситься формула, производящая выборку по указанным критериям. Отберем строчки, сумма выручки в которых превышает 15000 рублей. В нашем конкретном примере, вводимая формула будет выглядеть следующим образом:
=ИНДЕКС(A2:A29;НАИМЕНЬШИЙ(ЕСЛИ(15000<=C2:C29;СТРОКА(C2:C29);"");СТРОКА()-СТРОКА($C$1))-СТРОКА($C$1))
Естественно, в каждом конкретном случае адрес ячеек и диапазонов будет свой. На данном примере можно сопоставить формулу с координатами на иллюстрации и приспособить её для своих нужд.
- Так как это формула массива, то для того, чтобы применить её в действии, нужно нажимать не кнопку Enter, а сочетание клавиш Ctrl+Shift+Enter. Делаем это.
- Выделив второй столбец с датами и установив курсор в строку формул, вводим следующее выражение:
=ИНДЕКС(B2:B29;НАИМЕНЬШИЙ(ЕСЛИ(15000<=C2:C29;СТРОКА(C2:C29);"");СТРОКА()-СТРОКА($C$1))-СТРОКА($C$1))
Жмем сочетание клавиш Ctrl+Shift+Enter.
- Аналогичным образом в столбец с выручкой вписываем формулу следующего содержания:
=ИНДЕКС(C2:C29;НАИМЕНЬШИЙ(ЕСЛИ(15000<=C2:C29;СТРОКА(C2:C29);"");СТРОКА()-СТРОКА($C$1))-СТРОКА($C$1))
Опять набираем сочетание клавиш Ctrl+Shift+Enter.
Во всех трех случаях меняется только первое значение координат, а в остальном формулы полностью идентичны.
- Как видим, таблица заполнена данными, но внешний вид её не совсем привлекателен, к тому же, значения даты заполнены в ней некорректно. Нужно исправить эти недостатки. Некорректность даты связана с тем, что формат ячеек соответствующего столбца общий, а нам нужно установить формат даты. Выделяем весь столбец, включая ячейки с ошибками, и кликаем по выделению правой кнопкой мыши. В появившемся списке переходим по пункту «Формат ячейки…».
- В открывшемся окне форматирования открываем вкладку «Число». В блоке «Числовые форматы» выделяем значение «Дата». В правой части окна можно выбрать желаемый тип отображения даты. После того, как настройки выставлены, жмем на кнопку «OK».
- Теперь дата отображается корректно. Но, как видим, вся нижняя часть таблицы заполнена ячейками, которые содержат ошибочное значение «#ЧИСЛО!». По сути, это те ячейки, данных из выборки для которых не хватило. Более привлекательно было бы, если бы они отображались вообще пустыми. Для этих целей воспользуемся условным форматированием. Выделяем все ячейки таблицы, кроме шапки. Находясь во вкладке «Главная» кликаем по кнопке «Условное форматирование», которая находится в блоке инструментов «Стили». В появившемся списке выбираем пункт «Создать правило…».
- В открывшемся окне выбираем тип правила «Форматировать только ячейки, которые содержат». В первом поле под надписью «Форматировать только ячейки, для которых выполняется следующее условие» выбираем позицию «Ошибки». Далее жмем по кнопке «Формат…».
- В запустившемся окне форматирования переходим во вкладку «Шрифт» и в соответствующем поле выбираем белый цвет. После этих действий щелкаем по кнопке «OK».
- На кнопку с точно таким же названием жмем после возвращения в окно создания условий.
Теперь у нас имеется готовая выборка по указанному ограничению в отдельной надлежащим образом оформленной таблице.
Урок: Условное форматирование в Excel
Способ 3: выборка по нескольким условиям с помощью формулы
Так же, как и при использовании фильтра, с помощью формулы можно осуществлять выборку по нескольким условиям. Для примера возьмем всю ту же исходную таблицу, а также пустую таблицу, где будут выводиться результаты, с уже выполненным числовым и условным форматированием. Установим первым ограничением нижнюю границу отбора по выручке в 15000 рублей, а вторым условием верхнюю границу в 20000 рублей.
- Вписываем в отдельном столбце граничные условия для выборки.
- Как и в предыдущем способе, поочередно выделяем пустые столбцы новой таблицы и вписываем в них соответствующие три формулы. В первый столбец вносим следующее выражение:
=ИНДЕКС(A2:A29;НАИМЕНЬШИЙ(ЕСЛИ(($D$2=C2:C29);СТРОКА(C2:C29);"");СТРОКА(C2:C29)-СТРОКА($C$1))-СТРОКА($C$1))
В последующие колонки вписываем точно такие же формулы, только изменив координаты сразу после наименования оператора ИНДЕКС на соответствующие нужным нам столбцам, по аналогии с предыдущим способом.
Каждый раз после ввода не забываем набирать сочетание клавиш Ctrl+Shift+Enter.
- Преимущество данного способа перед предыдущим заключается в том, что если мы захотим поменять границы выборки, то совсем не нужно будет менять саму формулу массива, что само по себе довольно проблематично. Достаточно в колонке условий на листе поменять граничные числа на те, которые нужны пользователю. Результаты отбора тут же автоматически изменятся.
Способ 4: случайная выборка
В Экселе с помощью специальной формулы СЛЧИС можно также применять случайный отбор. Его требуется производить в некоторых случаях при работе с большим объемом данных, когда нужно представить общую картину без комплексного анализа всех данных массива.
- Слева от таблицы пропускаем один столбец. В ячейке следующего столбца, которая находится напротив первой ячейки с данными таблицы, вписываем формулу:
=СЛЧИС()
Эта функция выводит на экран случайное число. Для того, чтобы её активировать, жмем на кнопку ENTER.
- Для того, чтобы сделать целый столбец случайных чисел, устанавливаем курсор в нижний правый угол ячейки, которая уже содержит формулу. Появляется маркер заполнения. Протягиваем его вниз с зажатой левой кнопкой мыши параллельно таблице с данными до её конца.
- Теперь у нас имеется диапазон ячеек, заполненный случайными числами. Но, он содержит в себе формулу СЛЧИС. Нам же нужно работать с чистыми значениями. Для этого следует выполнить копирование в пустой столбец справа. Выделяем диапазон ячеек со случайными числами. Расположившись во вкладке «Главная», щелкаем по иконке «Копировать» на ленте.
- Выделяем пустой столбец и кликаем правой кнопкой мыши, вызывая контекстное меню. В группе инструментов «Параметры вставки» выбираем пункт «Значения», изображенный в виде пиктограммы с цифрами.
- После этого, находясь во вкладке «Главная», кликаем по уже знакомому нам значку «Сортировка и фильтр». В выпадающем списке останавливаем выбор на пункте «Настраиваемая сортировка».
- Активируется окно настройки сортировки. Обязательно устанавливаем галочку напротив параметра «Мои данные содержат заголовки», если шапка имеется, а галочки нет. В поле «Сортировать по» указываем наименование того столбца, в котором содержатся скопированные значения случайных чисел. В поле «Сортировка» оставляем настройки по умолчанию. В поле «Порядок» можно выбрать параметр как «По возрастанию», так и «По убыванию». Для случайной выборки это значения не имеет. После того, как настройки произведены, жмем на кнопку «OK».
- После этого все значения таблицы выстраиваются в порядке возрастания или убывания случайных чисел. Можно взять любое количество первых строчек из таблицы (5, 10, 12, 15 и т.п.) и их можно будет считать результатом случайной выборки.
Урок: Сортировка и фильтрация данных в Excel
Как видим, выборку в таблице Excel можно произвести, как с помощью автофильтра, так и применив специальные формулы. В первом случае результат будет выводиться в исходную таблицу, а во втором – в отдельную область. Имеется возможность производить отбор, как по одному условию, так и по нескольким. Кроме того, можно осуществлять случайную выборку, использовав функцию СЛЧИС.
Еще статьи по данной теме:
Помогла ли Вам статья?
Суть запроса на выборку – выбрать из исходной таблицы строки, удовлетворяющие определенным критериям (подобно применению стандартного
Фильтра
). Произведем отбор значений из исходной таблицы с помощью
формул массива
. В отличие от применения
Фильтра
(
CTRL+SHIFT+L
или Данные/ Сортировка и фильтр/ Фильтр ) отобранные строки будут помещены в отдельную таблицу.
В этой статье рассмотрим наиболее часто встречающиеся запросы, например: отбор строк таблицы, у которых значение из числового столбца попадает в заданный диапазон (интервал); отбор строк, у которых дата принаждежит определенному периоду; задачи с 2-мя текстовыми критериями и другие. Начнем с простых запросов.
1. Один числовой критерий (Выбрать те Товары, у которых цена выше минимальной)
Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист
Один критерий — число
).
Необходимо отобразить в отдельной таблице только те записи (строки) из Исходной таблицы, у которых цена выше 25.
Решить эту и последующие задачи можно легко с помощью
стандартного фильтра
. Для этого выделите заголовки Исходной таблицы и нажмите
CTRL+SHIFT+L
. Через выпадающий список у заголовка Цены выберите
Числовые фильтры…
, затем задайте необходимые условия фильтрации и нажмите ОК.
Будут отображены записи удовлетворяющие условиям отбора.
Другим подходом является использование
формул массива
. В отличие от
фильтра
отобранные строки будут помещены в отдельную таблицу — своеобразный
Отчет
, который, например, можно отформатировать в стиль отличный от Исходной таблицы или производить другие ее модификации.
Критерий (минимальную цену) разместим в ячейке
Е6
, таблицу для отфильтрованных данных — в диапазоне
D10:E19
.
Теперь выделим диапазон
D11:D19
(столбец Товар) и в
Строке формул
введем
формулу массива
:
=ИНДЕКС(A11:A19;НАИМЕНЬШИЙ(ЕСЛИ($E$6<=B11:B19;СТРОКА(B11:B19);»»);СТРОКА()-СТРОКА($B$10))-СТРОКА($B$10))
Вместо
ENTER
нажмите сочетание клавиш
CTRL+SHIFT+ENTER
(формула массива будет
возвращать несколько значений
).
Те же манипуляции произведем с диапазоном
E11:E19
(столбец Цена) куда и введем аналогичную
формулу массива
:
=ИНДЕКС(B11:B19;НАИМЕНЬШИЙ(ЕСЛИ($E$6<=B11:B19;СТРОКА(B11:B19);»»);СТРОКА()-СТРОКА($B$10))-СТРОКА($B$10))
В результате получим новую таблицу, которая будет содержать только товары, у которых цены не меньше, указанной в ячейке
Е6
.
Чтобы показать динамизм полученного Запроса на выборку, введем в
Е6
значение 55. В новую таблицу попадет только 2 записи.
Если в Исходную таблицу добавить новый товар с Ценой 80, то в новую таблицу автоматически будет добавлена новая запись.
Примечание
. Также для вывода отфильтрованных данных можно использовать
Расширенный фильтр
и
Сводные таблицы
. Выбор конкретного инструмента зависит от стоящей перед пользователем задачи.
Если Вам не удобно использовать
формулу массива
, которая возвращает несколько значений, то можно использовать другой подход, который рассмотрен в разделах ниже: 5.а, 7, 10 и 11. В этих случаях используются
формулы массива, возвращающие одно значение
.
2. Два числовых критерия (Выбрать те Товары, у которых цена попадает в диапазон)
Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист
Диапазон Чисел
).
Критерии (нижнюю и верхнюю границы цены) разместим в диапазоне
Е5:Е6
.
Т.е. если Цена Товара попадает в указанный интервал, то такая запись появится в новой таблице Отфильтрованные данные.
В отличие от предыдущей задачи создадим два
Динамических диапазона
: Товары и Цены (без них можно обойтись, но они удобны при написании формул). Соответствующие формулы должны выглядеть в Диспетчере имен ( Формулы/ Определенные имена/ Диспетчер имен ) следующим образом (см. рисунок ниже).
Теперь выделим диапазон
D11:D19
и в
Строке формул
введем
формулу массива
:
=ИНДЕКС(Товары;НАИМЕНЬШИЙ(ЕСЛИ(($E$5<=Цены)*($E$6>=Цены);СТРОКА(Цены);»»);СТРОКА(Цены)-СТРОКА($B$10))-СТРОКА($B$10))
Вместо
ENTER
нажмите сочетание клавиш
CTRL+SHIFT+ENTER
.
Те же манипуляции произведем с диапазоном
E11:E19
куда и введем аналогичную
формулу массива
:
=ИНДЕКС(Цены;НАИМЕНЬШИЙ(ЕСЛИ(($E$5<=Цены)*($E$6>=Цены);СТРОКА(Цены);»»);СТРОКА(Цены)-СТРОКА($B$10))-СТРОКА($B$10))
В результате получим новую таблицу, которая будет содержать только товары, у которых цены попадают в интервал, указанный в ячейках
Е5
и
Е6
.
Чтобы показать динамизм полученного Отчета (Запроса на выборку) введем в
Е6
значение 65. В новую таблицу будет добавлена еще одна запись из Исходной таблицы, удовлетворяющая новому критерию.
Если в Исходную таблицу добавить новый товар с Ценой в диапазоне от 25 до 65, то в новую таблицу будет добавлена новая запись.
В файле примера также содержатся формулы массива с обработкой ошибок, когда в столбце Цена содержится значение ошибки, например #ДЕЛ/0! (см. лист
Обработка ошибок
).
Следующие задачи решаются аналогичным образом, поэтому не будем их рассматривать так детально.
3. Один критерий Дата (Выбрать те Товары, у которых Дата поставки совпадает заданной)
Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист
Один критерий — Дата
).
Для отбора строк используются формулы массива, аналогичные Задаче1 (вместо критерия <= используется =):
= ИНДЕКС(A12:A20;НАИМЕНЬШИЙ(ЕСЛИ($E$6=B12:B20;СТРОКА(B12:B20);»»);СТРОКА(B12:B20)-СТРОКА($B$11))-СТРОКА($B$11))
=ИНДЕКС(B12:B20;НАИМЕНЬШИЙ(ЕСЛИ($E$6=B12:B20;СТРОКА(B12:B20);»»);СТРОКА(B12:B20)-СТРОКА($B$11))-СТРОКА($B$11))
4. Два критерия Дата (Выбрать те Товары, у которых Дата поставки попадает в диапазон)
Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист
Диапазон Дат
).
Обратите внимание, что столбец Дат НЕ СОРТИРОВАН.
Решение1
: Для отбора строк можно использовать
формулы массива, возвращающие одно значение
.
Введите в ячейку
D12
формулу массива:
=ИНДЕКС(A$12:A$20;НАИБОЛЬШИЙ(($E$6<=$B$12:$B$20)*($E$7>=$B$12:$B$20)*(СТРОКА($B$12:$B$20)-СТРОКА($B$11));$J$12-СТРОКА(A12)+СТРОКА($B$11)+1))
Примечание
: После ввода формулы вместо клавиши ENTER (ВВОД) нужно нажать сочетание клавиш CTRL+SHIFT+ENTER. Это сочетание клавиш используется для ввода формул массива.
Скопируйте формулу массива вниз на нужное количество ячеек. Формула вернет только те значения Товаров, которые были поставлены в диапазоне указанных дат. В остальных ячейках будут содержаться ошибки #ЧИСЛО! Ошибки в файле примера (Лист 4.Диапазон Дат)
скрыты с помощью Условного форматирования
.
Аналогичную формулу нужно ввести и для дат в столбец E.
В ячейке
J12
вычислено количество строк исходной таблицы, удовлетворяющих критериям:
=СЧЁТЕСЛИМН(B12:B20;»>=»&$E$6;B12:B20;»<=»&$E$7)
Строки исходной таблицы, которые удовлетворяют критериям,
выделены также Условным форматированием
.
Решение2
: Для отбора строк можно использовать формулы массива, аналогичные Задаче2 (т.е.
формулы массива, возвращающие несколько значений
):
= ИНДЕКС(A12:A20;НАИМЕНЬШИЙ(ЕСЛИ(($E$6<=B12:B20)*($E$7>=B12:B20);СТРОКА(B12:B20);»»);СТРОКА(B12:B20)-СТРОКА($B$11))-СТРОКА($B$11))
=ИНДЕКС(B12:B20;НАИМЕНЬШИЙ(ЕСЛИ(($E$6<=B12:B20)*($E$7>=B12:B20);СТРОКА(B12:B20);»»);СТРОКА(B12:B20)-СТРОКА($B$11))-СТРОКА($B$11))
Для ввода первой формулы выделите диапазон ячеек
G12:G20
. После ввода формулы вместо клавиши ENTER (ВВОД) нужно нажать сочетание клавиш CTRL+SHIFT+ENTER.
Решение3
: Если столбец Дат СОРТИРОВАН, то можно не использовать формулы массива.
Сначала необходимо вычислить первую и последнюю позиции строк, которые удовлетворяют критериям. Затем вывести строки
с помощью функции СМЕЩ()
.
Этот пример еще раз наглядно демонстрирует насколько
предварительная сортировка данных
облегчает написание формул.
5. Один критерий Дата (Выбрать те Товары, у которых Дата поставки не раньше/ не позже заданной)
Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист
Один критерий — Дата (не позже)
).
Для отбора строк, дата которых не раньше (включая саму дату), используется формула массива:
= ИНДЕКС(A12:A20;НАИМЕНЬШИЙ(ЕСЛИ($E$7<=B12:B20;СТРОКА(B12:B20);»»);СТРОКА(B12:B20)-СТРОКА($B$11))-СТРОКА($B$11))
Также в файле примера приведены формулы для условий: Не раньше (не включая); Не позже (включая); Не позже (не включая).
Эта формула введена как
формула массив
а, возвращающая множество значений (см. здесь
Формулы массива в MS EXCEL, возвращающие несколько значений
). Эту формулу можно переделать, чтобы
возвращалось только 1 значение
, см. следующую задачу 5а.
5а. Один критерий Дата (Выбрать События, которые Закончились/ не начались/ происходят на заданную дату)
Пусть имеется перечень событий и даты их начала и завершения.
Пользователю требуется найти и вывести в отдельную таблицу события, которые либо уже закончились на заданную дату, либо еще длятся, либо еще не начались.
Т.е. нам потребуется формула, обрабатывающая 3 вышеуказанные ситуации. Можно использовать нижеуказанную формулу, которую нужно ввести в строке для каждого события
= ВЫБОР($C$6;$B$7>C15;И($B$7>=B15;$B$7<=C15);$B$7
Формула возвращает ЛОЖЬ или ИСТИНА в зависимости от того удовлетворят ли Событие указанным критерием. Результат этой формулы мы будем использовать как для
Условного форматирования
, чтобы выделить События, так и для вывода Событий в отдельный диапазон.
Для вывода Событий в соседний диапазон используйте формулу:
= ИНДЕКС(A$15:A$21;НАИМЕНЬШИЙ(ЕСЛИ($D$15:$D$21;СТРОКА(A$15:A$21);»»);СТРОКА()-СТРОКА($B$14))-СТРОКА($B$14))
Формула делает следующее:
— если Событие удовлетворяет условию, то формула запоминает номер строки этого События: ЕСЛИ($D$15:$D$21;СТРОКА(A$15:A$21);»»)
—
Функция НАИМЕНЬШИЙ()
сортирует
полученный массив номеров строк: первыми идут номера строк Событий, которые удовлетворяют критерию;
—
Функция ИНДЕКС()
выводит названия Событий из указанный строк.
6. Два критерия: Дата и Текст (Выбрать Товары определенного вида, у которых Дата поставки не позже заданной)
Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист
2 критерия — Дата-Текст
).
В отличие от Задачи 5 будем отбирать строки только того Товара, который указан в критерии. Список дат должен быть
отсортирован
(для каждого из товаров), по товару сортировка не требуется.
Для отбора строк, дата которых не позже (включая саму дату), используется формула массива:
= ИНДЕКС(A13:A21; НАИМЕНЬШИЙ(ЕСЛИ(($E$7=$A$13:$A$21)*($E$8>=$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 критерия — текст (И)
).
Для отбора строк используется формула массива:
= ИНДЕКС($A$11:$A$19; НАИМЕНЬШИЙ(ЕСЛИ(($F$6=$A$11:$A$19)*($F$7=$B$11:$B$19);СТРОКА($A$11:$A$19)-СТРОКА($A$10);30);СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК($A$11:$A$19)))))
Выражение ($F$6=$A$11:$A$19)*($F$7=$B$11:$B$19) задает оба условия (Товар и Месяц).
Выражение СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК($A$11:$A$19))) формирует
массив последовательных чисел
{1:2:3:4:5:6:7:8:9}, т.е. номера строк в таблице.
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 критерий).
Вышеуказанное выражение вернет массив {0:0:0:0:1:1:1:0:0}. Умножив его на выражение СТРОКА($A$11:$A$19)-СТРОКА($A$10) , т.е. на
массив последовательных чисел
{1:2:3:4:5:6:7:8:9}, получим массив позиций (номеров строк таблицы), удовлетворяющих критериям. В нашем случае это будет массив {0:0:0:0:5:6:7:0:0}.
С помощью функции НАИБОЛЬШИЙ() выведем 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. Отбор значений с учетом повторов
В разделе
Отбор на основании повторяемости
собраны статьи о запросах с группировкой данных. Из повторяющихся данных сначала отбираются уникальные значения, а соответствующие им значения в других столбцах — группируются (складываются, усредняются и пр.).
Наиболее популярные статьи из этого раздела:
Отбор уникальных значений (убираем повторы из списка) в MS EXCEL
Отбор уникальных значений с суммированием по соседнему столбцу в MS EXCEL
Отбор повторяющихся значений в MS EXCEL
Отбор уникальных значений из двух диапазонов в MS EXCEL
Отбор уникальных СТРОК с помощью Расширенного фильтра в MS EXCEL
В качестве примера приведем решения следующей задачи:
Выбрать Товары, цена которых лежит в определенном диапазоне и повторяется заданное количество раз или более.
В качестве исходной возьмем таблицу партий товаров.
Предположим, что нас интересует сколько и каких партий товаров поставлялось по цене от 1000р. до 2000р. (критерий 1). Причем, партий с одинаковой ценой должно быть минимум 3 (критерий 2).
Решением является формула массива:
=НАИМЕНЬШИЙ(СТРОКА($A$14:$A$27)*($C$14:$C$27>=$B$7)*($C$14:$C$27<=$C$7)*($D$14:$D$27>=$B$10);F14+($G$8-$G$9))
Эта формула возвращает номера строк, которые удовлетворяют обоим критериям.
Формула =СУММПРОИЗВ(($C$14:$C$27>=$B$7)*($C$14:$C$27<=$C$7)*($D$14:$D$27>=$B$10)) подсчитывает количество строк, которые удовлетворяют критериям.
В файле примера на листе «10.Критерий — колич-во повторов» настроено
Условное форматирование
, которое позволяет визуально определить строки удовлетворяющие критериям, а также
скрыть ячейки, в которых формула массива возвращает ошибку #ЧИСЛО!
11. Используем значение критерия (Любой) или (Все)
В фильтре
Сводных таблиц
MS EXCEL используется значение (Все), чтобы вывести все значения столбца. Другими словами, в
выпадающем списке
значений критерия содержится особое значение, которое отменяет сам критерий (см. статью
Отчеты в MS EXCEL
, Отчет №3).
В файле примера на листе «11. Критерий Любой или (Все)» реализован данный вариант критерия.
Формула в этом случае должна содержать функцию ЕСЛИ() . Если выбрано значение (Все), то используется формула для вывода значений без учета данного критерия. Если выбрано любое другое значение, то критерий работает обычным образом.
=ЕСЛИ($C$8=»(Все)»;НАИМЕНЬШИЙ((СТРОКА($B$13:$B$26)-СТРОКА($B$12))*($D$13:$D$26>=$D$8);F13+($G$6-$G$7));НАИМЕНЬШИЙ((СТРОКА($B$13:$B$26)-СТРОКА($B$12))*($D$13:$D$26>=$D$8)*($C$13:$C$26=$C$8);F13+($G$6-$G$7)))
Остальная часть формулы аналогична рассмотренным выше.
12. Актуальная цена
Пусть для товара ежедневно заполняется таблица цен (цена может меняться, но не каждый день). Нужно найти актуальнуй цену, т.е. цену на последнюю дату. Если товар всего один, то можно отсортировать по дате и в последней строке будет нужная актуальная цена. Если товаров много, то нужно сначала выбрать Автофильтром нужный товар, затем опять отсортировать по цене.
Чтобы иметь перечень товаров с актуальными ценами придется использовать формулы:
1) сначала сформируем перечень товаров без повторов
Отбор уникальных значений (убираем повторы из списка) в MS EXCEL
2) определяем последнюю (максимальную) дату для каждого товара с помощью формулы массива =МАКС((Таблица1[товар]=E8)*Таблица1[дата])
3) наконец, выводим актуальную цену =СУММЕСЛИМН(Таблица1[цена];Таблица1[товар];E8;Таблица1[дата];F8)
Для товара не должно быть повторов дат, иначе цены будут суммироваться (если повторяется последняя дата).
В файле примера приведено решение на листе 12. Актуальная цена.
Если пользователю Excel приходится работать с большой электронной таблицей и задача состоит в том, чтобы найти уникальные значения, соответствующие определенному критерию, им часто приходится использовать такой инструмент, как фильтр. Но в некоторых случаях необходимо сделать что-то еще, то есть выбрать все серии, в которых есть определенные значения по отношению к другим сериям. Если говорить об этой ситуации, то здесь необходимо использовать другую функцию — условное форматирование.
Чтобы максимизировать производительность, при необходимости следует использовать раскрывающийся список.
Это полезно в ситуациях, когда вам нужно постоянно изменять запросы одного и того же типа, чтобы отображать разные строки в диапазоне. Теперь мы подробно расскажем, какие действия нужно выполнить, чтобы создать выделение из повторяющихся ячеек, включенных в выпадающий список.
Прежде всего, нужно понять, что такое чемпион. Это одно из важнейших статистических понятий, означающее набор параметров, выбранных по определенному критерию. Выборка может быть чем угодно: люди для эксперимента, одежда, предприятия, титулы и так далее.
Чтобы создать образец, вы должны сначала выбрать те результаты, которые соответствуют условиям, из большого списка, а затем отобразить эти значения в отдельном списке или в исходной таблице.
Подготовка содержания выпадающего списка
Чтобы сделать нашу работу сегодня более наглядной, возьмем историю соглашений с клиентами. Это будет так, как показано на картинке.
Здесь необходимо с помощью цвета выделить все операции, выполняемые по отношению к каждому конкретному аналогу. Для переключения между ними применим выпадающий список. Поэтому изначально это необходимо сделать, а для этого необходимо выбрать данные, которые будут его элементами. В нашем примере нам нужны все совпадающие имена, которые находятся в столбце A и не повторяются. Чтобы подготовить содержимое выпадающего списка, вам необходимо выполнить следующие инструкции:
- Выберем первый столбец нашей таблицы.
- Воспользуемся инструментом «Данные» — «Сортировка и фильтр» — «Дополнительно».
- Далее перед нами появится окно, в котором мы должны выбрать тип обработки «копировать результат в другое место», а также поставить галочку напротив пункта «Только уникальные записи». В нашем случае диапазон, который мы используем, будет ячейкой с адресом $ F $ 1. Знак доллара означает, что ссылка является абсолютной и не будет изменяться в зависимости от того, копирует ли человек содержимое ячейки, связанной с ней, или вставляет ее.
- После установки всех необходимых параметров нам необходимо нажать кнопку ОК и затем мы подтверждаем свои действия.
Теперь мы видим список ячеек с уникальными фамилиями, которые больше не повторяются. Это будет наш выбор для списка.
Модификация исходной таблицы
После этого нам нужно внести некоторые изменения в нашу таблицу. Для этого выделите первые две строчки и нажмите комбинацию клавиш Ctrl + Shift + =. Поэтому мы вставили две дополнительные строки. Во вновь созданной ячейке A1 введите слово «Клиент».
Создание выпадающего списка
Далее нам нужно создать раскрывающийся список. Для этого выполните следующие действия:
- Щелкаем по ячейке B1. Переходим во вкладку «Данные» — «Работа с данными» — «Проверка данных».
- Появится диалоговое окно, в котором мы должны выбрать тип данных «Список» и выбрать наш список фамилий в качестве источника данных. Затем нажмите кнопку ОК.
Впоследствии ячейка B1 превращается в полный список имен клиентов. Если информация, которая служит источником для раскрывающегося списка, находится на другом листе, то в этом случае лучше всего назвать этот диапазон и обращаться к нему таким образом.
В нашем случае в этом нет необходимости, потому что у нас уже есть вся информация на одном листе.
Выборка ячеек из таблицы по условию
Теперь попробуем создать выделение ячеек по условию. Для этого выберите таблицу, содержащую название контрагента, его код, номер транзакции и сумму транзакции, после чего мы откроем окно «Условное форматирование». Для его вызова нужно перейти на вкладку «Главная», найти там группу «Стили» и там будет кнопка «Условное форматирование».
Появится меню, в котором мы должны нажать на пункт «Создать правило», так как мы выбираем «Использовать формулу для определения форматированных ячеек».
Затем введите формулу, показанную на снимке экрана, затем нажмите кнопку «Форматировать», чтобы все ячейки были того же цвета, что и фамилия. Например, зеленый. Далее подтверждаем все ранее выполненные действия, многократно нажимая «ОК» во всех окнах, которые будут открыты в этот момент. Впоследствии, когда мы выбираем фамилию нашего человека, все ячейки, которые ее включают, выделяются указанным нами цветом.
Как это работает? Когда мы выбираем значение в раскрывающемся списке, формула анализирует все доступные строки и, если находит совпадение, выделяет их цветом, указанным пользователем. Вы можете убедиться, что формула работает, выбрав другую фамилию. Впоследствии выбор изменится. Это значительно упрощает чтение таблицы.
Принцип работы следующий: проверяется значение в столбце A. Если оно совпадает с выбранным в списке в ячейке B1, эта формула возвращает значение ИСТИНА. После этого вся строка форматируется так, как вы хотите. В принципе, вы можете не только выделить эту строку отдельным цветом, но и произвольно настроить шрифт, границы и другие параметры. Но мелирование цветом — самый быстрый способ.
Как мы получили цвет всей строки, а не отдельной ячейки? Для этого мы применили ссылку на ячейку, где адрес столбца является абсолютным, а номер строки относительным.
4 способа выборки данных в Excel
Но это не конец нашего образования. Фактически, у нас есть до четырех способов сформировать выборку данных в Excel.
Расширенный автофильтр
Это самый простой способ выбрать значения, соответствующие определенным критериям. Давайте подробнее разберемся, что для этого нужно.
- Предположим, у вас есть таблица, содержащая название продукта, дату и общую сумму, полученную от продажи определенного предмета в определенный день. Нам нужно выбрать область, в которой мы хотим выбрать образец. Для этого переходим во вкладку «Главная», где находим кнопку «Сортировка и фильтр» и нажимаем на нее. Его можно найти в наборе инструментов редактирования. Далее находим опцию «Фильтр». Вот скриншот для наглядности.
- В этом случае есть и второй способ действовать. Вы можете найти кнопку «Фильтр» в группе «Сортировка и фильтр» на вкладке «Данные».
- После этого вверху таблицы появятся стрелки, с помощью которых вы сможете выбрать данные для фильтра. Мы должны щелкнуть по одному из них (какой зависит от столбца, в котором мы должны сортировать). Затем найдите «Числовые фильтры» и нажмите «Пользовательский фильтр».
- После этого появится окно, в котором можно настроить настраиваемый фильтр. С его помощью пользователь может установить критерий, по которому будут отбираться данные. В раскрывающемся списке для столбца, который содержит числовые ячейки (то есть, давайте использовать их, например), вы можете выбрать такие критерии, как равно, не равно, больше, больше или равно и меньше. То есть стандартные арифметические операции сравнения.
Устанавливаем для наглядности правило, согласно которому программа должна отбирать только те значения, при которых сумма выручки превышает 10 тысяч рублей. Следовательно, мы должны установить пункт «больше чем» в поле, обозначенном цифрой 1 на скриншоте, и установить значение 10 тысяч (цифрами) в поле, обозначенном цифрой 2. Так что остается только подтвердить наши действия. - Как мы поняли, после фильтрации данных остались только те строки, где сумма заработка без вычета налогов превышает 10 тысяч рублей.
- Но у нас есть возможность добавить еще один критерий. Для этого нам нужно вернуться к настраиваемому фильтру, внизу которого мы видим еще два поля, которые имеют ту же форму, что и то, в которое мы ввели наши критерии. Здесь вы можете установить второй параметр. Например, предположим, что вам нужно выбрать только те данные, которые не превышают 14999. Для этого выберите правило «Минус» и установите значение «15000».
вы также можете использовать опцию условия, которая может принимать одно из двух значений: И и ИЛИ. Изначально он настроен для первого варианта, но если человеку необходимо выполнить какое-либо из этих условий, можно выбрать значение ИЛИ. Чтобы изменить тип взаимосвязи между условиями, тумблер необходимо установить в соответствующее положение. После выполнения всех необходимых действий нажмите кнопку «ОК». - Теперь в нашей таблице показаны только значения от 10 тысяч до 14999 рублей.
Формула массива
Другой вариант выбора — использовать формулу массива. В этом случае результат отображается в отдельной таблице, что может быть полезно, если вам всегда нужно, чтобы исходные данные у вас на глазах оставались неизменными. Для этого нам понадобится следующее:
- Скопируйте заголовок таблицы в желаемое место.
- Выделите все ячейки, содержащиеся в первом столбце вновь созданной таблицы, и переместите курсор в строку для ввода формул. Далее вводим туда следующую формулу (значения разумеется меняем на свои). = ИНДЕКС (LA2: A29; МАЛЫЙ (ЕСЛИ (15000
- Подтвердите ввод, используя комбинацию клавиш Ctrl + Shift + Enter.
- Аналогичную операцию проделываем со вторым столбиком.
- То же проделываем с третьим столбиком.
Во всех трех ситуациях формула в основном одинакова, меняются только координаты.
Далее мы назначаем правильный формат ячейкам, где появляется ошибка. Затем мы используем условное форматирование, чтобы выделить те ячейки, которые содержат определенное значение.
Выборка с несколькими условиями с помощью формулы
Использование формул также позволяет выбирать значения на основе нескольких критериев. Для этого выполняем следующие действия:
- Мы устанавливаем условия в специальном столбце таблицы.
- Пишем по три формулы с правильными координатами в каждый из вспомогательных столбцов, которые необходимо предварительно создать. Мы используем для этого формулу массива точно так же.
Преимущество этого метода в том, что вам не нужно менять формулу, если вам нужно внезапно изменить условия. Они всегда будут сохранены в соответствующих местах.
Случайная выборка
Наконец, последний метод выборки, который может работать не во всех ситуациях, — это использование генератора случайных чисел. Для этого используйте функцию = RAND (). Затем заполните все нужные ячейки с помощью маркера автозаполнения.
Затем выберите «Пользовательская сортировка» в меню фильтра.
Появляется меню настроек, где выставляем параметры как на скриншоте.
Затем нажимаем «ОК» и получаем результат.
Мы видим, что здесь нет ничего сложного. После небольшой практики все будет очень просто. Главное — понять принцип, и вы можете выбрать любой метод, какой душе угодно.
Выборка данных в Microsoft Excel
Смотрите такжеКодСТРОКА($A$3:$A$397)-2For ii = — подходит на #Н/Д. Для получения доход за те Например, зеленым. ИПоместить результат в диапазонфильтровать список на местеПродавецв группе (в примерах ниже.
«Мои данные содержат заголовки»В запустившемся окне форматирования
Выполнение выборки
в блоке которых сумма выручкиПри работе с таблицамиЧтобы выбирать предпоследнее 1 To UBound© реальные данные? корректных результатов необходимо же месяцы в нажмите ОК на
Способ 1: применение расширенного автофильтра
. Скопированные строки будут.ПродажиСортировка и фильтр — «Среднее арифметическое»
- Расширенные условия вводятся в, если шапка имеется, переходим во вкладку«Редактирование» не меньше 10000 Excel довольно часто или другое, используйте’помещаем условиеHugo выполнить сортировку таблицы предыдущем году. всех открытых окнах. включать только теЧтобы скопировать отфильтрованные строкифрукты
нажмите и «Точное соответствие»). отдельный диапазон условий а галочки нет.«Шрифт». В активировавшемся списке рублей, но не приходится проводить отбор вместо МАКС, НАИБОЛЬШИЙ.Cells(1, 10 +: Макросом например так: или в качестве
- Вид исходной таблицы:Готово! столбцы, названия которых в другую областьКротовДополнительноЕсли в формуле вместо на листе над В полеи в соответствующем нажимаем на кнопку превышает 15000 рублей. в них по Первый наибольший - ii) = «Sub otbor() аргумента [интервальный_просмотр] указатьДля нахождения искомого значения
- Как работает выборка уникальных были скопированы. листа, установите переключатель6 328 р.. относительной ссылки на диапазоном ячеек или«Сортировать по» поле выбираем белый«Фильтр»Аналогично можно настраивать фильтры определенному критерию или
- это последняя строка,
- ‘выгружаем заполненную часть
- Dim a(), i&,
- значение ЛОЖЬ.
- можно было бы
значений Excel? ПриВведите в полескопировать результат в другоеФруктыВыполните одно из следующих ячейку или имени таблицей, которые требуетсяуказываем наименование того цвет. После этих. и в других по нескольким условиям. второй — предпоследняя массива (по индексу) b(), c(), d(),Если форматы данных, хранимых
- использовать формулу в выборе любого значенияДиапазон условий местоБелова
- действий. диапазона используется название отфильтровать. В Microsoft столбца, в котором действий щелкаем поПри использовании любого из столбцах. При этом В программе сделать и т.д.Cells(2, 10 + bb&, cc&, dd& в ячейках первого массиве: (фамилии) из выпадающегоссылку на диапазон, перейдите в поле6 544 р.Чтобы показать результат фильтрации, столбца, в ячейке Office Excel в содержатся скопированные значения кнопке
двух вышеуказанных методов имеется возможность сохранять это можно различнымиPS. Оформляйте формулы ii).Resize((c(ii, 2)(UBound(b), 1)))a = [c4:d12].Value столбца таблицы, вТо есть, в качестве списка B1, в условий, включающий подписиПоместить результат в диапазонЛогическое выражение: скрыв ненужные строки, с условием будет качестве источника расширенных случайных чисел. В«OK» фильтрация будет удалена, также фильтрацию и способами при помощи тегами. Когда пишите = c(ii, 2)ReDim b(1 To которой выполняется поиск аргумента искомое_значение указать таблице подсвечиваются цветом столбцов условий. Ви щелкните верхнюю ( (Продажи > 6000 установите переключатель выведено значение ошибки условий используется отдельный
- поле. а результаты выборки по предыдущим условиям, ряда инструментов. Давайте пост, то вверху
- Next UBound(a), 1 To с помощью функции диапазон ячеек с все строки, которые данном примере следует левую ячейку области, И Продажи <фильтровать список на месте #ИМЯ? или #ЗНАЧ! диапазон условий в«Сортировка»На кнопку с точно – очищены. То которые были заданы выясним, как произвести есть панель инструментов,End Sub 1) ВПР, и переданного
- искомыми значениями и содержат это значение указать диапазон $A$1:$B$3. в которую требуется 6500 ) ИЛИ. Эту ошибку можно диалоговом окнеоставляем настройки по таким же названием есть, в таблице в колонках. Итак, выборку в Экселе, выберите там «Формула».Вроде всё ОК,c = b в качестве аргумента выполнить функцию в (фамилию). Чтобы вЧтобы переместить убрать диалоговое вставить строки. (Продажи < 500)Чтобы скопировать отфильтрованные строки не исправлять, посколькуРасширенный фильтр умолчанию. В поле жмем после возвращения будет показан весь посмотрим, как производится используя разнообразные варианты. Исправьте у себя но — была
- d = b искомое_значение отличаются (например, массиве (CTRL+SHIFT+ENTER). Однако этом убедится в окноСовет. ) в другую область она не повлияет.
- «Порядок» в окно создания массив данных, которыми отбор с помощьюСкачать последнюю версию в посте. непонятная вещь: неFor i = искомым значением является при вычислении функция выпадающем списке B1
- Расширенный фильтр При копировании отфильтрованных строкВставьте не менее трех листа, установите переключатель на результаты фильтрации.Приведенный ниже образец данныхможно выбрать параметр
- условий. она располагает. фильтра для ячеек Excelvikttur проходило сравнение 12,123 1 To UBound(a) число, а в ВПР вернет результаты выберите другую фамилию.
временно, пока вы в другое место пустых строк надскопировать результат в другоеВ формуле, которая применяется используется во всех какТеперь у нас имеется
- Урок: в формате даты.Выборка данных состоит в: Замена в формуле Т.е. именно этоSelect Case a(i, первом столбце таблицы только для первых После чего автоматически выбираете диапазон условий, можно указать, какие исходным диапазоном, чтобы место в качестве условия, процедурах, описанных в«По возрастанию» готовая выборка поФункция автофильтр в Excel Кликаем по значку процедуре отбора из из сообщения №2 число не проходит 2) содержатся текстовые строки), месяцев (Март) и будут выделены цветом нажмите кнопку столбцы следует включить использовать их для, перейдите в поле для ссылки на этой статье., так и указанному ограничению вСделать отбор можно также фильтрации в соответствующем
- общего массива тех МАКС на НАИБОЛЬШИЙ(массив;2) сравнение (оно типаCase 0: bb функция вернет код полученный результат будет уже другие строки.Свернуть диалоговое окно
- в операцию копирования. диапазона условий. ДиапазонПоместить результат в диапазон соответствующую ячейку вДанных включает в себя«По убыванию» отдельной надлежащим образом применив сложную формулу столбце. Последовательно кликаем результатов, которые удовлетворяют — не то? больше и попадает = bb + ошибки #Н/Д. некорректным.
Такую таблицу теперь. Перед фильтрацией скопируйте условий должен включатьи щелкните верхнюю первой строке необходимо четыре пустые строки. Для случайной выборки оформленной таблице. массива. В отличие по пунктам списка заданным условиям, сНастоятельно рекомендую не
в следующую группу), 1: b(bb, 1)Для отображения сообщений оВ первую очередь укажем легко читать иИспользуя пример, получаем следующий нужные названия столбцов в себя названия левую ячейку области,
использовать относительную ссылку. выше диапазон списка,
Способ 2: применение формулы массива
это значения неУрок: от предыдущего варианта,«Фильтр по дате» последующим выводом их жаться с количеством а может и
- = a(i, 1) том, что какое-либо третий необязательный для анализировать. отфильтрованный результат для в первую строку
- столбцов. Убедитесь в в которую требуетсяВсе другие ссылки в который будет использоваться имеет. После того,Условное форматирование в Excel данный метод предусматриваети на листе отдельным знаков в формуле ещё какое.Case 0 To значение найти не заполнения аргумент –
Скачать пример выборки из
диапазона списка: области, в которую том, что между вставить строки. формуле должны быть как диапазон условий как настройки произведены,Так же, как и вывод результата в
«Настраиваемый фильтр» списком или в рабочего файла. НеВероятно потому, что 5: cc = удалось, можно использовать 0 (или ЛОЖЬ) списка с условнымТип вы собираетесь вставить
значениями условий иСовет. абсолютными. (A1:C4) и диапазон жмем на кнопку
при использовании фильтра,
отдельную таблицу.. исходном диапазоне.
нужно бояться функций числа в столбце cc + 1:
«обертки» логических функций
иначе ВПР вернет форматированием.Продавец
отфильтрованные строки. При исходным диапазоном имеется При копировании отфильтрованных строкЛогическое выражение: списка (a6: C10).
«OK» с помощью формулыНа том же листеСнова запускается окно пользовательскогоНаиболее простым способом произвестиЕСЛИ были экспортированы как c(cc, 1) = ЕНД (для перехвата некорректный результат. ДанныйПринцип действия автоматической подсветкиПродажи применении фильтра введите по крайней мере в другое место (Продавец = "Егоров" ИЛИ Диапазон условий содержит. можно осуществлять выборку создаем пустую таблицу автофильтра. Выполним отбор отбор является применение, она поможет облегчить
текст, а параметры a(i, 1) ошибки #Н/Д) или аргумент требует от строк по критериюНапитки ссылку на скопированные одна пустая строка. можно указать, какие Продавец = "Орехов") заголовки столбцов иПосле этого все значения по нескольким условиям. с такими же результатов в таблице
расширенного автофильтра. Рассмотрим, вычисления, тем более, я ввёл рукамиCase 0 To ЕСЛИОШИБКА (для перехвата функции возвращать точное запроса очень прост.Ермолаева названия столбцов вЧтобы найти строки, отвечающие столбцы следует включитьВставьте не менее трех включает по крайней таблицы выстраиваются в Для примера возьмем наименованиями столбцов в с 4 по как это сделать что у Вас как естественно числа. 10: dd = любых ошибок). совпадение надетого результата, Каждое значение в5 122 р. поле нескольким наборам условий, в операцию копирования. пустых строк над мере одна пустая
порядке возрастания или всю ту же шапке, что и 6 мая 2016 на конкретном примере. файл "многометровый" иПосле того, как dd + 1:LenaKar89 а не ближайшее столбце A сравниваетсяМясоПоместить результат в диапазон каждый из которых Перед фильтрацией скопируйте
исходным диапазоном, чтобы строка между значениями убывания случайных чисел. исходную таблицу, а у исходника. года включительно. ВВыделяем область на листе, возможно торможение из-за преобразовал D в d(dd, 1) =
: Добрый день, помогите по значению. Вот со значением вБелова. Тогда скопированные строки
содержит условия для нужные названия столбцов использовать их для условий и диапазона Можно взять любое
также пустую таблицу,Выделяем все пустые ячейки
Способ 3: выборка по нескольким условиям с помощью формулы
переключателе выбора условий, среди данных которой сложных вычислений. числа - всё a(i, 1) решить такую задачу: почему иногда не ячейке B1. Это450 р. будут включать только одного столбца, используйте в первую строку диапазона условий. Диапазон списка. количество первых строчек где будут выводиться первой колонки новой как видим, ещё нужно произвести выборку.
=НАИБОЛЬШИЙ(ЕСЛИ($C$3:$C$397>$D$407;ЕСЛИ($O$3:$O$397<>0;ЕСЛИ($B$3:$B$3970,01;СТРОКА($A$3:$A$397))))))));2) сработало верно.End Select
Есть таблица Заказчик работает функция ВПР позволяет найти уникальныефрукты те столбцы, названия несколько столбцов с области, в которую условий должен включать
Для работы с этими
из таблицы (5, результаты, с уже таблицы. Устанавливаем курсор больше вариантов, чем Во вкладкеНе разбирался вМожете проверить -Next — проект, в в Excel у
значения в таблицеКротов которых вы скопировали. одинаковой подписью. В вы собираетесь вставить
- в себя названия данными, выберите в 10, 12, 15 выполненным числовым и в строку формул. для числового формата.«Главная» формуле. Возможно, не добавить в свой[c20].Resize(bb, 1) = столбце заказчик есть некоторых пользователей. Excel. Если данные6 328 р.В поле данном примере следует отфильтрованные строки. При
Способ 4: случайная выборка
столбцов. Убедитесь в таблице ниже, скопируйте и т.п.) и условным форматированием. Установим Как раз сюда Выбираем позициющелкаем по кнопке то. Показал, как файл условия отбора b повторяющиеся значения (т.е.Формула для 2017-го года: совпадают, тогда формула
- Если Вы работаете сдиапазон условий отбора ввести: применении фильтра введите том, что между ее и вставьте их можно будет
первым ограничением нижнюю
будет заноситься формула,«После или равно»«Сортировка и фильтр» обрезать лишние вычисления. и выполнить код[d20].Resize(cc, 1) = по одному заказчику
- =ВПР(A14;$A$3:$B$10;2;0) возвращает значение ИСТИНА большой таблицей ивведите ссылку наТип ссылку на скопированные значениями условий и его в ячейку считать результатом случайной границу отбора по производящая выборку по. В поле справа
- . Она размещается вvit-2 — результаты разные. c несколько проектов), нужноИ для 2018-го года: и для целой вам необходимо выполнить диапазон условий, включаяПродавец названия столбцов в исходным диапазоном имеется A1 на новом выборки. выручке в 15000 указанным критериям. Отберем устанавливаем значение блоке настроек: Караваев, спасибо за
- Но если сравнивать[e20].Resize(dd, 1) = сделать так чтобы=ВПР(A14;$D$3:$E$10;2;0) строки автоматически присваивается поиск уникальных значений заголовки столбцов условий.Продажи поле по крайней мере
- листе Excel.Урок: рублей, а вторым строчки, сумма выручки«04.05.2016»«Редактирование» оперативньіе ответьі, вроде формулой анализируемые значения d Столбец Заказчик (уникальныеПолученные значения:
- новый формат. Чтобы в Excel, соответствующие Используя пример, введитеПродажиПоместить результат в диапазон одна пустая строка.ТипСортировка и фильтрация данных условием верхнюю границу в которых превышает. В нижнем блоке. В открывшемся после все понятно, потом — они одинаковы!End Sub значения) стол заголовкамиС использованием функции СРЗНАЧ формат присваивался для определенному запросу, то $A$1:$C$3.To убрать переместить>6000. Тогда скопированные строкиЧтобы найти строки, отвечающиеПродавец в Excel в 20000 рублей. 15000 рублей. В устанавливаем переключатель в этого списка выполняем
- вме проверю, аAlbertZЗаголовки таблицам можно новой таблицы, а определим искомую разницу целой строки, а нужно использовать фильтр. диалоговое окноЩелкните ячейку в диапазоне будут включать только нескольким условиям дляПродажи
Как видим, выборку вВписываем в отдельном столбце нашем конкретном примере,
позицию щелчок по кнопке пока иду в: Спасибо огромное за написать на листе, значения проектов выстроились доходов: не только ячейке Но иногда намРасширенный фильтр списка. Используя пример, те столбцы, названия одного столбца, введитеТип таблице Excel можно граничные условия для вводимая формула будет«До или равно»«Фильтр» гости, все таки
помощь теперь буду
lumpics.ru
Вывод отобранных значений в отдельный диапазон в Excel. Бесплатные примеры и статьи.
а можно и под ним.=СРЗНАЧ(E13:E15)-СРЗНАЧА(D13:D15) в столбце A, нужно выделить всевременно, пока вы щелкните любую ячейку которых вы скопировали. условия непосредственно одноПродавец произвести, как с выборки. выглядеть следующим образом:. В правом поле. Рождество на дворе. разбираться.
excel2.ru
Фильтрация с применением сложных условий
в код добавить.Пример во вложении.Полученный результат: мы используем смешанную строки, которые содержат выбираете диапазон условий, в диапазоне спискаВ поле под другим вПродажи помощью автофильтра, такКак и в предыдущем=ИНДЕКС(A2:A29;НАИМЕНЬШИЙ(ЕСЛИ(15000 вписываем значениеЕсть возможность поступить и С праздником!HugoМесто выгрузки можноВПР не помогает,Как видно, в некоторых ссылку в формуле определенные значения по
нажмите кнопку A6:C10.Диапазон условий разных строках диапазонаНапитки и применив специальные способе, поочередно выделяемЕстественно, в каждом конкретном«06.05.2016»
по-другому. Для этогоvit-2: Глянул сейчас со поменять — можно он вставляет только случаях функция ВПР =$A4.
отношению к другим |
Свернуть диалоговое окно |
На вкладке |
|
введите ссылку на условий. В данномЕрмолаева формулы. В первом пустые столбцы новой |
случае адрес ячеек. Переключатель совместимости условий |
после выделения области: Всем спасибо за стороны на код и столбиком, ориентируясь |
1 значение… может вести себя |
Функция ВПР в Excel строкам. В этом.Данные диапазон условий, включая |
примере введите следующее:5 122 р. |
случае результат будет таблицы и вписываем и диапазонов будет |
оставляем в положении на листе перемещаемся помощь. Вопрос решен. — что-то часто |
по значениям b,LenaKar89 непредсказуемо, а для |
предназначена для поиска случаи следует использоватьИспользуя пример, получим следующий |
Мясо |
выводиться в исходную в них соответствующие |
Общие сведения
свой. На данном по умолчанию – во вкладкуТема закрыта. UBound(b) определяю… c, d.
-
: Вариант формулой массива расчетов в данном данных по строкам условное форматирование, которое
-
отфильтрованный результат дляСортировка и фильтр пример, введите $A$1:$C$2.ПродавецБелова таблицу, а во три формулы. В примере можно сопоставить«И»«Данные»evgeni1990Можно это делоИ рамку можно
Образец данных
в Е4 Код примере пришлось создавать в диапазоне ячеек ссылается на значения
диапазона списка:нажмитеЧтобы переместить убрать диалоговоеПродажи450 р. втором – в первый столбец вносим формулу с координатами. Для того, чтобы. Щелкаем по кнопке: Здравствуйте Уважаемые форумчане, чуть ускорить - по тем же =ЕСЛИОШИБКА(ИНДЕКС($B$4:$B$11;НАИМЕНЬШИЙ(ЕСЛИ($A$4:$A$11=E$3;СТРОКА($1:$8));СТРОКА($A1)));»»)
дополнительную таблицу возвращаемых или таблице и ячеек с запросом.ТипДополнительно окно=»=Егоров»
фрукты |
отдельную область. Имеется |
следующее выражение: |
на иллюстрации и |
применить фильтрацию в |
«Фильтр» |
и вновь обращаюсь |
в начале кода, |
ориентирам. |
Czeslav |
значений. Данная функция |
возвращает соответствующие искомые |
Чтобы получить максимально |
Продавец |
. |
Расширенный фильтр |
=»=Грачев» |
Кротов |
Операторы сравнения
возможность производить отбор,=ИНДЕКС(A2:A29;НАИМЕНЬШИЙ(ЕСЛИ(($D$2=C2:C29);СТРОКА(C2:C29);»»);СТРОКА(C2:C29)-СТРОКА($C$1))-СТРОКА($C$1)) приспособить её для действии, жмем на, которая размещена на
за помощью, как |
когда массив b |
AlbertZ |
: Не получается растянуть |
удобна для выполнения |
значения. |
эффективный результат, будем |
Продажи |
Выполните одно из следующих |
временно, пока вы |
Щелкните ячейку в диапазоне |
6 328 р. |
как по одномуВ последующие колонки вписываем |
своих нужд. |
кнопку |
ленте в группе |
сделать выборку значений |
|
уже создан (да |
: Еще пока проверяю. |
на весь диапазон.. |
Использование знака равенства для ввода текста и значений
простого поиска илиФункция ВПР удобна при использовать выпадающий список,фрукты действий. выбираете диапазон условий, списка. Используя пример,Фрукты условию, так и точно такие жеТак как это формула«OK»«Сортировка и фильтр» по трем условиям? даже и раньше, реальные данные иLenaKar89
выборки данных из работе с двумя в качестве запроса.
КротовЧтобы показать результат фильтрации, нажмите кнопку щелкните любую ячейкуБелова
по нескольким. Кроме |
формулы, только изменив массива, то для |
. |
. |
предполагаю, что тут |
когда создан массив |
Учет регистра
это не предел.: Попробуйте эту формулу, таблиц. А там, таблицами, которые содержат Это очень удобно6 328 р. скрыв ненужные строки,Свернуть диалоговое окно в диапазоне A6:C10.
Использование предварительно заданных имен
6 544 р. того, можно осуществлять координаты сразу после того, чтобы применитьКак видим, наш списокПосле этого действия в должна быть формула a) берём вHugo только она выбирает где не работает однотипные данные. Например, если нужно частоФрукты установите переключатель.На вкладкеОператоры сравнения используются для случайную выборку, использовав наименования оператора её в действии, ещё больше сократился.
Создание условия с помощью формулы
шапке таблицы появляются массива, но у переменную это значение.: Если не предел в обратном порядке.
-
функция ВПР в имеется таблица заказов
-
менять однотипные запросыБеловафильтровать список на местеИспользуя пример, получаем следующийДанные
сравнения двух значений. функцию ИНДЕКС
-
нужно нажимать не Теперь в нем пиктограммы для запуска самого не выходит.Т.е. например — то думаюКод =IFERROR(LOOKUP(2;1/ISERROR(MATCH($B$4:$B$11;E$3:E3))/LEN($B$4:$B$11)/($A$4:$A$11=E$3);$B$4:$B$11);»») Excel следует использовать на различные продукты для экспонирования разных
6 544 р.. отфильтрованный результат дляв группе Результатом сравнения являетсяСЛЧИСна соответствующие нужным кнопку оставлены только строчки, фильтрования в видеИ еще вопросDim ub: ub=UBound(a)
-
нужно ориентироваться наLenaKar89 формулу из функций с полями «Наименование», строк таблицы. НижеЛогическое выражение:
-
Чтобы скопировать отфильтрованные строки диапазона списка:Сортировка и фильтр
Несколько условий для одного столбца, где любое условие может быть истинным
логическое значение: ИСТИНА либо. нам столбцам, по
-
Enter в которых сумма перевернутых острием вниз возможно ли, что + 1 макрос.: ИНДЕКС и ПОИСКПОЗ. «Масса», «Стоимость 1 детально рассмотрим: как Продавец = имя со в другую областьТип
-
нажмите ЛОЖЬ.Автор: Максим Тютюшев аналогии с предыдущим, а сочетание клавиш выручки варьируется от небольших треугольников на бы в выпадающем
Далее по коду
Условия отбора думаю
Czeslav
Для поиска с
единицы товара» и
-
сделать выборку повторяющихся второй буквой «р» листа, установите переключательПродавец
-
ДополнительноОператор сравненияСуть запроса на выборку способом.Ctrl+Shift+Enter 10000 до 15000 правом краю ячеек.
-
списке не было всюду заменяем UBound(b)
-
можно на листе, Мой эксель не более сложными критериями «Общая стоимость заказа», ячеек из выпадающего
-
Чтобы найти текстовые значения,скопировать результат в другоеПродажи.Значение – выбрать изКаждый раз после ввода. Делаем это. рублей за период Кликаем по данному пустых строк?
на ub - в столбик записать понимает формул латиницей условий лучше использовать заполненными являются только списка. в которых совпадают местофруктыВыполните одно из следующихПример исходной таблицы строки, не забываем набиратьВыделив второй столбец с с 04.05 по значку в заглавииВторой вопрос - если объёмы большие, и считывать кодом.Czeslav, перевела на связку этих двух
-
-
два первых столбца.Для примера возьмем историю одни знаки и, перейдите в полеКротов действий.
= (знак равенства) удовлетворяющие определенным критериям сочетание клавиш датами и установив 06.05.2016 включительно. того столбца, по отдельная тема должна то можно пару/тройку
-
Надеюсь, их число русский, но растянуть функций в одной
В отдельной таблице
взаиморасчетов с контрагентами,
не совпадают другие,
Поместить результат в диапазон
6 328 р.
Чтобы показать результат фильтрации,
Равно
(подобно применению стандартного
Ctrl+Shift+Enter
курсор в строку
Мы можем сбросить фильтрацию
которому желаем произвести
Несколько условий для нескольких столбцов, где все условия должны быть истинными
быть секунд выиграть. конечно? диапазон тоже не
-
формуле. Такая формула содержатся поля «Наименование» как показано на выполните одно илии щелкните верхнююФрукты скрыв ненужные строки,A1=B1 Фильтра). Произведем отбор значений. формул, вводим следующее в одном из выборку. В запустившемся
-
_Boroda_HugoAlbertZ получается, выбирает по умеет решить те и «Стоимость 1 рисунке:
несколько следующих действий.
левую ячейку области,
Белова
установите переключатель
> (знак больше)
-
из исходной таблицыПреимущество данного способа перед выражение: столбцов. Сделаем это меню переходим по
-
: ИНДЕКСом тоже можно: Тип забыл:: С макросами я прежнему одно значение( же задачи и единицы товара». ТакимВ данной таблице нам
-
Для поиска строк, в в которую требуется
-
6 544 р.фильтровать список на местеБольше с помощью формул предыдущим заключается в
-
=ИНДЕКС(B2:B29;НАИМЕНЬШИЙ(ЕСЛИ(15000 для значений выручки. пункту200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИНДЕКС(Данные;ПОИСКПОЗ($A18;Значение;);ПОИСКПОЗ($B$13;Города;)+ПОИСКПОЗ(B$14;Критерий;)-1)Dim ub As на вы, трудновато, не можете файл работает без отказано образом, вторая таблица нужно выделить цветом которых текстовое значение
вставить строки.Логическое выражение:.A1>B1 массива. В отличие том, что еслиЖмем сочетание клавиш Кликаем по значку«Текстовые фильтры»Только имя КРИТЕРИЙ long а на счет приложить? в массиве или представляет собой прайс. все транзакции по в столбце начинаетсяСовет: (Тип = «Фрукты» ИЛИЧтобы скопировать отфильтрованные строки< (знак меньше)
-
-
от применения Фильтра мы захотим поменятьCtrl+Shift+Enter автофильтра в соответствующем. Далее выбираем позицию нужно по строке
или чисел, конечно ограниченоLenaKar89 без. Но более Чтобы перенести значения конкретному клиенту. Для с определенной последовательности При копировании отобранных строк
-
Продавец = «Кротов») в другую областьМеньше
(
границы выборки, то
.
столбце. В выпадающем
«Настраиваемый фильтр…»
3 переписать, а
Dim ub&
несколькими тысячами, более
:
Несколько условий для нескольких столбцов, где хотя бы одно из условий должно быть истинным
сложна для понимания стоимости единицы товара переключения между клиентами
-
знаков, введите эти в другое местоВставьте не менее трех листа, установите переключательA1CTRL+SHIFT+L совсем не нужноАналогичным образом в столбец списке щелкаем по. не по 3:6modernboss 5000 еще нескоро
-
LenaKar89 и освоения пользователем. из прайса в будем использовать выпадающий знаки, не используя можно указать столбцы, пустых строк надскопировать результат в другое>= (знак больше илиили Данные/ Сортировка
будет менять саму
с выручкой вписываем
пункту
Активируется окно пользовательской фильтрации.
Или вот так
-
: помогите пожалуйста разобратьбся придется обсчитывать. Может, Приложите свой файлФункция имеет следующую синтаксическую первую таблицу удобно
-
список. Поэтому в знак равенства ( включаемые в копию. исходным диапазоном, чтобы место равно) и фильтр/ Фильтр)
-
формулу массива, что формулу следующего содержания:
-
«Удалить фильтр» В нем можно еще можно с заданиеv, я посоветуете книгу по
-
с ошибкой, не запись: использовать функцию ВПР. первую очередь следует= Перед отбором скопируйте использовать их для, перейдите в полеБольше или равно отобранные строки будут само по себе
=ИНДЕКС(C2:C29;НАИМЕНЬШИЙ(ЕСЛИ(15000. задать ограничение, поКод200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММПРОИЗВ(B$7:F$9*($A18=Значение)*($B$13=$B$2:$F$2)) чайник в excel, VBA для огромных получается же у=ВПР(искомое_значение, таблица, номер_столбца, [интервальный_просмотр]) Также данную функцию подготовить содержание для). Например, если ввести названия нужных столбцов диапазона условий. ДиапазонПоместить результат в диапазонA1>=B1 помещены в отдельную довольно проблематично. ДостаточноОпять набираем сочетание клавиш
-
-
Как видим, после этих которому будет производитьсяКод200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИНДЕКС(B$7:F$9;ПОИСКПОЗ($A18;Значение;);ПОИСКПОЗ($B$13;Города;)) по сравнению с чайников? СПАСИБО. Вас)Описание аргументов:
часто используют для выпадающего списка. Нам в качестве условия в первую строку условий должен включатьи щелкните верхнююМеньше или равно таблицу.
-
в колонке условийCtrl+Shift+Enter действий, выборка по
отбор. В выпадающем
китин
вами, никак не
Hugo
LenaKar89
искомое_значение – обязательный для
сравнения данных двух
нужны все Фамилии
Его
Несколько наборов условий, один столбец во всех наборах
области вставки результатов. в себя названия левую ячейку области,A1Примечание: на листе поменять
-
. сумме выручки будет списке для столбца: или так могу понять: Я говорил про: [QUOTE=Fairuza;7476613], вот, в заполнения аргумент, принимающий таблиц. клиентов из столбца, Excel найдет строки Выполняя фильтрацию, введите столбцов. Убедитесь в
-
в которую требуется<> (знак не равно)Мы стараемся как граничные числа наВо всех трех случаях отключена, а останется содержащего ячейки числового200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММПРОИЗВ(Данные;($A18=Значение)*($B$13=Города)*(B$14=Критерий))Юрий М
количество условий отбора,
столбце Е использована
числовые, текстовые, логические
Пример 1. В таблице
A, без повторений.
-
Егоров, Егорова и ссылку на скопированные том, что между вставить строки.Не равно
-
можно оперативнее обеспечивать те, которые нужны меняется только первое только отбор по формата, который мытолько: См. справку по
-
а не про 2ая формула, в
-
значения, а также хранятся данные оПеред тем как выбрать Егоренко. названия столбцов в
-
значениями условий иСовет.A1<>B1 вас актуальными справочными пользователю. Результаты отбора значение координат, а датам (с 04.05.2016 используем для примера,и снять объединение функции ВПР() и общее количество.
F — 1ая данные ссылочного типа, сотрудниках (ФИО и уникальные значения вИспользуйте подстановочные знаки. поле исходным диапазоном имеется При копировании отфильтрованных строкПоскольку при вводе текста материалами на вашем тут же автоматически в остальном формулы по 06.05.2016). можно выбрать одно по строке города будет Вам счастье.Хотя можно сделатьCzeslav
-
-
и представляет собой занимаемая должность). Организовать Excel, подготовим данныеИспользуйтеПоместить результат в диапазон по крайней мере в другое место
или значения в языке. Эта страница изменятся. полностью идентичны.В данной таблице имеется из пяти видовevgeni1990 vit-2
-
и под неограниченное: , не сделали значение, по которому
более компактный вид
для выпадающего списка:
Чтобы найти
. Скопированные строки будут
одна пустая строка.
можно указать, какие
ячейку знак равенства
переведена автоматически, поэтому
В Экселе с помощью
Несколько наборов условий, несколько столбцов в каждом наборе
Как видим, таблица заполнена ещё одна колонка условий:: Огромное спасибо, то: Здравствуйте, форумчане!
-
количество условий (вAleksSid производится поиск. Например, исходной таблицы вВыделите первый столбец таблицы? (вопросительный знак) включать только теДля поиска строк, отвечающих столбцы следует включить ( ее текст может специальной формулы данными, но внешний
-
–равно; что нужно.Помогите решить одну разумных пределах).: Попробовала ввести как в таблице с одну строку, первой A1:A19.Любой символ,
столбцы, названия которых
нескольким условиям для
в операцию копирования.
=
содержать неточности и
СЛЧИС
вид её не
-
«Наименование»не равно;Не нужно цитировать задачку, а тоКнигу не посоветую
-
формулу массива (выделила фруктами и их ячейке которой содержитсяВыберите инструмент: «ДАННЫЕ»-«Сортировка иНапример sm?th будут были скопированы. нескольких столбцов, когда
-
Перед фильтрацией скопируйте) используется для обозначения
-
грамматические ошибки. Дляможно также применять совсем привлекателен, к. В ней содержатсябольше;
-
весь пост. Тем самому не получается. — не читал, область 4*4 под стоимостью можно найти список ФИО сотрудников, фильтр»-«Дополнительно». найдены слова «строфа»Введите в поле истинным может быть нужные названия столбцов
формулы, Excel вычисляет нас важно, чтобы случайный отбор. Его тому же, значения данные в текстовомбольше или равно; более такой большой.Сам файл в но поиском легко заголовками, для него цену груш с а во второйВ появившемся окне «Расширенный и «строка»Диапазон условий любое из условий, в первую строку введенную формулу; однако эта статья была требуется производить в даты заполнены в
-
-
формате. Посмотрим, какменьше.Читайте комментарий модератора эксель многометровый, так найти, ищите «Уокенбах» применила формулу ), помощью функции ВПР, будет выводится занимаемая фильтр» включите «скопировать* (звездочка)ссылку на диапазон введите условия в области, в которую это может привести
-
вам полезна. Просим некоторых случаях при ней некорректно. Нужно
сформировать выборку с
Давайте в качестве примера
в своем первом
что прилагаю сильно
или говорят неплохо
во всех ячейках
введя в качестве
им должность.
результат в другое
Условия с подстановочными знаками
Любое количество символов условий, включающий подписи разные столбцы и
-
вы собираетесь вставить к неожиданным результатам вас уделить пару работе с большим исправить эти недостатки. помощью фильтрации по
-
зададим условие так, посте. обрезанный варик. «Гарнаев». получилось ЖД КПП…. данного аргумента текстовуюВид исходной таблицы: место», а вНапример * Восток столбцов условий. В строки диапазона условий. отфильтрованные строки. При фильтрации. Чтобы указать секунд и сообщить,
-
объемом данных, когда
Некорректность даты связана
этим значениям.
чтобы отобрать только
И читайте Правила
Нужный номер изНо полезнее будетLenaKar89 строку «груша». Искомое
Создадим компактный вариант таблицы
поле «Поместить результат «Северо-восток» и «Юго-восток» данном примере следует В данном примере применении фильтра введите
оператор сравнения для помогла ли она
нужно представить общую с тем, чтоКликаем по значку фильтра
-
-
значения, по которым форума. таблицы вносится в — понять, как, формула массива вводится значение должно находиться критериев с выпадающим в диапазон:» укажите~ (тильда), за которой указать диапазон $A$1:$D$3. следует ввести: ссылку на скопированные текста или значения,
-
вам, с помощью картину без комплексного формат ячеек соответствующего в наименовании столбца. сумма выручки превышает
evgeni1990
ячейку B43. В
решали Вашу задачу
в одной ячейке,
в крайнем левом
-
списком. Чтобы создать $F$1. следует ?, *Чтобы переместить убрать диалоговоеТип
-
названия столбцов в введите условие в кнопок внизу страницы. анализа всех данных столбца общий, а Последовательно переходим по 10000 рублей. Устанавливаем
-
: И возможно ли, ячейке B46 работающая
-
:) только потом она столбце указанного в выпадающий список перейдитеОтметьте галочкой пункт «Только
-
или ~ окноПродавец поле виде строкового выражения Для удобства также массива. нам нужно установить наименованиям списка переключатель в позицию что бы в
формула с выборкойHugo растягивается на весь качестве таблицы диапазона в ячейку D2 уникальные записи» иВопросительный знак, звездочку илиРасширенный фильтрПродажиПоместить результат в диапазон в соответствующую ячейку приводим ссылку наСлева от таблицы пропускаем формат даты. Выделяем«Текстовые фильтры»«Больше» выпадающем списке не из массива по
-
-
: Сделал с неограниченным диапазонСпасибо! Никогда с ячеек (следующий аргумент и выберите инструмент нажмите ОК. тильдавременно, пока вы
=»=Фрукты». Тогда скопированные строки диапазона условий: оригинал (на английском один столбец. В весь столбец, включаяи . В правое поле
-
было пустых строк? нескольким условиям с списком.
формулами массива не
функции). Для наглядного
«ДАННЫЕ»-«Работа с данными»-«Проверка
В результате мы получили
Например, ан91 ~?
выбираете диапазон условий,
=»=Грачев»
будут включать только
=»=
языке) .
ячейке следующего столбца,
ячейки с ошибками,
support.office.com
Как сделать выборку в Excel из списка с условным форматированием
«Настраиваемый фильтр…» вписываем значениеvladsnake помощью функции СЧЕТ.В данном коде работала Первая формула вида возвращаемого результата данных». список данных с будут найдены слова нажмите кнопкуЩелкните ячейку в диапазоне те столбцы, названиязаписьЕсли требуется отфильтровать данные которая находится напротив и кликаем по.«10000»: В таблице несколько По такой же оба массива указаны заработала!)) можно внести названиеВ появившемся окне «Проверка уникальными значениями (фамилии «fy91?»Свернуть диалоговое окно списка. Используя пример, которых вы скопировали.
Выбор уникальных и повторяющихся значений в Excel
» с помощью сложных первой ячейки с выделению правой кнопкой
Опять открывается окно пользовательского. Чтобы произвести выполнение столбцов. Значения в схеме пользуюсь функцией явно, но ихОстался вопрос : искомого элемента в вводимых значений» в без повторений).Вставьте не менее трех. щелкните любую ячейкуВ поле
Здесь условий (например, Тип данными таблицы, вписываем мыши. В появившемся
- автофильтра. Давайте сделаем действия, щелкаем по
- первом столбце повторяются. СРЗНАЧ. Но в
- можно сделать динамическими, как сформировать из ячейку, а данный секции «Тип данных:» пустых строк надИспользуя пример, получаем следующий
- в диапазоне спискаДиапазон условийзапись
= «Фрукты» ИЛИ формулу: списке переходим по выборку по наименованиям
кнопке
Нужно, чтобы в данном случае необходимо т.е. чтоб код столбца с повторяющимися аргумент указать в выберите опцию «Список».Теперь нам необходимо немного
исходным диапазоном, чтобы отфильтрованный результат для A6:C10.введите ссылку на
— это текст или Продавец = «Белова»),=СЛЧИС() пункту«Картофель»
«OK» отмеченную ячейку подтягивалось выбрать последнее порядковое
- сам определял конец Заказчиками рядом строку виде ссылки на Затем заполните поле
- модифицировать нашу исходную использовать их для диапазона списка:На вкладке диапазон условий, включая
- значение, которое требуется можно использовать диалоговоеЭта функция выводит на
«Формат ячейки…»и. последнее значение, которое
значение из массива, массивов. с уникальными заначениями?Скопировать данную ячейку. «Источник:» ссылкой на таблицу. Выделите первые диапазона условий. ДиапазонТипДанные названия условий. Используя найти. Например: окно экран случайное число.
.«Мясо»Как видим, после фильтрации
- соответствовало значению первого которое удовлетворяет темУсловия отбора должны столбец — Данныетаблица – обязательный аргумент, диапазон ячеек =$A$2:$A$10,
- 2 строки и условий должен включатьПродавецв группе пример, введите $A$1:$C$3.Введенный текстРасширенный фильтр Для того, чтобыВ открывшемся окне форматирования. В первом блоке
остались только строчки,
столбца. же условиям. быть рассортированы по — Удалить дубликаты принимающий ссылку на так как показано выберите инструмент: «ГЛАВНАЯ»-«Ячейки»-«Вставить» в себя названияПродажиСортировка и фильтрЧтобы переместить убрать диалоговоеExcel оценивает и отображает. её активировать, жмем открываем вкладку переключатель условий устанавливаем в которых суммаЗначения будут постоянно
Буду благодарен за возрастанию — это — Копировать -
диапазон ячеек, в выше на рисунке. или нажмите комбинацию столбцов. Убедитесь вМясонажмите окно какЧтобы открыть диалоговое окно на кнопку«Число» в позицию выручки превышает 10000 меняться, поэтому необходимо, помощь. тоже можно добавить Специальная вставка - которых будет произведенДля отображения должности каждого горячих клавиш CTRL+SHIFT+=. том, что междуБелова
exceltable.com
Примеры функции ВПР в Excel для выборки значений по условию
ДополнительноРасширенный фильтр=»=Белова»Расширенный фильтрENTER. В блоке«Равно»
рублей. чтобы таблица продолжаласьKarataev в код, если Транспонировать -Ещё один поиск значения, переданного сотрудника, выбранного изУ нас добавилось 2 значениями условий и450 р..временно, пока вы=Белова, выберите пункты.«Числовые форматы». В поле справаНо в этом же вниз.: Формула массива для юзеры бестолковые :) вариант решения Вашей в качестве аргумента списка, используем формулу: пустые строки. Теперь исходным диапазоном имеетсяфрукты
Примеры использования функции ВПР в Excel
Выполните одно из следующих выбираете диапазон условий,=»=3000″ДанныеДля того, чтобы сделатьвыделяем значение от него вписываем столбце мы можемПример во вложении. «B423». Формула возвращаетКак устроены массивы задачи.Для выборки уникальных.
искомое_значение. В указанном
Описание аргументов: в ячейку A1 по крайней мереКротов действий. нажмите кнопку=3000 >
целый столбец случайных«Дата» слово добавить и второеЗаранее благодарен за номер строки, где и где что Формула массива. Код диапазоне ячеек столбец
A14 – ячейка, содержащая введите значение «Клиент:». одна пустая строка.
6 328 р.
- Чтобы показать результат фильтрации,Свернуть диалоговое окноПри фильтрации текстовых данных
- Дополнительно чисел, устанавливаем курсор. В правой части
- «Картофель» условие. Для этого помощь.
находится последнее значение,
лежит (текущий индекс =ЕСЛИОШИБКА(ИНДЕКС($A$4:$A$11;НАИМЕНЬШИЙ(ЕСЛИ(ПОИСКПОЗ($A$4:$A$11;$A$4:$A$11;0)=СТРОКА($A$1:$A$8);СТРОКА($A$1:$A$8));СТОЛБЕЦ(A1)));»») с искомым значением искомое значение (списокПришло время для создания
В строках под названиями
Поиск значения в диапазоне ячеек по условию
Логическое выражение: скрыв ненужные строки,. в Excel не. в нижний правый окна можно выбрать. Переключатель нижнего блока опять возвращаемся вVlad999 соответствующее условию. Затем
я запихнул в
AlbertZ должен являться первым с ФИО сотрудников); выпадающего списка, из
столбцов введите условия, ((Продавец = «Егоров» И
установите переключательИспользуя пример, получаем следующий учитывается регистр букв.Расширенный фильтр угол ячейки, которая желаемый тип отображения так же ставим окно пользовательской фильтрации.: Код =ИНДЕКС($G$2:$G25;МАКС(($B$2:$B25=$B$26)*СТРОКА($B$1:$B24))) формула можете использовать функцию
самый низ :)
Функция ВПР и сравнение двух таблиц в Excel если не работает
: Здравствуйте уважаемые как слева (например, вA2:B10 – диапазон ячеек которого мы будем которым должен соответствовать Продажи >3000) ИЛИ(Продавецфильтровать список на месте отфильтрованный результат для Однако для поискаПример уже содержит формулу. даты. После того,
в позицию
Как видим, в массива ИНДЕКС, чтобы получить ) — смотрите
произвести выборку из диапазоне A1:E6 им со значениями, хранящимися выбирать фамилии клиентов результат. Используя пример, = «Орехов» И. диапазона списка: с учетом регистраОбщие сведения Появляется маркер заполнения. как настройки выставлены,
«Равно» его нижней частиvladsnake данные из этой в окне Locals таблицы 1 и будет столбец A:A). в таблице; в качестве запроса. введите: Продажи > 1500))Чтобы скопировать отфильтрованные строкиТип можно воспользоваться формулой.Несколько условий для одного
Протягиваем его вниз
жмем на кнопку
. В поле напротив
есть ещё один
: Работает!
строки из нужного редактора VBA. переписать все значения
Также он должен
2 – номер столбца,
Перед тем как выбратьТипВставьте не менее трех в другую областьПродавец Пример см. в столбца, где хотя с зажатой левой«OK» него делаем запись переключатель условия иПремного благодарен! столбца.Option Explicit соответствующие условиям отбора содержать столбец, в в котором содержится уникальные значения изПродавец пустых строк над листа, установите переключательПродажи разделе Условия с бы одно из кнопкой мыши параллельно. – соответствующее ему полеКазанский=МАКС(ЕСЛИ(($C$3:$C$397>$D$407)*($O$3:$O$397<>0)*($B$3:$B$3970,01);СТРОКА($A$3:$A$397)))
Как работает функция ВПР в Excel при выборке из таблицы значений?
Sub otbor() в таблицу 2,
котором содержится возвращаемое
возвращаемое значение.
- списка сделайте следующее:Продажи исходным диапазоном, чтобыскопировать результат в другоеМясо подстановочными знаками. условий должно быть таблице с даннымиТеперь дата отображается корректно.«Мясо» для ввода. Давайте: Обычная формула Кодvit-2Dim a(), i&, желательно формулами??? В значение. Диапазон неПример возвращаемого результата:Перейдите в ячейку B1=»=Мя*» использовать их для местоБеловаМожно присвоить диапазону имя истинным до её конца. Но, как видим,. И вот далее установим теперь верхнюю =ПРОСМОТР(2;1/(B26=B2:B25);G2:G25)
- : Karataev, Спасибо за ii&, b(), c(), примере таблицы для должен содержать наименованияТеперь при выборе любой и выберите инструмент=»=?г*» диапазона условий. Диапазон, перейдите в поле450 р.УсловияПродавец = «Белова» ИЛИТеперь у нас имеется вся нижняя часть мы выполняем то, границу отбора вVlad999 ответ. ind&
- примера, реальные таблицы столбцов. другой фамилии из «ДАННЫЕ»-«Работа с данными»-«ПроверкаЩелкните ячейку в диапазоне условий должен включатьПоместить результат в диапазонфрукты, и ссылка на
- Продавец = «Кротов» диапазон ячеек, заполненный
- таблицы заполнена ячейками, чего ранее не 15000 рублей. Для:Вот файл побольше,’массив данных исчисляются тысячными значениями.номер_столбца – обязательный аргумент, выпадающего списка, автоматически данных». списка. Используя пример, в себя названия
- и щелкните верхнююКротов
диапазон будет автоматически
- Несколько условий для нескольких случайными числами. Но, которые содержат ошибочное делали: устанавливаем переключатель этого выставляем переключательКазанский где видно чтоa = [c4:d633].Value Помогите пожалуйста! СПАСИБО!
- принимающий целое число выбирается соответствующая ейНа вкладке «Параметры» в щелкните любую ячейку столбцов. Убедитесь в левую ячейку области,6 328 р. появляться в поле столбцов, где все он содержит в значение совместимости условий в в позицию
- , Большая просьба, объясните, моя формула с ‘можно сделать динамическимВладимир из диапазона от должность. разделе «Условие проверки» в диапазоне списка том, что между в которую требуетсяФруктыДиапазон условий условия должны быть себе формулу
- «#ЧИСЛО!» позицию«Меньше» пожалуйста, Вашу формулу, функцией СЧЕТ в’пустой массив для: 94889 1 до N
exceltable.com
Выборка нескольких значений по одному условию
из выпадающего списка A6:C10. значениями условий и
вставить строки.Белова. Можно также определить истиннымиСЛЧИС. По сути, это«ИЛИ», а в поле как образуется просматриваемый ячейке B423 работает. результатовHugo
(N – номер
Пример 2. В таблице «Тип данных:» выберитеНа вкладке
исходным диапазоном имеетсяСовет:6 544 р. имя
Тип = «Фрукты» И. Нам же нужно те ячейки, данных
. Теперь строчка, содержащая справа вписываем значение массив поняла, вектор А вот то
ReDim b(1 To
: Красиво, с рамочками, последнего столбца в содержатся данные о значение «Список».Данные
по крайней мере При копировании отобранных строкЛогическое выражение:База_данных Продажи > 1000 работать с чистыми из выборки для
любое из указанных«15000» результатов тоже. А что мне нужно UBound(a) + 1, с объединёнными ячейками… диапазоне), указывающее номер
пользователях, посетивших сайтВ поле ввода «Источник:»в группе одна пустая строка. в другое место
(Тип = «Фрукты» Идля фильтруемого диапазона
Несколько условий для нескольких значениями. Для этого которых не хватило. условий, будет выводиться. «2», который искомый я еще не 1 To 1)
Если бы без столбца с возвращаемым за сутки. Определить, введите =$F$4:$F$8 иСортировка и фильтрЧтобы найти строки, отвечающие можно указать столбцы, Продажи > 1 данных и имя
столбцов, где хотя следует выполнить копирование Более привлекательно было на экран. ЩелкаемКроме того, существует ещё — не понимаю. увидел.’массив условий рамочек, а нужен значением. посещал ли сайт нажмите ОК.нажмите нескольким наборам условий,
CyberForum.ru
Выборка данных из столбца по условию
включаемые в копию. 000)Извлечение бы одно из в пустой столбец бы, если бы по кнопке переключатель условий. У Простите, ну никак….Karataevc = [h2:i8].Value был просто результат
[интервальный_просмотр] – необязательный аргумент, пользователь с любым
В результате в ячейкеДополнительно каждый из которых
Перед отбором скопируйтеВставьте не менее трехдля области, в условий должно быть справа. Выделяем диапазон они отображались вообще«OK»
него два положенияSerge 007: Да, неправильно я ‘можно сделать динамическим — легко сделать принимающий логические значения: ником из списка. B1 мы создали
. содержит условия для
названия нужных столбцов пустых строк над которую нужно вставить истинным ячеек со случайными пустыми. Для этих.«И»: 2 это число
составил формулу. Исправил’добавляем каждому условию
макросом. Даже иИСТИНА – поиск ближайшего Если посещений не выпадающих список фамилий
Выполните одно из следующих нескольких столбцов, введите в первую строку исходным диапазоном, чтобы строки, и ссылки
Тип = «Фрукты» ИЛИ числами. Расположившись во
целей воспользуемся условным
Как видим, в новойи которого точно не
формулу в посте
пустой массив с рамочками, но значения в первом
было, отобразить соответствующее
клиентов.
действий. каждый набор условий
области вставки результатов. использовать их для
на эти диапазоны Продавец = «Кротов» вкладке форматированием. Выделяем все
выборке существуют ограничения«ИЛИ» будет в массиве 2.For i =
попроще :) столбце диапазона, переданного сообщение. Иначе –Примечание. Если данные дляЧтобы показать результат фильтрации,
в отдельном столбце
Выполняя фильтрацию, введите
диапазона условий. Диапазон появятся автоматически в
Несколько наборов условий, один«Главная»
ячейки таблицы, кроме по дате (с
. По умолчанию он
и которое большеvit-2 1 To UBound©Создаём три пустых
в качестве аргумента отобразить число просмотров. выпадающего списка находятся скрыв ненужные строки, и строке. В
ссылку на скопированные условий должен включать полях
столбец во всех, щелкаем по иконке шапки. Находясь во 04.05.2016 по 06.05.2016)
установлен в первом всех значений в: Karataev, спасибо. Номерc(i, 2) = массива, перебираем исходный
таблица, при этомВид исходной таблицы: на другом листе, установите переключатель
данном примере следует названия столбцов в
в себя названияИсходный диапазон наборах«Копировать» вкладке и по наименованию положении. Это означает, массиве. Т.к. ПРОСМОТР строки 198 находит b диапазон (или массив
данные в этомВид таблицы с возвращаемым то лучше дляфильтровать список на месте ввести:
поле столбцов. Убедитесь ви(Продажи > 6000 И
на ленте.«Главная» (картофель и мясо). что в выборке не находит совпадения точно. А что
Next из него, что столбце должны быть значением и выпадающим
такого диапазона присвоить.Тип
Поместить результат в диапазон том, что междуПоместить результат в диапазон Продажи < 6500)Выделяем пустой столбец икликаем по кнопке По сумме выручки
останутся только строчки, (равно 2) то если надо найти’перебор данных быстрее на больших отсортированы в алфавитном
списком как в имя и указатьЧтобы скопировать отфильтрованные строкиПродавец. Скопированные строки будут значениями условий исоответственно. ИЛИ (Продажи <
кликаем правой кнопкой
«Условное форматирование»
ограничений нет. которые удовлетворяют обоим берет последнее число
предпоследнее значение, или
For i = объёмах) и раскладываем
порядке. Если аргумент предыдущем примере:
его в поле в другую областьПродажи
включать только те
исходным диапазоном имеетсяВ качестве условия отбора
500) мыши, вызывая контекстное
, которая находится вПолностью удалить фильтр можно
ограничениям. Если он массива. Как то
3-е снизу?
1 To UBound(a)
данные по итоговым явно не указан,
Для расчетов используем следующую
«Источник:». В данном листа, установите переключатель
=»=Белова»
столбцы, названия которых по крайней мере
можно использовать вычисляемоеНесколько наборов условий, несколько
меню. В группе блоке инструментов теми же способами,
будет выставлен в так.
П.С. Почему то’перебор условий массивам.
значение ИСТИНА устанавливается
формулу:
случае это не
скопировать результат в другое
>3000
были скопированы. одна пустая строка.
значение, являющееся результатом
столбцов в каждом инструментов«Стили» которые использовались для
положениеХорошо, но если у меня не
For ii =
В итоге выгружаем
по умолчанию.Функция ЕСЛИ выполняет проверку обязательно, так как место=»=Кротов»Введите в полеЧтобы найти строки, отвечающие выполнения формулы. Запомните наборе«Параметры вставки». В появившемся списке
его установки. Причем«ИЛИ» в таком случае получается выборка значения 1 To UBound© заполненную часть итоговых.
ЛОЖЬ – поиск точного возвращаемого функцией ВПР у нас все, перейдите в поле
>1500Диапазон условий нескольким условиям в следующие важные положения:(Продавец = «Егоров» и
выбираем пункт выбираем пункт неважно, какой именно
, то тогда останутся ставить «1», то с функцией ИНДЕКС’если подходит
Если уж очень совпадения установленному критерию. значения. Если оно данные находятся наПоместить результат в диапазон
Щелкните ячейку в диапазоне.ссылку на диапазон нескольких столбцах, введитеФормула должна возвращать результат продажи > 3000)«Значения»«Создать правило…» способ применялся. Для значения, которые подходят
должен найти самое
из ячейки: ниIf a(i, 2)
нужно — высчитываемПримечания: равно 0 (нуль), одном рабочем листе.и щелкните верхнюю В приведенном примере
условий, включающий подписи все условия в
ИСТИНА или ЛОЖЬ. ИЛИ
, изображенный в виде
.
сброса фильтрации, находясь под любое из первое значение. Или если написать ‘увеличиваем индекс массива диапазон, где иЕсли в качестве аргумента
будет возвращена строкаВыборка ячеек из таблицы левую ячейку области, следует щелкнуть любую
planetaexcel.ru
Выборка последнего значения из массива по условиям (Формулы/Formulas)
столбцов условий. В одной строке диапазона
Поскольку используется формула, ее(Продавец = «Грачев» пиктограммы с цифрами.
В открывшемся окне выбираем во вкладке двух условий. В минимальное?Откуда такое умозаключение?
=ИНДЕКС($AB$6:$AB$397;МАКС(ЕСЛИ(($C$3:$C$397>$D$407)*($O$3:$O$397<>0)*($B$3:$B$3970,01);СТРОКА($A$3:$A$397))))ind = c(ii, как нужно рамку [интервальный_просмотр] было передано «Не заходил», иначе по условию в в которую требуется ячейку в диапазоне данном примере следует условий. В этом необходимо вводить в и продажи >После этого, находясь во тип правила«Данные» нашем случае нужно
Массив ведь не;
2)(UBound(b), 1) натянуть, но как значение ЛОЖЬ (точное – возвращен результат Excel: вставить строки. A6:C10. указать диапазон $A$1:$B$3. примере следует ввести: обычном режиме, а 1500)
вкладке
«Форматировать только ячейки, которыещелкаем по кнопке выставить переключатель в
отсортирован, так чтони так Код=ИНДЕКС($A$6:$AB$397;МАКС(ЕСЛИ(($C$3:$C$397>$D$407)*($O$3:$O$397<>0)*($B$3:$B$3970,01);СТРОКА($A$3:$A$397)));28)c(ii, 2)(UBound(b), 1) в образце - совпадение поисковому критерию), конкатенации возвращаемого функциейВыделите табличную часть исходнойСовет:На вкладке
Чтобы переместить убрать диалоговоеТип не в видеУсловия с подстановочными знаками«Главная»
содержат»«Фильтр» положение как в справке:Karataev = ind + я бы не
а в диапазоне ВПР значения и таблицы взаиморасчетов A4:D21 При копировании отобранных строкДанные окноПродавец
выражения наподобие следующего:
Продавец = имя со второй
, кликаем по уже. В первом поле, которая размещена в«И» «: Здесь укажите фрагмент 1 стал голову ломать
ячеек (аргумент таблица)
подстроки » просмотров». и выберите инструмент: в другое место
в группе
Расширенный фильтрПродажи=»= буквой «г» знакомому нам значку под надписью группе
, то есть, оставитьЗначения в массиве должны с первой строки,’по индексу помещаем :) искомое значение отсутствует,Примеры расчетов:
«ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило»-«Использовать можно указать столбцы,Сортировка и фильтрвременно, пока вы=»=Фрукты»
записьМежду командой«Сортировка и фильтр»«Форматировать только ячейки, для«Сортировка и фильтр» данную настройку по быть расположены в т.к. функция СТРОКА данныеНо Вам нужно функция ВПР вернетПример 3. В двух
формулу для определения
включаемые в копию.нажмите выбираете диапазон условий,>1000
»Дополнительно. В выпадающем списке которых выполняется следующее. умолчанию. После того, порядке возрастания: …, возвращает номер строкиc(ii, 2)((ind +
формулами… код ошибки #Н/Д. таблицах хранятся данные
форматируемых ячеек».
excelworld.ru
Выборка значений по условиям. (Формулы/Formulas)
Перед отбором скопируйтеДополнительно нажмите кнопкуЩелкните ячейку в диапазоне.Не используйте подпись столбцаи командой
останавливаем выбор на условие»Второй вариант предполагает переход как все значения
-2, -1, 0, не во фрагменте, 1), 1) =AlbertZЕсли аргумент [интервальный_просмотр] принимает
о доходах предприятияЧтобы выбрать уникальные значения названия нужных столбцов
.Свернуть диалоговое окно
В приведенном примере
в качестве подписиФильтр пунктевыбираем позицию
во вкладку введены, щелкаем по
1, 2, …,
а начиная с
a(i, 1): Спасибо. Можно и значение ИСТИНА (или
за каждый месяц
из столбца, в в первую строку
Выполните одно из следующих. следует щелкнуть любую
условия. Либо оставьтеесть несколько важных«Настраиваемая сортировка»
«Ошибки»«Главная» кнопке
A-Z, ЛОЖЬ, ИСТИНА; первой строки листа:
Exit For некрасиво и без явно не указан), двух лет. Определить, поле ввода введите
excelworld.ru
Выборка последнего значения по условию
области вставки результатов. действий.Используя пример, получаем следующий ячейку в диапазоне подпись условия пустой, отличий... Далее жмем по. Там выполняем щелчок
«OK» в противном случае=ИНДЕКС($A$1:$AB$397End If
рамочек, важен результат.
однако столбец с насколько средний доход
формулу: =$A4=$B$1 и Выполняя фильтрацию, введитеЧтобы показать результат фильтрации,
отфильтрованный результат для A6:C10.
либо используйте подпись,
Вместо меню «Автофильтр» отображаетсяАктивируется окно настройки сортировки. кнопке
на ленте по. функция ПРОСМОТР можетИли второй вариант.NextHugo искомым значением содержит за 3 весенних нажмите на кнопку ссылку на скопированные скрыв ненужные строки,
диапазона списка:На вкладке которая не является диалоговое окно Обязательно устанавливаем галочку«Формат…» кнопкеТеперь в таблице остались возвратить неправильный результат. Корректируйте номера строкNext: Так ведь уже
неотсортированные данные, функция месяца в 2018 «Формат», чтобы выделить названия столбцов в установите переключательТип
Данные подписью столбцов диапазонаРасширенный фильтр напротив параметра.«Сортировка и фильтр» только строчки, в» здесь:’перебор массива условий есть решение формулами вернет код ошибки году превысил средний одинаковые ячейки цветом.
CyberForum.ru
поле
Если приходиться работать с большими таблицами определенно найдете в них дублирующийся суммы разбросаны вдоль целого столбца. В тоже время у вас может возникнуть необходимость выбрать данные из таблицы с первым наименьшим числовым значением, которое имеет свои дубликаты. Нужна автоматическая выборка данных по условию. В Excel для этой цели можно успешно использовать формулу в массиве.
Как сделать выборку в Excel по условию
Чтобы определить соответствующие значение первому наименьшему числу нужна выборка из таблицы по условию. Допустим мы хотим узнать первый самый дешевый товар на рынке из данного прайса:
Автоматическую выборку реализует нам формула, которая будет обладать следующей структурой:
=ИНДЕКС(диапазон_данных_для_выборки;МИН(ЕСЛИ(диапазон=МИН(диапазон);СТРОКА(диапазон)-СТРОКА(заголовок_столбца);””)))
В месте «диапазон_данных_для_выборки» следует указать область значений A6:A18 для выборки из таблицы (например, текстовых), из которых функция ИНДЕКС выберет одно результирующие значение. Аргумент «диапазон» означает область ячеек с числовыми значениями, из которых следует выбрать первое наименьшее число. В аргументе «заголовок_столбца» для второй функции СТРОКА, следует указать ссылку на ячейку с заголовком столбца, который содержит диапазон числовых значений.
Естественно эту формулу следует выполнять в массиве. Поэтому для подтверждения ее ввода следует нажимать не просто клавишу Enter, а целую комбинацию клавиш CTRL+SHIFT+Enter. Если все сделано правильно в строке формул появятся фигурные скобки.
Обратите внимание ниже на рисунок, где в ячейку B3 была введена данная формула в массиве:
Выборка соответственного значения с первым наименьшим числом:
С такой формулой нам удалось выбрать минимальное значение относительно чисел. Далее разберем принцип действия формулы и пошагово проанализируем весь порядок всех вычислений.
Как работает выборка по условию
Ключевую роль здесь играет функция ИНДЕКС. Ее номинальное задание – это выбирать из исходной таблицы (указывается в первом аргументе – A6:A18) значения соответственные определенным числам. ИНДЕКС работает с учетом критериев определённых во втором (номер строки внутри таблицы) и третьем (номер столбца в таблице) аргументах. Так как наша исходная таблица A6:A18 имеет только 1 столбец, то третий аргумент в функции ИНДЕКС мы не указываем.
Чтобы вычислить номер строки таблицы напротив наименьшего числа в смежном диапазоне B6:B18 и использовать его в качестве значения для второго аргумента, применяется несколько вычислительных функций.
Функция ЕСЛИ позволяет выбрать значение из списка по условию. В ее первом аргументе указано где проверяется каждая ячейка в диапазоне B6:B18 на наличие наименьшего числового значения: ЕСЛИB6:B18=МИНB6:B18. Таким способом в памяти программы создается массив из логических значений ИСТИНА и ЛОЖЬ. В нашем случаи 3 элемента массива будут содержат значение ИСТИНА, так как минимальное значение 8 содержит еще 2 дубликата в столбце B6:B18.
Следующий шаг – это определение в каких именно строках диапазона находится каждое минимальное значение. Это нам необходимо по причине определения именно первого наименьшего значения. Реализовывается данная задача с помощью функции СТРОКА, она заполняет элементы массива в памяти программы номерами строк листа. Но сначала от всех этих номеров вычитается номер на против первой строки таблицы – B5, то есть число 5. Это делается потому, что функция ИНДЕКС работает с номерами внутри таблицы, а не с номерами рабочего листа Excel. В тоже время функция СТРОКА умеет возвращать только номера строк листа. Чтобы не получилось смещение необходимо сопоставить порядок номеров строк листа и таблицы с помощи вычитанием разницы. Например, если таблица находится на 5-ой строке листа значит каждая строка таблицы будет на 5 меньше чем соответственная строка листа.
После того как будут отобраны все минимальные значения и сопоставлены все номера строк таблицы функция МИН выберет наименьший номер строки. Эта же строка будет содержать первое наименьшее число, которое встречается в столбце B6:B18. На основании этого номера строки функции ИНДЕКС выберет соответствующее значение из таблицы A6:A18. В итоге формула возвращает это значение в ячейку B3 в качестве результата вычисления.
Как выбрать значение с наибольшим числом в Excel
Поняв принцип действия формулы, теперь можно легко ее модифицировать и настраивать под другие условия. Например, формулу можно изменить так, чтобы выбрать первое максимальное значение в Excel:
Если необходимо изменить условия формулы так, чтобы можно было в Excel выбрать первое максимальное, но меньше чем 70:
Как в Excel выбрать первое минимальное значение кроме нуля:
Как легко заметить, эти формулы отличаются между собой только функциями МИН и МАКС и их аргументами.
Скачать пример выборки из таблицы в Excel.
Теперь Вас ни что не ограничивает. Один раз разобравшись с принципами действия формул в массиве Вы сможете легко модифицировать их под множество условий и быстро решать много вычислительных задач.
Если для фильтрации данных требуются сложные условия (например, Тип = «Фрукты» ИЛИ Продавец = «Егоров»), можно использовать диалоговое окно Расширенный фильтр.
Чтобы открыть диалоговое окно Расширенный фильтр, щелкните Данные > Дополнительно.
Расширенный фильтр |
Пример |
---|---|
Обзор расширенных условий фильтра |
|
Несколько условий, один столбец, любое из условий истинно |
Продавец = «Егоров» ИЛИ Продавец = «Грачев» |
Несколько условий, несколько столбцов, все условия истинны |
Тип = «Фрукты» И Продажи > 1000 |
Несколько условий, несколько столбцов, любое из условий истинно |
Тип = «Фрукты» ИЛИ Продавец = «Грачев» |
Несколько наборов условий, один столбец во всех наборах |
(Продажи > 6000 И Продажи < 6500) ИЛИ (Продажи < 500) |
Несколько наборов условий, несколько столбцов в каждом наборе |
(Продавец = «Егоров» И Продажи >3000) ИЛИ |
Условия с подстановочными знаками |
Продавец = имя со второй буквой «г» |
Обзор расширенных условий фильтра
Действие команды Дополнительно отличается от действия команды Фильтр в некоторых важных аспектах.
-
Она отображает диалоговое окно Расширенный фильтр, а не меню «Автофильтр».
-
Вы вводите расширенные условия в отдельном диапазоне условий на листе над диапазоном ячеек или таблицей, которую нужно отфильтровать. В качестве источника расширенных условий в Microsoft Office Excel используется отдельный диапазон условий в диалоговом окне Расширенный фильтр.
Образец данных
Этот пример данных используется для всех процедур, описанных в этой статье.
Эти данные включают четыре пустые строки над диапазоном списка, которые будут использоваться как диапазон условий (A1:C4) и диапазон списка (A6:C10). Диапазон условий содержит названия столбцов и по крайней мере одну пустую строку между значениями условий и диапазоном списка.
Для работы с этими данными выделите их в следующей таблице, скопируйте, а затем вставьте в ячейку A1 на новом листе Excel.
Тип |
Продавец |
Продажи |
Тип |
Продавец |
Продажи |
Напитки |
Шашков |
5 122 ₽ |
Мясо |
Егоров |
450 ₽ |
фрукты |
Грачев |
6328 ₽ |
Фрукты |
Егоров |
6544 ₽ |
Операторы сравнения
Операторы сравнения используются для сравнения двух значений. Результатом сравнения является логическое значение: ИСТИНА либо ЛОЖЬ.
Оператор сравнения |
Значение |
Пример |
---|---|---|
= (знак равенства) |
Равно |
A1=B1 |
> (знак «больше») |
Больше |
A1>B1 |
< (знак «меньше») |
Меньше |
A1<B1 |
>= (знак «больше или равно») |
Больше или равно |
A1>=B1 |
<= (знак «меньше или равно») |
Меньше или равно |
A1<=B1 |
<> (знак «не равно») |
Не равно |
A1<>B1 |
Использование знака равенства для ввода текста или значения
При вводе текста или значения в ячейке знак равенства (=) используется для обозначения формулы, поэтому Excel вычисляет то, что вы вводите. Однако при этом вы можете получить неожиданные результаты фильтрации. Чтобы указать оператор сравнения «равно» для текста или значения, введите условия в виде строкового выражения в соответствующей ячейке в диапазоне условий.
=»=
ввод
»
где ввод — искомый текст или значение. Например:
Вводится в ячейку |
Вычисляется и отображается |
---|---|
=»=Егоров» |
=Егоров |
=»=3000″ |
=3000 |
Учет регистра
При фильтрации текстовых данных в Excel не учитывается регистр букв. Однако для поиска с учетом регистра можно воспользоваться формулой. Пример см. в разделе Условия с подстановочными знаками.
Использование заранее определенных имен
Вы можете назвать диапазон Условия, и ссылка на диапазон автоматически появится в поле Диапазон условий. Вы также можете указать имя База данных для диапазона списка, который будет фильтроваться, и имя Извлечение для области, в которой вы собираетесь вставлять строки. Эти диапазоны автоматически появятся в полях Исходный диапазон и Поместить результат в диапазон соответственно.
Создание условий с помощью формулы
В качестве условия можно использовать значение, вычисленное с помощью формулы. Обратите внимание на важные моменты, указанные ниже.
-
Формула должна возвращать результат ИСТИНА или ЛОЖЬ.
-
Поскольку используется формула, введенное строковое выражение должно иметь обычный вид, а не тот, который показан ниже:
=»=
ввод
» -
Не используйте название столбца в качестве названия условия. Либо оставьте название условия пустым, либо используйте название, не являющееся названием столбца в диапазоне списка (в последующих примерах: «Среднее арифметическое» и «Точное совпадение»).
Если в формуле используется название столбца, а не относительная ссылка на ячейку или имя диапазона, в ячейке с условием будет выведено значение ошибки #ИМЯ? или #ЗНАЧ!. Эту ошибку можно проигнорировать, поскольку она не влияет на фильтрацию диапазона списка.
-
В формуле, которая используется для условий, необходимо использовать относительную ссылку для ссылки на соответствующую ячейку в первой строке данных.
-
Все остальные ссылки в формуле должны быть абсолютными.
Несколько условий, один столбец, любое из условий истинно
Логическое выражение: (Продавец = «Егоров» ИЛИ Продавец = «Грачев»)
-
Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.
-
Чтобы найти строки, отвечающие нескольким условиям для одного столбца, введите условия непосредственно одно под другим в разных строках диапазона условий. Используя пример, введите:
Тип
Продавец
Продажи
=»=Егоров»
=»=Грачев»
-
Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне A6:C10.
-
На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.
-
Выполните одно из следующих действий:
-
Чтобы отфильтровать диапазон списка, скрыв строки, не отвечающие условиям, выберите вариант Фильтровать список на месте.
-
Чтобы отфильтровать список, скопировав строки, не отвечающие условиям, в другую область листа, выберите вариант Скопировать результат в другое место, щелкните в поле Поместить результат в диапазон, а затем щелкните левый верхний угол области, в которой нужно вставить строки.
Совет При копировании отфильтрованных строк в другое место можно указать, какие столбцы следует включить в операцию копирования. Перед фильтрацией скопируйте нужные названия столбцов в первую строку области, в которую вы собираетесь вставить отфильтрованные строки. При применении фильтра введите ссылку на скопированные названия столбцов в поле Поместить результат в диапазон. Тогда скопированные строки будут включать только те столбцы, названия которых вы скопировали.
-
-
В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$C$3.
Чтобы временно убрать диалоговое окно Расширенный фильтр, пока вы выбираете диапазон условий, нажмите кнопку Свернуть диалоговое окно .
-
Используя пример, получаем следующий отфильтрованный результат для диапазона списка:
Тип
Продавец
Продажи
Мясо
Егоров
450 ₽
фрукты
Грачев
6 328 ₽
Фрукты
Егоров
6 544 ₽
Несколько условий, несколько столбцов, все условия истинны
Логическое выражение: (Тип = «Фрукты» И Продажи > 1000)
-
Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.
-
Чтобы найти строки, отвечающие нескольким условиям в нескольких столбцах, введите все условия в одной строке диапазона условий. Используя пример, введите:
Тип
Продавец
Продажи
=»=Фрукты»
>1 000
-
Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне A6:C10.
-
На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.
-
Выполните одно из следующих действий:
-
Чтобы отфильтровать диапазон списка, скрыв строки, не отвечающие условиям, выберите вариант Фильтровать список на месте.
-
Чтобы отфильтровать список, скопировав строки, не отвечающие условиям, в другую область листа, выберите вариант Скопировать результат в другое место, щелкните в поле Поместить результат в диапазон, а затем щелкните левый верхний угол области, в которой нужно вставить строки.
Совет При копировании отфильтрованных строк в другое место можно указать, какие столбцы следует включить в операцию копирования. Перед фильтрацией скопируйте нужные названия столбцов в первую строку области, в которую вы собираетесь вставить отфильтрованные строки. При применении фильтра введите ссылку на скопированные названия столбцов в поле Поместить результат в диапазон. Тогда скопированные строки будут включать только те столбцы, названия которых вы скопировали.
-
-
В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$C$2.
Чтобы временно убрать диалоговое окно Расширенный фильтр, пока вы выбираете диапазон условий, нажмите кнопку Свернуть диалоговое окно .
-
Используя пример, получаем следующий отфильтрованный результат для диапазона списка:
Тип
Продавец
Продажи
фрукты
Грачев
6 328 ₽
Фрукты
Егоров
6 544 ₽
Несколько условий, несколько столбцов, любое из условий истинно
Логическое выражение: (Тип = «Фрукты» ИЛИ Продавец = «Грачев»)
-
Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.
-
Чтобы найти строки, отвечающие нескольким условиям в нескольких столбцах, где любое условие может быть истинным, введите эти условия в разных строках диапазона условий. Используя пример, введите:
Тип
Продавец
Продажи
=»=Фрукты»
=»=Грачев»
-
Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.
-
На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.
-
Выполните одно из следующих действий:
-
Чтобы отфильтровать диапазон списка, скрыв строки, не отвечающие условиям, выберите вариант Фильтровать список на месте.
-
Чтобы отфильтровать список, скопировав строки, не отвечающие условиям, в другую область листа, выберите вариант Скопировать результат в другое место, щелкните в поле Поместить результат в диапазон, а затем щелкните левый верхний угол области, в которой нужно вставить строки.
Совет: При копировании отфильтрованных строк в другое место можно указать, какие столбцы следует включить в операцию копирования. Перед фильтрацией скопируйте нужные названия столбцов в первую строку области, в которую вы собираетесь вставить отфильтрованные строки. При применении фильтра введите ссылку на скопированные названия столбцов в поле Поместить результат в диапазон. Тогда скопированные строки будут включать только те столбцы, названия которых вы скопировали.
-
-
В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$B$3.
Чтобы временно убрать диалоговое окно Расширенный фильтр, пока вы выбираете диапазон условий, нажмите кнопку Свернуть диалоговое окно .
-
Используя пример, получаем следующий отфильтрованный результат для диапазона списка:
Тип
Продавец
Продажи
фрукты
Грачев
6 328 ₽
Фрукты
Егоров
6 544 ₽
Несколько наборов условий, один столбец во всех наборах
Логическое выражение: ( (Продажи > 6000 И Продажи < 6500 ) ИЛИ (Продажи < 500) )
-
Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.
-
Чтобы найти строки, отвечающие нескольким наборам условий, каждый из которых содержит условия для одного столбца, используйте несколько столбцов с одинаковым заголовком. Используя пример, введите:
Тип
Продавец
Продажи
Продажи
>6 000
<6 500
<500
-
Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.
-
На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.
-
Выполните одно из следующих действий:
-
Чтобы отфильтровать диапазон списка, скрыв строки, не отвечающие условиям, выберите вариант Фильтровать список на месте.
-
Чтобы отфильтровать список, скопировав строки, не отвечающие условиям, в другую область листа, выберите вариант Скопировать результат в другое место, щелкните в поле Поместить результат в диапазон, а затем щелкните левый верхний угол области, в которой нужно вставить строки.
Совет: При копировании отфильтрованных строк в другое место можно указать, какие столбцы следует включить в операцию копирования. Перед фильтрацией скопируйте нужные названия столбцов в первую строку области, в которую вы собираетесь вставить отфильтрованные строки. При применении фильтра введите ссылку на скопированные названия столбцов в поле Поместить результат в диапазон. Тогда скопированные строки будут включать только те столбцы, названия которых вы скопировали.
-
-
В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$D$3.
Чтобы временно убрать диалоговое окно Расширенный фильтр, пока вы выбираете диапазон условий, нажмите кнопку Свернуть диалоговое окно .
-
Используя пример, получаем следующий отфильтрованный результат для диапазона списка:
Тип
Продавец
Продажи
Мясо
Егоров
450 ₽
фрукты
Грачев
6 328 ₽
Несколько наборов условий, несколько столбцов в каждом наборе
Логическое выражение: ( (Продавец = «Егоров» И Продажи > 3000) ИЛИ (Продавец = «Грачев» И Продажи > 1500) )
-
Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.
-
Чтобы найти строки, отвечающие нескольким наборам условий, каждый из которых содержит условия для нескольких столбцов, введите каждый набор условий в отдельных столбцах или строках. Используя пример, введите:
Тип
Продавец
Продажи
=»=Егоров»
>3 000
=»=Грачев»
>1 500
-
Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.
-
На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.
-
Выполните одно из следующих действий:
-
Чтобы отфильтровать диапазон списка, скрыв строки, не отвечающие условиям, выберите вариант Фильтровать список на месте.
-
Чтобы отфильтровать список, скопировав строки, не отвечающие условиям, в другую область листа, выберите вариант Скопировать результат в другое место, щелкните в поле Поместить результат в диапазон, а затем щелкните левый верхний угол области, в которой нужно вставить строки.
Совет При копировании отфильтрованных строк в другое место можно указать, какие столбцы следует включить в операцию копирования. Перед фильтрацией скопируйте нужные названия столбцов в первую строку области, в которую вы собираетесь вставить отфильтрованные строки. При применении фильтра введите ссылку на скопированные названия столбцов в поле Поместить результат в диапазон. Тогда скопированные строки будут включать только те столбцы, названия которых вы скопировали.
-
-
В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$C$3. Чтобы временно убрать диалоговое окно Расширенный фильтр, пока вы выбираете диапазон условий, нажмите кнопку Свернуть диалоговое окно .
-
Используя пример, получим следующий отфильтрованный результат для диапазона списка:
Тип
Продавец
Продажи
фрукты
Грачев
6 328 ₽
Фрукты
Егоров
6 544 ₽
Условия с подстановочными знаками
Логическое выражение: Продавец = имя со второй буквой «г»
-
Чтобы найти текстовые значения с совпадающими знаками в некоторых из позиций, выполните одно или несколько действий, описанных ниже.
-
Чтобы найти строки, в которых текстовое значение в столбце начинается с определенной последовательности знаков, введите эти знаки, не используя знак равенства (=). Например, если ввести условие Бел, будут найдены строки с ячейками, содержащими слова «Белов», «Беляков» и «Белугин».
-
Воспользуйтесь подстановочными знаками.
Используйте
Чтобы найти
? (вопросительный знак)
Любой символ (один)
Пример: условию «стро?а» соответствуют результаты «строфа» и «строка»* (звездочка)
Любое количество символов
Пример: условию «*-восток» соответствуют результаты «северо-восток» и «юго-восток»~ (тильда), за которой следует ?, * или ~
Вопросительный знак, звездочку или тильду
Пример: условию «ан91~?» соответствует результат «ан91?»
-
-
Вставьте как минимум три пустые строки над диапазоном списка, которые можно использовать в качестве диапазона условий. Диапазон условий должен включать названия столбцов. Убедитесь, что есть по крайней мере одна пустая строка между значениями условий и диапазоном списка.
-
В строках под названиями столбцов введите условия, которым должен соответствовать результат. Используя пример, введите:
Тип
Продавец
Продажи
=»=Мя*»
=»=?г*»
-
Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.
-
На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.
-
Выполните одно из следующих действий:
-
Чтобы отфильтровать диапазон списка, скрыв строки, не отвечающие условиям, выберите вариант Фильтровать список на месте
-
Чтобы отфильтровать список, скопировав строки, не отвечающие условиям, в другую область листа, выберите вариант Скопировать результат в другое место, щелкните в поле Поместить результат в диапазон, а затем щелкните левый верхний угол области, в которой нужно вставить строки.
Совет: При копировании отфильтрованных строк в другое место можно указать, какие столбцы следует включить в операцию копирования. Перед фильтрацией скопируйте нужные названия столбцов в первую строку области, в которую вы собираетесь вставить отфильтрованные строки. При применении фильтра введите ссылку на скопированные названия столбцов в поле Поместить результат в диапазон. Тогда скопированные строки будут включать только те столбцы, названия которых вы скопировали.
-
-
В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$B$3.
Чтобы временно убрать диалоговое окно Расширенный фильтр, пока вы выбираете диапазон условий, нажмите кнопку Свернуть диалоговое окно .
-
Используя пример, получаем следующий отфильтрованный результат для диапазона списка:
Тип
Продавец
Продажи
Напитки
Шашков
5 122 ₽
Мясо
Егоров
450 ₽
фрукты
Грачев
6 328 ₽
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
=ИНДЕКС(A2:A29;НАИМЕНЬШИЙ(ЕСЛИ(15000
Если приходиться работать с большими таблицами определенно найдете в них дублирующийся суммы разбросаны вдоль целого столбца. В тоже время у вас может возникнуть необходимость выбрать данные из таблицы с первым наименьшим числовым значением, которое имеет свои дубликаты. Нужна автоматическая выборка данных по условию. В Excel для этой цели можно успешно использовать формулу в массиве.
Чтобы определить соответствующие значение первому наименьшему числу нужна выборка из таблицы по условию. Допустим мы хотим узнать первый самый дешевый товар на рынке из данного прайса:
Автоматическую выборку реализует нам формула, которая будет обладать следующей структурой:
=ИНДЕКС(диапазон_данных_для_выборки;МИН(ЕСЛИ(диапазон=МИН(диапазон);СТРОКА(диапазон)-СТРОКА(заголовок_столбца);””)))
В месте «диапазон_данных_для_выборки» следует указать область значений A6:A18 для выборки из таблицы (например, текстовых), из которых функция ИНДЕКС выберет одно результирующие значение. Аргумент «диапазон» означает область ячеек с числовыми значениями, из которых следует выбрать первое наименьшее число. В аргументе «заголовок_столбца» для второй функции СТРОКА, следует указать ссылку на ячейку с заголовком столбца, который содержит диапазон числовых значений.
Естественно эту формулу следует выполнять в массиве. Поэтому для подтверждения ее ввода следует нажимать не просто клавишу Enter, а целую комбинацию клавиш CTRL+SHIFT+Enter. Если все сделано правильно в строке формул появятся фигурные скобки.
Обратите внимание ниже на рисунок, где в ячейку B3 была введена данная формула в массиве:
Выборка соответственного значения с первым наименьшим числом:
С такой формулой нам удалось выбрать минимальное значение относительно чисел. Далее разберем принцип действия формулы и пошагово проанализируем весь порядок всех вычислений.
Как работает выборка по условию
Ключевую роль здесь играет функция ИНДЕКС. Ее номинальное задание – это выбирать из исходной таблицы (указывается в первом аргументе – A6:A18) значения соответственные определенным числам. ИНДЕКС работает с учетом критериев определённых во втором (номер строки внутри таблицы) и третьем (номер столбца в таблице) аргументах. Так как наша исходная таблица A6:A18 имеет только 1 столбец, то третий аргумент в функции ИНДЕКС мы не указываем.
Чтобы вычислить номер строки таблицы напротив наименьшего числа в смежном диапазоне B6:B18 и использовать его в качестве значения для второго аргумента, применяется несколько вычислительных функций.
Функция ЕСЛИ позволяет выбрать значение из списка по условию. В ее первом аргументе указано где проверяется каждая ячейка в диапазоне B6:B18 на наличие наименьшего числового значения: ЕСЛИB6:B18=МИНB6:B18. Таким способом в памяти программы создается массив из логических значений ИСТИНА и ЛОЖЬ. В нашем случаи 3 элемента массива будут содержат значение ИСТИНА, так как минимальное значение 8 содержит еще 2 дубликата в столбце B6:B18.
Следующий шаг – это определение в каких именно строках диапазона находится каждое минимальное значение. Это нам необходимо по причине определения именно первого наименьшего значения. Реализовывается данная задача с помощью функции СТРОКА, она заполняет элементы массива в памяти программы номерами строк листа. Но сначала от всех этих номеров вычитается номер на против первой строки таблицы – B5, то есть число 5. Это делается потому, что функция ИНДЕКС работает с номерами внутри таблицы, а не с номерами рабочего листа Excel. В тоже время функция СТРОКА умеет возвращать только номера строк листа. Чтобы не получилось смещение необходимо сопоставить порядок номеров строк листа и таблицы с помощи вычитанием разницы. Например, если таблица находится на 5-ой строке листа значит каждая строка таблицы будет на 5 меньше чем соответственная строка листа.
После того как будут отобраны все минимальные значения и сопоставлены все номера строк таблицы функция МИН выберет наименьший номер строки. Эта же строка будет содержать первое наименьшее число, которое встречается в столбце B6:B18. На основании этого номера строки функции ИНДЕКС выберет соответствующее значение из таблицы A6:A18. В итоге формула возвращает это значение в ячейку B3 в качестве результата вычисления.
Как выбрать значение с наибольшим числом в Excel
Поняв принцип действия формулы, теперь можно легко ее модифицировать и настраивать под другие условия. Например, формулу можно изменить так, чтобы выбрать первое максимальное значение в Excel:
Если необходимо изменить условия формулы так, чтобы можно было в Excel выбрать первое максимальное, но меньше чем 70:
Как в Excel выбрать первое минимальное значение кроме нуля:
Как легко заметить, эти формулы отличаются между собой только функциями МИН и МАКС и их аргументами.
Скачать пример выборки из таблицы в Excel.
Теперь Вас ни что не ограничивает. Один раз разобравшись с принципами действия формул в массиве Вы сможете легко модифицировать их под множество условий и быстро решать много вычислительных задач.
Если Вы работаете с большой таблицей и вам необходимо выполнить поиск уникальных значений в Excel, соответствующие определенному запросу, то нужно использовать фильтр. Но иногда нам нужно выделить все строки, которые содержат определенные значения по отношению к другим строкам. В этом случаи следует использовать условное форматирование, которое ссылается на значения ячеек с запросом. Чтобы получить максимально эффективный результат, будем использовать выпадающий список, в качестве запроса. Это очень удобно если нужно часто менять однотипные запросы для экспонирования разных строк таблицы. Ниже детально рассмотрим: как сделать выборку повторяющихся ячеек из выпадающего списка.
Выбор уникальных и повторяющихся значений в Excel
Для примера возьмем историю взаиморасчетов с контрагентами, как показано на рисунке:
В данной таблице нам нужно выделить цветом все транзакции по конкретному клиенту. Для переключения между клиентами будем использовать выпадающий список. Поэтому в первую очередь следует подготовить содержание для выпадающего списка. Нам нужны все Фамилии клиентов из столбца A, без повторений.
Перед тем как выбрать уникальные значения в Excel, подготовим данные для выпадающего списка:
- Выделите первый столбец таблицы A1:A19.
- Выберите инструмент: «ДАННЫЕ»-«Сортировка и фильтр»-«Дополнительно».
- В появившемся окне «Расширенный фильтр» включите «скопировать результат в другое место», а в поле «Поместить результат в диапазон:» укажите $F$1.
- Отметьте галочкой пункт «Только уникальные записи» и нажмите ОК.
В результате мы получили список данных с уникальными значениями (фамилии без повторений).
Теперь нам необходимо немного модифицировать нашу исходную таблицу. Выделите первые 2 строки и выберите инструмент: «ГЛАВНАЯ»-«Ячейки»-«Вставить» или нажмите комбинацию горячих клавиш CTRL+SHIFT+=.
У нас добавилось 2 пустые строки. Теперь в ячейку A1 введите значение «Клиент:».
Пришло время для создания выпадающего списка, из которого мы будем выбирать фамилии клиентов в качестве запроса.
Перед тем как выбрать уникальные значения из списка сделайте следующее:
- Перейдите в ячейку B1 и выберите инструмент «ДАННЫЕ»-«Работа с данными»-«Проверка данных».
- На вкладке «Параметры» в разделе «Условие проверки» из выпадающего списка «Тип данных:» выберите значение «Список».
- В поле ввода «Источник:» введите =$F$4:$F$8 и нажмите ОК.
В результате в ячейке B1 мы создали выпадающих список фамилий клиентов.
Примечание. Если данные для выпадающего списка находятся на другом листе, то лучше для такого диапазона присвоить имя и указать его в поле «Источник:». В данном случае это не обязательно, так как у нас все данные находятся на одном рабочем листе.
Выборка ячеек из таблицы по условию в Excel:
- Выделите табличную часть исходной таблицы взаиморасчетов A4:D21 и выберите инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило»-«Использовать формулу для определения форматируемых ячеек».
- Чтобы выбрать уникальные значения из столбца, в поле ввода введите формулу: =$A4=$B$1 и нажмите на кнопку «Формат», чтобы выделить одинаковые ячейки цветом. Например, зеленым. И нажмите ОК на всех открытых окнах.
Готово!
Как работает выборка уникальных значений Excel? При выборе любого значения (фамилии) из выпадающего списка B1, в таблице подсвечиваются цветом все строки, которые содержат это значение (фамилию). Чтобы в этом убедится в выпадающем списке B1 выберите другую фамилию. После чего автоматически будут выделены цветом уже другие строки. Такую таблицу теперь легко читать и анализировать.
Скачать пример выборки из списка с условным форматированием.
Принцип действия автоматической подсветки строк по критерию запроса очень прост. Каждое значение в столбце A сравнивается со значением в ячейке B1. Это позволяет найти уникальные значения в таблице Excel. Если данные совпадают, тогда формула возвращает значение ИСТИНА и для целой строки автоматически присваивается новый формат. Чтобы формат присваивался для целой строки, а не только ячейке в столбце A, мы используем смешанную ссылку в формуле =$A4.
Первый способ: Применение расширенного автофильтра На листе Excel необходимо выделить область, среди данных, которых и нужно осуществить выборку. Во вкладке «Главная» нажимаете «Сортировка и фильтр» (находится в блоке настроек «Редактирование»). Далее нажимаете на фильтр.
Можно сделать иначе, после выделения области переходите во вкладку «Данные» и нажимаете на «Фильтр», размещенной в группе «Сортировка и фильтр».
Когда эти действия выполнены, в шапке таблицы должны появиться пиктограммы для запуска фильтрования. Они будут отображены острием вниз небольшими треугольниками в правом крае ячеек. Нажимаете на этот значок в начале того столбца, по которому и собираетесь сделать выборку. Запуститься меню, в нем переходите в «Текстовые фильтры» и выбираете «Настраиваемый фильтр…».
Теперь должно активироваться окно пользовательской фильтрации. В нем задаете ограничение, по которому и будет осуществляться отбор. Можно выбрать одно из пяти предложенных видов условий: равно, не равно, больше, больше или равно, меньше.
После фильтрации остаются только те строчки, в которых сумма выручки превышает значение 10000 (как пример).
В этом же столбце есть возможность добавить и второе условие. Нужно снова вернуться в окно пользовательской фильтрации, а в его нижней части установить другую границу отбора. Переключатель выставляете в позицию «Меньше», а в поле справа вписываете «15000».
В таблице останутся только те строки, в которых сумма выручки не меньше 10000, но и не больше 15000.
В других столбцах выборка настраивается по аналогии. В нужном столбце нажимаете по значку фильтрации, а дальше последовательно кликаете по пунктам списка «Фильтр по дате» и «Настраиваемый фильтр».
Должно запуститься окно пользовательского автофильтра. Выполните, к примеру, отбор результатов в таблице с 4 по 6 мая 2016 года включительно. Нажимаете «После или равно», а в поле справа выставляете значение «04.05.2016». В нижнем блоке переключатель ставите в позицию «До или равно», а в правом поле вносите «06.05.2016». Переключатель совместимости условий оставляете в положении по умолчанию, то есть «И». Для применения фильтрации кликаете на ОК.
Список теперь должен сократиться еще больше, потому что останутся только строки, в которых сумма выручки варьируется от 10000 до 15000 и это за период с 04.05 по 06.05.2016 включительно.
В одном из столбцов при желании можно сбросить фильтрацию. К примеру, можно сделать это для значений выручки. Нажимаете на значок автофильтра в соответствующем столбце. Выбираете «Удалить фильтр».
Выборка по сумме выручки отключится и останется только отбор по датам (с 04.05.2016 по 06.05.2016).
В таблице есть и еще одна колонка под названием «Наименование». В ней расположенные данные в текстовом формате. По этим значениям тоже можно сформировать выборку. В наименовании столбца нажмите на значок фильтра. Переходите на «Текстовые фильтры», а затем «Настраиваемый фильтр…».
Снова откроется окно пользовательского фильтра, в котором можно сделать выборку, к примеру, по наименованиям «Мясо» и «Картофель». В первом блоке нужно установить переключатель в позиции «Равно» а в поле справа от него внести «Картофель». Переключатель нижнего блока поставить в позицию «Равно», а в поле напротив – «Мясо». Теперь следует установить переключатель совместимости условий в позиции «ИЛИ». Нажимаете ОК.
В новой выборке выставлены ограничения по дате (с 04.05.2016 по 06.05.2016) и по наименованию (Мясо и Картофель). Ограничений нет только по сумме выручки.
Можно фильтр удалить полностью и делается это теми же способами, которые применялись для его выставления. Для того чтобы сбросить фильтрацию во вкладке «Данные» нажмите на «Фильтр» в группе «Сортировка и фильтр».
Во втором варианте можно перейти во вкладку «Главная» и нажать там на «Сортировка и фильтр» в «Редактирование». Далее кликаете на «Фильтр».
Если использовать любой из указанных методов, то таблица удалится, а результаты выборки очистятся. То есть таблица будет отображать все ранее внесенные в нее данные.
Второй способ: Применение формулы массиваНа том же листе Excel создаете пустую таблицу с теми же наименованиями столбцов в шапке, которые имеются у исходника.
Все пустые ячейки необходимо выделить в первой колонке новой таблицы. В строку формул устанавливаете курсор, чтобы занести формулу — =ИНДЕКС(A2:A29;НАИМЕНЬШИЙ(ЕСЛИ(15000
Для применения формулы нужно нажать на клавиши Ctrl+Shift+Enter.
Выделяете второй столбец с датами и ставите курсор в строку формул, чтобы занести — =ИНДЕКС(B2:B29;НАИМЕНЬШИЙ(ЕСЛИ(15000
Таким же способ в столбец с выручкой вносите такую формулу — =ИНДЕКС(C2:C29;НАИМЕНЬШИЙ(ЕСЛИ(15000
Чтобы далее привести таблицу в презентабельный вид, нужно выделить весь столбец, в том числе и ячейки с ошибками, а далее нажимаете правой кнопкой мыши и выбираете «Формат ячейки…».
Откроется окно форматирования, в котором нужно выбрать вкладку «Число». В «Числовые форматы» выбираете «Дата». В правой части окна при желании можно выбрать тип отображаемой даты, а когда все настройки будут внесены, то кликнуть на ОК.
Теперь все будет красиво, и дата отобразится корректно. Если в ячейках отображается значение «#ЧИСЛО!», то нужно применить условное форматирование. Все ячейки таблицы следует выделить (кроме шапки) и, находясь во вкладке «Главная» нажать на «Условное форматирование» (в блоке инструментов «Стили»). Появится список, в котором следует выбрать «Создать правило…».
Выбираете правила «Форматировать только ячейки, которые содержат», а в первом поле, находящемся под строкой «Форматировать только ячейки, для которых выполняется следующее условие» выбрать «Ошибки» и нажать «Формат…».
Запустится окно форматирования, в котором переходите на «Шрифт» и выбираете белый цвет. Кликаете на ОК.
Далее нажимаете на кнопку с точно таким же названием после того как вернулись в окно создания условий.
Перед вами появится, готовая выборка по указанному ограничению, и будет это все в отдельной таблице.
Третий способ: Выборка по нескольким условиям с помощью формулыВ отдельном столбце следует внести граничные условия для выборки.
По очереди выделяете пустые столбцы новой таблицы, чтобы внести в них необходимые три формулы. В первый столбец вносите — =ИНДЕКС(A2:A29;НАИМЕНЬШИЙ(ЕСЛИ(($D$2=C2:C29);СТРОКА(C2:C29);»»);СТРОКА(C2:C29)-СТРОКА($C$1))-СТРОКА($C$1)). Далее в колонки вбиваете такие же формулы, только изменяете координаты после наименования оператора ИНДЕКС на те, которые нужны и соответствуют определенным столбцам. Все по аналогии с предыдущим способом. Каждый раз после того как делаете ввод, не забывайте нажимать сочетание клавиш Ctrl+Shift+Enter.
Если нужно будет поменять границы выборки, то можно просто в колонке условий изменить граничные числа и тогда результат отбора будет автоматически изменен.
Четвертый способ: Случайная выборкаС левой стороны от таблицы нужно пропустить один столбец, а в ячейке следующего внести формулу — =СЛЧИС(), чтобы вывести на экран случайное число. Для ее активации нажимаете ENTER.
Если нужно сделать целый столбец случайных чисел, тогда устанавливаете курсор в нижний правый угол ячейки с содержащейся формулой. Должен появиться маркер заполнения, который следует протянуть вниз с помощью зажатия левой кнопки мыши. Делается это параллельно таблице с данными и до конца.
Диапазон ячеек будет содержать в себе формулу СЛЧИС, но работать с чистыми значениями не нужно. Копируете в пустой столбец справа и выделяете диапазон ячеек со случайными числами. Во вкладке «Главная» нажимаете на «Копировать».
Выделяете пустой столбец и нажимаете правой кнопкой мыши, чтобы вызвать контекстное меню. В группе инструментов «Параметры вставки» выбираете «Значения» (изображен в виде пиктограммы с цифрами).
Во вкладке «Главная» нажимаете на «Сортировка и фильтр», а затем «Настраиваемая сортировка».
Рядом с параметром «Мои данные содержат заголовки» ставите галочку. В строке «Сортировать по» указываете название того столбца, в котором находятся скопированные значения случайных чисел. В строке «Сортировка» настройки остаются по умолчанию. В строке «Порядок» выбираете параметр «По возрастанию» или «По убыванию». Кликаете на ОК.
Значения таблицы должны выстроиться в порядке возрастания или убывания случайных чисел. Любое количество первых строчек из таблицы можно взять и считать их результатом случайной выборки.
Содержание
- Выборка данных в Microsoft Excel
- Выполнение выборки
- Способ 1: применение расширенного автофильтра
- Способ 2: применение формулы массива
- Способ 3: выборка по нескольким условиям с помощью формулы
- Способ 4: случайная выборка
Выборка данных в Microsoft Excel
При работе с таблицами Excel довольно часто приходится проводить отбор в них по определенному критерию или по нескольким условиям. В программе сделать это можно различными способами при помощи ряда инструментов. Давайте выясним, как произвести выборку в Экселе, используя разнообразные варианты.
Выполнение выборки
Выборка данных состоит в процедуре отбора из общего массива тех результатов, которые удовлетворяют заданным условиям, с последующим выводом их на листе отдельным списком или в исходном диапазоне.
Способ 1: применение расширенного автофильтра
Наиболее простым способом произвести отбор является применение расширенного автофильтра. Рассмотрим, как это сделать на конкретном примере.
- Выделяем область на листе, среди данных которой нужно произвести выборку. Во вкладке «Главная» щелкаем по кнопке «Сортировка и фильтр». Она размещается в блоке настроек «Редактирование». В открывшемся после этого списка выполняем щелчок по кнопке «Фильтр».
Есть возможность поступить и по-другому. Для этого после выделения области на листе перемещаемся во вкладку «Данные». Щелкаем по кнопке «Фильтр», которая размещена на ленте в группе «Сортировка и фильтр».
После этого действия в шапке таблицы появляются пиктограммы для запуска фильтрования в виде перевернутых острием вниз небольших треугольников на правом краю ячеек. Кликаем по данному значку в заглавии того столбца, по которому желаем произвести выборку. В запустившемся меню переходим по пункту «Текстовые фильтры». Далее выбираем позицию «Настраиваемый фильтр…».
Давайте в качестве примера зададим условие так, чтобы отобрать только значения, по которым сумма выручки превышает 10000 рублей. Устанавливаем переключатель в позицию «Больше». В правое поле вписываем значение «10000». Чтобы произвести выполнение действия, щелкаем по кнопке «OK».
Кроме того, существует ещё переключатель условий. У него два положения «И» и «ИЛИ». По умолчанию он установлен в первом положении. Это означает, что в выборке останутся только строчки, которые удовлетворяют обоим ограничениям. Если он будет выставлен в положение «ИЛИ», то тогда останутся значения, которые подходят под любое из двух условий. В нашем случае нужно выставить переключатель в положение «И», то есть, оставить данную настройку по умолчанию. После того, как все значения введены, щелкаем по кнопке «OK».
Теперь в таблице остались только строчки, в которых сумма выручки не меньше 10000 рублей, но не превышает 15000 рублей.
Кликаем по значку фильтра в наименовании столбца. Последовательно переходим по наименованиям списка «Текстовые фильтры» и «Настраиваемый фильтр…».
Второй вариант предполагает переход во вкладку «Главная». Там выполняем щелчок на ленте по кнопке «Сортировка и фильтр» в блоке «Редактирование». В активировавшемся списке нажимаем на кнопку «Фильтр».
При использовании любого из двух вышеуказанных методов фильтрация будет удалена, а результаты выборки – очищены. То есть, в таблице будет показан весь массив данных, которыми она располагает.
Способ 2: применение формулы массива
Сделать отбор можно также применив сложную формулу массива. В отличие от предыдущего варианта, данный метод предусматривает вывод результата в отдельную таблицу.
- На том же листе создаем пустую таблицу с такими же наименованиями столбцов в шапке, что и у исходника.
- Выделяем все пустые ячейки первой колонки новой таблицы. Устанавливаем курсор в строку формул. Как раз сюда будет заноситься формула, производящая выборку по указанным критериям. Отберем строчки, сумма выручки в которых превышает 15000 рублей. В нашем конкретном примере, вводимая формула будет выглядеть следующим образом:
Естественно, в каждом конкретном случае адрес ячеек и диапазонов будет свой. На данном примере можно сопоставить формулу с координатами на иллюстрации и приспособить её для своих нужд.
Жмем сочетание клавиш Ctrl+Shift+Enter.
Аналогичным образом в столбец с выручкой вписываем формулу следующего содержания:
Опять набираем сочетание клавиш Ctrl+Shift+Enter.
Во всех трех случаях меняется только первое значение координат, а в остальном формулы полностью идентичны.
Теперь у нас имеется готовая выборка по указанному ограничению в отдельной надлежащим образом оформленной таблице.
Способ 3: выборка по нескольким условиям с помощью формулы
Так же, как и при использовании фильтра, с помощью формулы можно осуществлять выборку по нескольким условиям. Для примера возьмем всю ту же исходную таблицу, а также пустую таблицу, где будут выводиться результаты, с уже выполненным числовым и условным форматированием. Установим первым ограничением нижнюю границу отбора по выручке в 15000 рублей, а вторым условием верхнюю границу в 20000 рублей.
- Вписываем в отдельном столбце граничные условия для выборки.
- Как и в предыдущем способе, поочередно выделяем пустые столбцы новой таблицы и вписываем в них соответствующие три формулы. В первый столбец вносим следующее выражение:
В последующие колонки вписываем точно такие же формулы, только изменив координаты сразу после наименования оператора ИНДЕКС на соответствующие нужным нам столбцам, по аналогии с предыдущим способом.
Каждый раз после ввода не забываем набирать сочетание клавиш Ctrl+Shift+Enter.
Способ 4: случайная выборка
В Экселе с помощью специальной формулы СЛЧИС можно также применять случайный отбор. Его требуется производить в некоторых случаях при работе с большим объемом данных, когда нужно представить общую картину без комплексного анализа всех данных массива.
- Слева от таблицы пропускаем один столбец. В ячейке следующего столбца, которая находится напротив первой ячейки с данными таблицы, вписываем формулу:
Эта функция выводит на экран случайное число. Для того, чтобы её активировать, жмем на кнопку ENTER.
Как видим, выборку в таблице Excel можно произвести, как с помощью автофильтра, так и применив специальные формулы. В первом случае результат будет выводиться в исходную таблицу, а во втором – в отдельную область. Имеется возможность производить отбор, как по одному условию, так и по нескольким. Кроме того, можно осуществлять случайную выборку, использовав функцию СЛЧИС.
Источник
Самый быстрый ВПР
Если в ваших таблицах всего лишь несколько десятков строк, то, скорее всего, эта статья не будет для вас актуальной. На таких небольших объемах данных любой способ будет работать достаточно шустро, чтобы вы этого не замечали. Если же число строк в ваших списках измеряется тысячами, да и самих таблиц не одна-две, то время мучительного ожидания на пересчете формул в 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, который тоже может решить нашу задачу. Кто-то скажет, что некорректно сравнивать пересчёт формул с механизмом обновления запроса, но мне, откровенно говоря, просто самому было интересно — кто быстрее?
- Превращаем обе наши таблицы в «умные» с помощью команды Форматировать как таблицу на вкладке Главная (Home — Format as Table) или с помощью сочетания клавиш Ctrl + T .
- По очереди загружаем таблицы в Power Query с помощью команды Данные — Из таблицы / диапазона (Data — From Table/Range) .
- После загрузки в Power Query возвращаемся обратно в Excel, оставляя загруженные данные как подключение. Для этого в окне Power Query выбираем Главная — Закрыть и загрузить — Закрыть и загрузить в. — Только создать подключение (Home — Close&Load — Close&Load to. — Only create connection) .
- После того, как обе исходные таблицы будут загружены как подключения, создадим ещё один, третий запрос, который будет объединять их между собой, подставляя цены из прайса в отгрузки. Для этого на вкладке Данные выберем Получить данные / Создать запрос — Объединить запросы — Объединить (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)
Для товара не должно быть повторов дат, иначе цены будут суммироваться (если повторяется последняя дата).
Поиск и подстановка по нескольким условиям
Постановка задачи
Если вы продвинутый пользователь Microsoft Excel, то должны быть знакомы с функцией поиска и подстановки ВПР или VLOOKUP (если еще нет, то сначала почитайте эту статью, чтобы им стать). Для тех, кто понимает, рекламировать ее не нужно — без нее не обходится ни один сложный расчет в Excel. Есть, однако, одна проблема: эта функция умеет искать данные только по совпадению одного параметра. А если у нас их несколько?
Предположим, что у нас есть база данных по ценам товаров за разные месяцы:
Нужно найти и вытащить цену заданного товара (Нектарин) в определенном месяце (Январь), т.е. получить на выходе152, но автоматически, т.е. с помощью формулы. ВПР в чистом виде тут не поможет, но есть несколько других способов решить эту задачу.
Способ 1. Дополнительный столбец с ключом поиска
Это самый очевидный и простой (хотя и не самый удобный) способ. Поскольку штатная функция ВПР (VLOOKUP) умеет искать только по одному столбцу, а не по нескольким, то нам нужно из нескольких сделать один!
Добавим рядом с нашей таблицей еще один столбец, где склеим название товара и месяц в единое целое с помощью оператора сцепки (&), чтобы получить уникальный столбец-ключ для поиска:
Теперь можно использовать знакомую функцию ВПР (VLOOKUP) для поиска склеенной пары НектаринЯнварь из ячеек H3 и J3 в созданном ключевом столбце:
Плюсы: Простой способ, знакомая функция, работает с любыми данными.
Минусы: Надо делать дополнительный столбец и потом, возможно, еще и прятать его от пользователя. При изменении числа строк в таблице — допротягивать формулу сцепки на новые строки (хотя это можно упростить применением умной таблицы).
Способ 2. Функция СУММЕСЛИМН
Если нужно найти именно число (в нашем случае цена как раз число), то вместо ВПР можно использовать функцию СУММЕСЛИМН (SUMIFS), появившуюся начиная с Excel 2007. По идее, эта функция выбирает и суммирует числовые значения по нескольким (до 127!) условиям. Но если в нашем списке нет повторяющихся товаров внутри одного месяца, то она просто выведет значение цены для заданного товара и месяца:
Плюсы: Не нужен дополнительный столбец, решение легко масштабируется на большее количество условий (до 127), быстро считает.
Минусы: Работает только с числовыми данными на выходе, не применима для поиска текста, не работает в старых версиях Excel (2003 и ранее).
Способ 3. Формула массива
О том, как спользовать связку функций ИНДЕКС (INDEX) и ПОИСКПОЗ (MATCH) в качестве более мощной альтернативы ВПР я уже подробно описывал (с видео). В нашем же случае, можно применить их для поиска по нескольким столбцам в виде формулы массива. Для этого:
- Выделите пустую зеленую ячейку, где должен быть результат.
- Введите в строке формул в нее следующую формулу:
- Нажмите в конце не Enter, а сочетание Ctrl+Shift+Enter, чтобы ввести формулу не как обычную, а как формулу массива.
Как это на самом деле работает:
Функция ИНДЕКС выдает из диапазона цен C2:C161 содержимое N-ой ячейки по порядку. При этом порядковый номер нужной ячейки нам находит функция ПОИСКПОЗ. Она ищет связку названия товара и месяца (НектаринЯнварь) по очереди во всех ячейках склеенного из двух столбцов диапазона A2:A161&B2:B161 и выдает порядковый номер ячейки, где нашла точное совпадение. По сути, это первый способ, но ключевой столбец создается виртуально прямо внутри формулы, а не в ячейках листа.
Плюсы: Не нужен отдельный столбец, работает и с числами и с текстом.
Минусы: Ощутимо тормозит на больших таблицах (как и все формулы массива, впрочем), особенно если указывать диапазоны «с запасом» или сразу целые столбцы (т.е. вместо A2:A161 вводить A:A и т.д.) Многим непривычны формулы массива в принципе (тогда вам сюда).
Ссылки по теме
- Как искать и подставлять данные с помощью функции ВПР (VLOOKUP)
- Что такое формулы массива и как их использовать
- Как использовать связку функций ИНДЕКС и ПОИСКПОЗ вместо ВПР
- Как извлечь сразу все значения, а не только первое с помощью ВПР