Как настроить фильтр в экселе выборка из списка
Перейти к содержимому

Как настроить фильтр в экселе выборка из списка

  • автор:

Как сделать выборку в Excel из списка с условным форматированием

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

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

Для примера возьмем историю взаиморасчетов с контрагентами, как показано на рисунке:

История взаиморасчетов.

В данной таблице нам нужно выделить цветом все транзакции по конкретному клиенту. Для переключения между клиентами будем использовать выпадающий список. Поэтому в первую очередь следует подготовить содержание для выпадающего списка. Нам нужны все Фамилии клиентов из столбца A, без повторений.

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

  1. Выделите первый столбец таблицы A1:A19.
  2. Выберите инструмент: «ДАННЫЕ»-«Сортировка и фильтр»-«Дополнительно». Дополнительно.
  3. В появившемся окне «Расширенный фильтр» включите «скопировать результат в другое место», а в поле «Поместить результат в диапазон:» укажите $F$1. Поместить результат в диапазон.
  4. Отметьте галочкой пункт «Только уникальные записи» и нажмите ОК.

Только уникальные записи.

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

Теперь нам необходимо немного модифицировать нашу исходную таблицу. Выделите первые 2 строки и выберите инструмент: «ГЛАВНАЯ»-«Ячейки»-«Вставить» или нажмите комбинацию горячих клавиш CTRL+SHIFT+=.

Вставить 2 строки.

У нас добавилось 2 пустые строки. Теперь в ячейку A1 введите значение «Клиент:».

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

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

  1. Перейдите в ячейку B1 и выберите инструмент «ДАННЫЕ»-«Работа с данными»-«Проверка данных». Проверка данных.
  2. На вкладке «Параметры» в разделе «Условие проверки» из выпадающего списка «Тип данных:» выберите значение «Список». Источник.
  3. В поле ввода «Источник:» введите =$F$4:$F$8 и нажмите ОК.

выпадающих список.

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

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

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

  1. Выделите табличную часть исходной таблицы взаиморасчетов A4:D21 и выберите инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило»-«Использовать формулу для определения форматируемых ячеек». Создать правило.Использовать формулу.
  2. Чтобы выбрать уникальные значения из столбца, в поле ввода введите формулу: =$A4=$B$1 и нажмите на кнопку «Формат», чтобы выделить одинаковые ячейки цветом. Например, зеленым. И нажмите ОК на всех открытых окнах.

Зеленая заливка.

Готово.

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

Принцип действия автоматической подсветки строк по критерию запроса очень прост. Каждое значение в столбце A сравнивается со значением в ячейке B1. Это позволяет найти уникальные значения в таблице Excel. Если данные совпадают, тогда формула возвращает значение ИСТИНА и для целой строки автоматически присваивается новый формат. Чтобы формат присваивался для целой строки, а не только ячейке в столбце A, мы используем смешанную ссылку в формуле =$A4.

  • Excel Formula Examples
  • Создать таблицу
  • Форматирование
  • Функции Excel
  • Формулы и диапазоны
  • Фильтр и сортировка
  • Диаграммы и графики
  • Сводные таблицы
  • Печать документов
  • Базы данных и XML
  • Возможности Excel
  • Настройки параметры
  • Уроки Excel
  • Макросы VBA
  • Скачать примеры

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

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

Ваш браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

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

  1. На новом листе введите данные, которые должны отображаться в раскрывающемся списке. Желательно, чтобы элементы списка содержались в таблице Excel. В противном случае можно быстро преобразовать список в таблицу, выбрав любую ячейку в диапазоне и нажав клавиши CTRL+T.
  • Почему данные следует поместить в таблицу? Потому что в этом случае при добавлении и удалении элементов все раскрывающиеся списки, созданные на основе этой таблицы, будут обновляться автоматически. Дополнительные действия не требуются.
  • Теперь следует отсортировать данные в диапазоне или таблице в раскрывающемся списке.

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

  • На вкладке Параметры в поле Разрешить выберите Список.
  • Выберите в поле Источник , а затем выберите диапазон списка. В примере данные находятся на листе «Города» в диапазоне A2:A9. Обратите внимание на то, что строка заголовков отсутствует в диапазоне, так как она не является одним из вариантов, доступных для выбора. Параметры списка проверки данных
  • Если пользователи не могут оставить ячейку пустой, проверка пустое поле Игнорировать.
  • Установите флажок в раскрывающемся списке В ячейке .
  • Перейдите на вкладку Входное сообщение .
    • Если вы хотите, чтобы при выборе ячейки отображалось сообщение, проверка поле Показывать входное сообщение при выделении ячейки и введите заголовок и сообщение в полях (не более 225 символов). Если вы не хотите, чтобы сообщение отображалось, снимите этот флажок. Вкладка
  • Перейдите на вкладку Оповещение об ошибке .
    • Если вы хотите, чтобы при вводе сообщения, которого нет в списке, проверка поле Показывать оповещение об ошибке после ввода недопустимых данных, выберите параметр в поле Стиль и введите заголовок и сообщение. Если вы не хотите, чтобы сообщение отображалось, снимите этот флажок. Параметры сообщения об ошибке для раскрывающегося списка проверки данных
  • Не знаете, какой вариант выбрать в поле Стиль ?
    • Чтобы отобразить сообщение, которое не мешает пользователям вводить данные, отсутствуют в раскрывающемся списке, выберите Сведения или Предупреждение. Сведения покажут сообщение с этим значком В сообщении отображается значок информации, но это не мешает людям выбирать элементы из раскрывающегося списка, а предупреждение — сообщение с этим значком В сообщении отображается значок предупреждения, но это не мешает людям выбирать элементы из раскрывающегося списка.
    • Чтобы запретить пользователям вводить данные, которые отсутствуют в раскрывающемся списке, выберите Остановить.

      Примечание: Если вы не добавили заголовок и текст, по умолчанию выводится заголовок «Microsoft Excel» и сообщение «Введенное значение неверно. Набор значений, которые могут быть введены в ячейку, ограничен».

      Работа с раскрывающимся списком

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

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

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

      Чтобы удалить раскрывающийся список, см. статью Удаление раскрывающегося списка.

      Фильтрация данных в диапазоне или таблице

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

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

      Ваш браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

      Фильтрация диапазона данных

      1. Выберите любую ячейку в диапазоне данных.
      2. Выберите Фильтр>данных . Кнопка
      3. Щелкните стрелку Стрелка фильтрав заголовке столбца.
      4. Выберите Текстовые фильтры или Числовые фильтры, а затем выберите сравнение, например Между. Числовые фильтры
      5. Введите условия фильтрации и нажмите кнопку ОК. Диалоговое окно

      Фильтрация данных в таблице

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

      Таблица Excel со встроенными фильтрами

      1. Щелкните стрелку в заголовке столбца, содержимое которого вы хотите отфильтровать.
      2. Снимите флажок (Выберите все) и выберите поля, которые нужно отобразить. Коллекция фильтров
      3. Нажмите кнопку ОК. Стрелка заголовка столбца меняется на значок фильтра . Щелкните этот значок, чтобы изменить или очистить фильтр.

      Статьи по теме

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

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

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

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

      Два типа фильтров

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

      Повторное применение фильтра

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

      • Стрелка раскрывающегося списка означает, что фильтрация включена, но не применяется. При наведении указателя мыши на заголовок столбца с включенной, но не примененной фильтрацией, на экране отображается подсказка «(Отображение всех)».
      • Кнопка «Фильтр» означает, что применяется фильтр. При наведении указателя мыши на заголовок отфильтрованного столбца на экране отображается фильтр, примененный к нему, например «Равно красному цвету ячейки» или «Больше 150».

      При повторном использовании фильтра результаты отображаются по следующим причинам:

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

      Не смешивать типы данных

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

      Фильтрация данных в таблице

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

      1. Выделите данные, которые нужно отфильтровать. На вкладке Главная выберите Формат как таблица, а затем выберите Формат как таблица. Кнопка форматирования данных в виде таблицы
      2. В диалоговом окне Создание таблицы можно выбрать, есть ли в таблице заголовки.
        • Выберите Таблица с заголовками, чтобы преобразовать верхнюю строку в заголовки таблицы. Данные в этой строке не будут фильтроваться.
        • Не выбирайте поле проверка, если вы хотите Excel в Интернете добавить заполнители (которые можно переименовать) над данными таблицы. Диалоговое окно для преобразования диапазона данных в таблицу
      3. Нажмите кнопку ОК.
      4. Чтобы применить фильтр, щелкните стрелку в заголовке столбца и выберите параметр фильтрации.

      Фильтрация диапазона данных

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

      1. Выделите данные, которые нужно отфильтровать. Для достижения наилучших результатов столбцы должны содержать заголовки.
      2. На вкладке Данные выберите Фильтр.

      Параметры фильтрации для таблиц или диапазонов

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

      Настраиваемый числовой фильтр

      Выбрав параметр Числовые фильтры вы можете применить один из перечисленных ниже настраиваемых фильтров.

      Настраиваемые фильтры для числовых значений.

      В этом примере, чтобы отобрать регионы, в которых сумма продаж за март была меньше 6000, можно применить настраиваемый фильтр:

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

      Ниже рассказывается, как это сделать.

      1. Щелкните стрелку фильтра рядом с полем Число фильтров > марта >меньше и введите 6000. Применение настраиваемого фильтра для отображения значений, которые меньше определенного порога
      2. Нажмите кнопку ОК. Excel в Интернете применяет фильтр и отображает только регионы с продажами ниже 6000 долл. США. Результаты применения настраиваемого числового фильтра

      Аналогичным образом можно применить фильтры по дате и текстовые фильтры.

      Очистка фильтра из столбца

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

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

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

      Фильтрация по набору верхних или нижних значений

      1. Щелкните ячейку в диапазоне или таблице, которую хотите отфильтровать.
      2. На вкладке Данные выберите Фильтр. На вкладке
      3. Выберите стрелку Стрелка, показывающая, что столбец отфильтрованв столбце, содержав содержимое, которое требуется отфильтровать.
      4. В разделе Фильтр выберите Выбрать один, а затем введите критерии фильтра. В поле
      • Фильтры можно применить только к одному диапазону ячеек на листе за раз.
      • Когда фильтр применяется к столбцу, в других столбцах в качестве фильтров можно использовать только значения, видимые в текущем отфильтрованном диапазоне.
      • В окне фильтра отображаются только первые 10 000 уникальных записей списка.

      Фильтрация по конкретному числу или диапазону чисел

      1. Щелкните ячейку в диапазоне или таблице, которую хотите отфильтровать.
      2. На вкладке Данные выберите Фильтр. На вкладке
      3. Выберите стрелку Стрелка, показывающая, что столбец отфильтрованв столбце, содержав содержимое, которое требуется отфильтровать.
      4. В разделе Фильтр выберите Выбрать один, а затем введите критерии фильтра. В поле
      5. В поле рядом с всплывающим меню введите число, которое хотите использовать.
      6. В зависимости от сделанного выбора вам может быть предложено выбрать дополнительные условия. Чтобы добавить еще условия, в окне
      • Фильтры можно применить только к одному диапазону ячеек на листе за раз.
      • Когда фильтр применяется к столбцу, в других столбцах в качестве фильтров можно использовать только значения, видимые в текущем отфильтрованном диапазоне.
      • В окне фильтра отображаются только первые 10 000 уникальных записей списка.
      • Вместо фильтрации можно использовать условное форматирование, которое позволяет четко выделить верхние или нижние числовые значения среди данных.

      Фильтрация по цвету шрифта, цвету ячеек или наборам значков

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

      На вкладке

      1. В диапазоне ячеек или столбце таблицы щелкните ячейку с определенным цветом, цветом шрифта или значком, по которому вы хотите выполнить фильтрацию.
      2. На вкладке Данные выберите Фильтр.
      3. Выберите стрелку в столбце, содержав содержимое, которое требуется отфильтровать.
      4. В разделе Фильтр во всплывающем меню По цвету щелкните Цвет ячейки, Цвет шрифта или Значок ячейки и выберите цвет.

      Фильтрация пустых ячеек

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

      На вкладке

      1. Щелкните ячейку в диапазоне или таблице, которую хотите отфильтровать.
      2. На панели инструментов Данные выберите Фильтр.
      3. Выберите стрелку в столбце, содержав содержимое, которое требуется отфильтровать.
      4. В области (Выделить все) прокрутите список вниз и установите флажок (Пустые).

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

      Фильтрация для поиска определенного текста

      1. Щелкните ячейку в диапазоне или таблице, которую хотите отфильтровать.
      2. На вкладке Данные выберите Фильтр. На вкладке
      3. Выберите стрелку в столбце, содержавом содержимое, которое требуется отфильтровать.
      4. В разделе Фильтр выберите Выбрать один, а затем во всплывающем меню выполните одно из следующих действий.
        Цель фильтрации диапазона Операция
        Строки с определенным текстом Содержит или Равно.
        Строки, не содержащие определенный текст Не содержит или Не равно.
      5. В поле рядом с всплывающим меню введите текст, которое хотите использовать.
      6. В зависимости от сделанного выбора вам может быть предложено выбрать дополнительные условия. Чтобы добавить еще условия, в окне
        Задача Операция
        Фильтрация столбца или выделенного фрагмента таблицы при истинности обоих условий И.
        Фильтрация столбца или выделенного фрагмента таблицы при истинности одного из двух или обоих условий Или.

      Фильтрация по началу или окончанию строки текста

      1. Щелкните ячейку в диапазоне или таблице, которую хотите отфильтровать.
      2. На панели инструментов Данные выберите Фильтр. На вкладке
      3. Выберите стрелку в столбце, содержав содержимое, которое требуется отфильтровать.
      4. В разделе Фильтр выберите Выбрать один, а затем во всплывающем меню выполните одно из следующих действий.
        Условие фильтрации Операция
        Начало строки текста Начинается с.
        Окончание строки текста Заканчивается на.
        Ячейки, которые содержат текст, но не начинаются с букв Не начинаются с.
        Ячейки, которые содержат текст, но не оканчиваются буквами Не заканчиваются.
      5. В поле рядом с всплывающим меню введите текст, которое хотите использовать.
      6. В зависимости от сделанного выбора вам может быть предложено выбрать дополнительные условия. Чтобы добавить еще условия, в окне
        Задача Операция
        Фильтрация столбца или выделенного фрагмента таблицы при истинности обоих условий И.
        Фильтрация столбца или выделенного фрагмента таблицы при истинности одного из двух или обоих условий Или.

      Использование подстановочных знаков для фильтрации

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

      1. Щелкните ячейку в диапазоне или таблице, которую хотите отфильтровать.
      2. На панели инструментов Данные выберите Фильтр. На вкладке
      3. Выберите стрелку в столбце, содержав содержимое, которое требуется отфильтровать.
      4. В разделе Фильтр выберите Выбрать один и выберите любой параметр.
      5. В текстовом поле введите свои условия, используя подстановочные знаки. Например, чтобы в результате фильтрации найти оба слова «год» и «гид», введите г?д.
      6. Выполните одно из указанных ниже действий.
        Используемый знак Чтобы найти
        ? (вопросительный знак) Любой символ Пример: условию «стро?а» соответствуют результаты «строфа» и «строка»
        Звездочка (*) Любое количество символов Пример: условию «*-восток» соответствуют результаты «северо-восток» и «юго-восток»
        Тильда (~) Вопросительный знак или звездочка Например, там~? находит «там?»

      Удаление и повторное применение фильтра

      Выполните одно из указанных ниже действий.

      Удаление определенных условий фильтрации

      Щелкните стрелку в столбце, который содержит фильтр, а затем выберите Очистить фильтр.

      Удаление всех фильтров, примененных к диапазону или таблице

      Выберите столбцы диапазона или таблицы, к которым применены фильтры, а затем на вкладке Данные выберите Фильтр.

      Удаление или повторное применение стрелок фильтра в диапазоне или таблице

      Выберите столбцы диапазона или таблицы, к которым применены фильтры, а затем на вкладке Данные выберите Фильтр.

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

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

      Таблица с примененным фильтром «Первые 4 элемента»

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

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

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

      При фильтрации учитывайте следующие рекомендации.

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

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

      Дополнительные сведения

      Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.

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

      Суть запроса на выборку – выбрать из исходной таблицы строки, удовлетворяющие определенным критериям (подобно применению стандартного Фильтра ). Произведем отбор значений из исходной таблицы с помощью формул массива . В отличие от применения Фильтра ( 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)

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

      В файле примера приведено решение на листе 12. Актуальная цена.

  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *