Динамическая фильтрация таблиц excel

Расширенный фильтр и немного магии

У подавляющего большинства пользователей Excel при слове «фильтрация данных» в голове всплывает только обычный классический фильтр с вкладки Данные — Фильтр (Data — Filter):

advanced-filter1.png

Такой фильтр — штука привычная, спору нет, и для большинства случаев вполне сойдет. Однако бывают ситуации, когда нужно проводить отбор по большому количеству сложных условий сразу по нескольким столбцам. Обычный фильтр тут не очень удобен и хочется чего-то помощнее. Таким инструментом может стать расширенный фильтр (advanced filter), особенно с небольшой «доработкой напильником» (по традиции).

Основа

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

advanced-filter2.png

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

Именно в желтые ячейки нужно ввести критерии (условия), по которым потом будет произведена фильтрация. Например, если нужно отобрать бананы в московский «Ашан» в III квартале, то условия будут выглядеть так:

advanced-filter3.png

Чтобы выполнить фильтрацию выделите любую ячейку диапазона с исходными данными, откройте вкладку Данные и нажмите кнопку Дополнительно (Data — Advanced). В открывшемся окне должен быть уже автоматически введен диапазон с данными и нам останется только указать диапазон условий, т.е. A1:I2:

advanced-filter5.png

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

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

advanced-filter6.png

Добавляем макрос

«Ну и где же тут удобство?» — спросите вы и будете правы. Мало того, что нужно руками вводить условия в желтые ячейки, так еще и открывать диалоговое окно, вводить туда диапазоны, жать ОК. Грустно, согласен! Но «все меняется, когда приходят они ©» — макросы!

Работу с расширенным фильтром можно в разы ускорить и упростить с помощью простого макроса, который будет автоматически запускать расширенный фильтр при вводе условий, т.е. изменении любой желтой ячейки. Щелкните правой кнопкой мыши по ярлычку текущего листа и выберите команду Исходный текст (Source Code). В открывшееся окно скопируйте и вставьте вот такой код:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A2:I5")) Is Nothing Then
        On Error Resume Next
        ActiveSheet.ShowAllData
        Range("A7").CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("A1").CurrentRegion
    End If
End Sub

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

advanced-filter-work.gif

Так все гораздо лучше, правда? :)

Реализация сложных запросов

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

Критерий Результат
гр* или гр все ячейки начинающиеся с Гр, т.е. Груша, Грейпфрут, Гранат и т.д.
=лук все ячейки именно и только со словом Лук, т.е. точное совпадение
*лив* или *лив ячейки содержащие лив как подстроку, т.е. Оливки, Ливер, Залив и т.д.
=п*в слова начинающиеся с П и заканчивающиеся на В т.е. Павлов, Петров и т.д.
а*с слова начинающиеся с А и содержащие далее С, т.е. Апельсин, Ананас, Асаи и т.д.
=*с слова оканчивающиеся на С
=???? все ячейки с текстом из 4 символов (букв или цифр, включая пробелы)
=м??????н все ячейки с текстом из 8 символов, начинающиеся на М и заканчивающиеся на Н, т.е. Мандарин, Мангостин  и т.д.
=*н??а все слова оканчивающиеся на А, где 4-я с конца буква Н, т.е. Брусника, Заноза и т.д.
>=э все слова, начинающиеся с Э, Ю или Я
<>*о* все слова, не содержащие букву О
<>*вич все слова, кроме заканчивающихся на вич (например, фильтр женщин по отчеству)
= все пустые ячейки
<> все непустые ячейки
>=5000 все ячейки со значением больше или равно 5000
5 или =5 все ячейки со значением 5
>=3/18/2013 все ячейки с датой позже 18 марта 2013 (включительно)

Тонкие моменты:

  • Знак * подразумевает под собой любое количество любых символов, а ? — один любой символ.
  • Логика в обработке текстовых и числовых запросов немного разная. Так, например, ячейка условия с числом 5 не означает поиск всех чисел, начинающихся с пяти, но ячейка условия с буквой Б равносильна Б*, т.е. будет искать любой текст, начинающийся с буквы Б.
  • Если текстовый запрос не начинается со знака =, то в конце можно мысленно ставить *.
  • Даты надо вводить в штатовском формате месяц-день-год и через дробь (даже если у вас русский Excel и региональные настройки).

Логические связки И-ИЛИ

Условия записанные в разных ячейках, но в одной строке — считаются связанными между собой логическим оператором И (AND):

advanced-filter3.png

Т.е. фильтруй мне бананы именно в третьем квартале, именно по Москве и при этом из «Ашана».

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

advanced-filter7.png

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

advanced-filter8.png

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

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

  • Суперфильтр на макросах
  • Что такое макросы, куда и как вставлять код макросов на Visual Basic
  • Умные таблицы в Microsoft Excel

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

GIF

Чтобы увидеть видео включите в браузере GIF-Анимацию.

Чтобы создать динамический фильтр перейдите во вкладку «ЁXCEL» Главного меню, нажмите кнопку «Таблицы», выберите пункт «Динамический фильтр», в выпавшем меню выберите команду «Задать динамический фильтр»:

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

Динамический фильтр будет создан.

Чтобы удалить динамический фильтр перейдите во вкладку «ЁXCEL» Главного меню, нажмите кнопку «Таблицы», выберите пункт «Динамический фильтр», в выпавшем меню выберите команду «Удалить динамический фильтр»:

Динамический фильтр

Динамический фильтр будет удален.

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

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

Динамическая фильтрация данных с одного листа на другой в Excel


Динамическая фильтрация данных с одного листа на другой в Excel

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

1. Сначала определите имя диапазона для исходных данных, выберите диапазон данных, который вы хотите отфильтровать, и введите имя диапазона в поле Имя Box, а затем нажмите Enter ключ, см. снимок экрана:

фильтр документов на другой лист 1

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

фильтр документов на другой лист 2

3, Затем нажмите OK кнопка, таблица была создана для диапазона данных, затем откройте новый рабочий лист, на котором вы хотите найти результат фильтрации, и нажмите Данные > Из других источников > Из Microsoft Query, см. снимок экрана:

фильтр документов на другой лист 3

4. В Выберите источник данных диалоговое окно, щелкните Файлы Excel * в Databases список, см. снимок экрана:

фильтр документов на другой лист 4

5. Затем нажмите OK кнопку, чтобы перейти к Выберите книгу диалог, справа Справочники поле со списком, выберите папку, в которой находится активная книга, а затем щелкните имя вашей текущей книги слева Имя базы данных список, см. снимок экрана:

фильтр документов на другой лист 5

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

фильтр документов на другой лист 6

7. Затем вы должны добавить заголовки столбцов из Доступные таблицы и столбцы коробку в Столбцы в вашем запросе поле, выбрав заголовки и нажав фильтр документов на другой лист addbutton кнопку, см. снимок экрана:

фильтр документов на другой лист 7

8, Затем нажмите Download кнопка перейти к Мастер запросов — Фильтрация данных В диалоговом окне укажите критерии фильтрации, по которым вы хотите выполнять фильтрацию, см. снимок экрана:

фильтр документов на другой лист 8

9. Затем нажмите Download > Download кнопки для перехода к Мастер запросов — Готово диалоговое окно, в этом диалоговом окне выберите Вернуть данные в Microsoft Excel вариант, см. снимок экрана:

фильтр документов на другой лист 9

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

фильтр документов на другой лист 10

11, Наконец, нажмите OK кнопка, данные фильтра были импортированы в новый лист, см. снимок экрана:

фильтр документов на другой лист 11

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

фильтр документов на другой лист 12


Фильтровать данные по нескольким критериям или другим конкретным условиям, например по длине текста, с учетом регистра и т. Д.

Kutools for ExcelАвтора Суперфильтр feature — это мощная утилита, вы можете применить эту функцию для выполнения следующих операций:

  • Фильтровать данные по нескольким критериям; Фильтровать данные по длине текста;
  • Фильтровать данные по верхнему / нижнему регистру; Дата фильтрации по году / месяцу / дню / неделе / ​​кварталу

документ-супер-фильтр1


Демонстрация: динамическая фильтрация данных с одного листа на другой в Excel


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

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

Что-то вроде того, что показано ниже:

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

Посмотреть видео — Создание окна поиска с динамическим фильтром Excel

Этот динамический фильтр Excel можно создать в 3 этапа:

  1. Получение уникального списка предметов (в данном случае стран). Это будет использоваться при создании раскрывающегося списка.
  2. Создание поля поиска. Здесь я использовал поле со списком (элемент управления ActiveX).
  3. Установка данных. Здесь я бы использовал три вспомогательных столбца с формулами для извлечения совпадающих данных.

Вот как выглядят необработанные данные:

ПОЛЕЗНЫЙ СОВЕТ: почти всегда полезно преобразовать данные в таблицу Excel. Вы можете сделать это, выбрав любую ячейку в наборе данных и используя сочетание клавиш Control + T.

Шаг 1 — Получение уникального списка предметов

  1. Выберите все страны и вставьте его в новый лист.
  2. Выберите список стран -> Перейти к данным -> Удалить дубликаты.
  3. В диалоговом окне «Удалить дубликаты» выберите столбец, в котором есть список, и нажмите «ОК». Это удалит дубликаты и даст вам уникальный список, как показано ниже:
  4. Еще один дополнительный шаг — создать именованный диапазон для этого уникального списка. Сделать это:
    • Перейдите на вкладку «Формула» -> «Определить имя»
    • В диалоговом окне определения имени:
      • Имя: CountryList
      • Объем: Рабочая тетрадь
      • Относится к: = UniqueList! $ A $ 2: $ A $ 9 (у меня есть список на отдельной вкладке с именем UniqueList в A2: A9. Вы можете ссылаться на него, где бы ни находился ваш уникальный список)

ПРИМЕЧАНИЕ. Если вы используете метод «Удалить дубликаты» и расширяете свои данные, добавляя больше записей и новые страны, вам придется повторить этот шаг еще раз. Как вариант, вы также можете составить формулу, чтобы сделать этот процесс динамичным.

Шаг 2 — Создание окна поиска с динамическим фильтром Excel

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

Мы можем использовать поле со списком в Excel, чтобы создать этот фильтр поля поиска. Таким образом, всякий раз, когда вы вводите что-либо в поле со списком, это также отражается в ячейке в реальном времени (как показано ниже).

Вот как это сделать:

  1. Перейдите на вкладку разработчика -> Элементы управления -> Вставить -> Элементы управления ActiveX -> Поле со списком (элементы управления ActiveX).
    • Если у вас нет видимой вкладки разработчика, вот шаги, чтобы включить ее.
  2. Щелкните в любом месте листа. Он вставит поле со списком.
  3. Щелкните правой кнопкой мыши поле со списком и выберите «Свойства».
  4. В окне свойств внесите следующие изменения:
    • Связанная ячейка: K2 (вы можете выбрать любую ячейку, в которой вы хотите отображать входные значения. Мы будем использовать эту ячейку при настройке данных).
    • ListFillRange: CountryList (это именованный диапазон, который мы создали на шаге 1. Это покажет все страны в раскрывающемся списке).
    • MatchEntry: 2-fmMatchEntryNone (это гарантирует, что слово не будет автоматически завершено при вводе)
  5. Выбрав поле со списком, перейдите на вкладку разработчика -> Элементы управления -> щелкните режим дизайна (это выведет вас из режима дизайна, и теперь вы можете ввести что угодно в поле со списком. Теперь все, что вы вводите, будет отражено в ячейке K2 в настоящее время)

Шаг 3 — Установка данных

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

Столбец помощника 1: Введите серийный номер для всех записей (в данном случае 20). Для этого вы можете использовать формулу ROWS ().

Столбец помощника 2: Во вспомогательном столбце 2 мы проверяем, соответствует ли текст, введенный в поле поиска, тексту в ячейках столбца страны.

Это можно сделать с помощью комбинации функций ЕСЛИ, ЕЧИСЛО и ПОИСК.

Вот формула:

= ЕСЛИ (ЕЧИСЛО (ПОИСК ($ K $ 2; D4)); E4; "")

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

Если есть совпадение, эта формула возвращает номер строки, в противном случае возвращается пустое значение. Например, если поле со списком имеет значение «США», все записи со страной как «США» будут иметь номер строки, а все остальные будут пустыми («»).

Столбец помощника 3: В вспомогательном столбце 3 нам нужно собрать все номера строк из вспомогательного столбца 2, сложенные вместе. Для этого мы можем использовать комбинацию формул IFERROR и SMALL. Вот формула:

= ЕСЛИОШИБКА (МАЛЕНЬКАЯ ($ F $ 4: $ F $ 23; E4); "")

Эта формула складывает все совпадающие номера строк вместе. Например, если поле со списком имеет значение US, все номера строк с «US» складываются вместе.

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

= ЕСЛИОШИБКА (ИНДЕКС ($ B $ 4: $ D $ 23, $ G4, COLUMNS ($ I $ 3: I3)), "")

Эта формула состоит из 2 частей:
ПОКАЗАТЕЛЬ — Это извлекает данные на основе номера строки.
ЕСЛИ ОШИБКА — Если нет данных, возвращается пустое значение.

Вот снимок того, что вы наконец получили:

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

Проявите творческий подход! Попробуйте несколько вариаций

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

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

Как всегда, большинство моих статей вдохновлено вопросами / ответами моих читателей. Я хотел бы получить ваши отзывы и поучиться у вас. Оставляйте свои мысли в разделе комментариев.

Примечание. Если вы используете Office 365, вы можете использовать функцию ФИЛЬТР, чтобы быстро фильтровать данные по мере ввода. Это проще, чем метод, показанный в этом руководстве.

Filters are the most commonly used functionalities for filtering out any particular result in a large data set. Dynamic filters searches are used by large companies like Google, Amazon, Youtube, Flipkart, etc. where we just type a single character and it starts showing the recommended result. In this article, we will learn how to create a dynamic excel filter search box with the help of an example. In this example, we will create a dynamic excel filter search box that will search and filters the data based on what is typed in the search box.

Step By Step Implementation of the filter search box 

Follow the following steps to implement filter search box:

Step 1: First, we will open the Microsoft Excel application, and we will define the following columns Course Name and Course Link. And add the data to it. You can define your own columns and data as per your requirements.

 Open-the-Microsoft-Excel-application

Once you choose your table style, excel will give you a popup where you need to check “My table has the header“.

Step 2: Now, we will create a filter and search output layout. For this select some different cells (here, we will choose D1) and name it GFG Search Filter. We will beautify our filter by formatting it. For this go to Home > Styles > Cell Styles and choose Good formatting style.

Create-a-filter-and-search-output-layout

Step 3: In this step, we will make our Developer option available in excel toolbar. For this, go to any of the tools(here, we are choosing Draw) and then right-click on it and select “Customize the Ribbon..” option.

 Select-Customize-the-Ribbon-option

The excel will open pop-up options, there we need to check the Developer checkbox and click on OK. This will enable the Developer option and make it available in the excel top toolbar.

Open-pop-up-options

Step 4: Now, we will insert a text box for the search filter. For this, we will go to Developer > Insert > Click On Textbox

Insert-a-text-box-for-the-search-filter

We can put our textbox anywhere we want in our excel. Here, we are keeping it below our “GFG Search Filter cell.

GFG-Search-Filter-cell

Step 5: In this step, we will link our text box with a cell(Here, we will link it with cell E1). So that, if we will type anything in our search box it will also get typed in the cell. For this, we will double click on the text box, which will open a new window “Microsoft Visual Basic for Application“. There in the Properties-Textbox tab, we will link it with our E1 cell.

Open-a-new-window-Microsoft-Visual-Basic-for-Application

Now, we need to unselect the “Design Mode” in order to check our linked cell is working properly or not.

Step 6: Before moving further we need to change our table name, which we will use in the filter script. For this select any cell of the table and go to the Table Design tab and change the table name. (Here, we are changing it to tbl_data).

Goto-the-Table-Design-tab-and-change-the-table-name

Step 7: In this step, we will write the VBA(Visual Basics for Application) scripts. This script will filter the data depending on what is entered in the textbox.

Private Sub TextBox1_Change()
Application.ScreenUpdating = False
ActiveSheet.ListObjects("tbl_data").Range.AutoFilter Field:=2, Criteria1:= "*" & [E1] & "*", Operator:=xlFilterValues
Application.ScreenUpdating = True
End Sub

In the above script, we can see in the first line the script is running over the TextBox1. We have used “Application.ScreenUpdating = False” this will hide the searching operation. we have used our table name “tbl_data” and the cell name “E1“. Now, the excel will filter for the data entered in cell E1 from the table tbl_data and once it gets completed we will be updating the result from “Application.ScreenUpdating = True” this will finally show the completed task outcome.

Once we are done with our script we need to save it for this click on the save button from the VBA toolbar.

Click-on-the-save-button-from-the-VBA-toolbar

This will open a new tab asking save as a macro-free workbook. Click on Yes and save it.

Click-on-Yes-and-save-it

Step 8: In this step, we will align the textbox to enhance the design. For this, Go to Developer > Select the Design Mode. After this, we will hold our text box and move it to cell E1 and hide it.

Note: Do not forget to unselect the Design Mode from the Developer option.

Output

Here, we will test our Dynamic Search Filter.

Расширенный фильтр Excel – великолепная альтернатива регулярным выражениям

Всегда казалось странным, что Excel не поддерживает регулярные выражения (кои в среде программистов зовут регулярками или регэкспами). С их помощью делают сложную сортировку и фильтрацию. Инструмент SeoTools plugin for Excel поддерживает регулярки, но, как и большинство дополнительных ресурсов для Excel, работает только на платформе ПК. Эта статья предназначена, в основном, для пользователей Mac (мы не рекламируем SeoTools).

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

Немного теории

Всегда казалось странным, что Excel не поддерживает регулярные выражения (кои в среде программистов зовут регулярками или регэкспами). С их помощью делают сложную сортировку и фильтрацию. Инструмент SeoTools plugin for Excel поддерживает регулярки, но, как и большинство дополнительных ресурсов для Excel, работает только на платформе ПК. Эта статья предназначена, в основном, для пользователей Mac (мы не рекламируем SeoTools).

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

Подготовка к работе с расширенным фильтром

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

Расширенный фильтр находится:

Для ПК: Данные > Сортировка и фильтр >Дополнительно.

Для Мак: Данные > Сортировка и фильтр > Фильтр > Расширенный фильтр

Пользователи Mac могут щёлкнуть ПКМ по таблице и выбрать нужный пункт из контекстного меню. На ПК такой возможности нет.

Ещё один момент — база данных должна иметь заголовки столбцов, как показано ниже.

Небольшой совет

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

Базовые операторы

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

  • = равенство, т.е. левая и правая часть должна совпасть: =билет [включит все ячейки, содержащие билет]
  • <> не равно, левая и правая часть не должны совпасть: <> https://www.aviasales.ru/mag* [исключаем данный адрес (блог)]
  • ‘ апостроф преобразует формулу в текст, если поставить его первым в ячейке: ‘=купить авиабилет
  • > больше чем: >500
  • >= больше или равно: B4-C4>=3
  • < меньше чем: C6<D6
  • <= меньше или равно: <=3

Заголовки

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

Набор условий

Вот три базовых конструкции для множественных условий:

ИЛИ: Если имеется несколько критериев и отбор нужен при совпадении хотя бы одного, используется логический оператор ИЛИ. При использовании таблицы условий это достигается расположением критериев вертикально на разных строках. Приведённый пример демонстрирует это:

Фильтр отберёт строки, для которых выполняется хотя бы одно из условий, т.е. либо Позиция меньше 11, либо Количество больше 1000. Оператор ИЛИ можно использовать и для одного столбца. В таком случае, все критерии располагаются друг под другом в целевом столбце.

И: Если необходимо одновременное соблюдение всех критериев, применяется логический оператор И. Для этого критерии располагают на одной строке.

Данный пример отбирает строки, где в столбце Ключевые слова встречается слово «купить» и нет слова «самолёт», также значение в Позиция больше 7, а значение в Среднемесячное количество больше 1000. Помним, что звёздочка обозначает любое количество знаков. В нашем примере будут отобраны строки, в которых встречается «купить» на любой позиции внутри ячейки. Обратите внимание, что отсев идёт по слову «самолёт», «самолет» вполне проходит.

ОБА ОПЕРАТОРА: Можно блеснуть своим умением, применив оба оператора для установки критериев.

Такая таблица условий слегка обескураживает. Но этот фильтр всего лишь отбирает строки, в которых присутствует слово «купить» или «аэрофлот», при этом нет слов «самолет» или «самолёт», а значения последнего столбца больше 1000.

Примечание: Чтобы получить текст вместо формул, достаточно поставить апостроф перед операторами сравнения: ‘=купить или ‘<>самолёт. Майкрософт на своём сайте советует излишне сложный способ, предлагая заключить в двойные кавычки всё выражение, а перед ним ставить знак равенства: =»=купить«.

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

Промежуток: Если необходимо получить данные, лежащие в некотором промежутке, можно применить следующий приём:

Эти условия отберут ключевые слова, для которых Среднемесячное количество находится в промежутке от 3700 до 10000.

Формулы: Это действительно мощный инструмент. Вместо таблицы критериев можно использовать формулы.

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

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

  • Формула должна возвращать логическое значение ЛОЖЬ или ИСТИНА;
  • Заголовки над формулами должны отличаться от заголовков базы данных, можно вообще использовать пустую строку;
  • Формула должна ссылаться на ячейки первой строки под заголовками базы данных;
  • Ссылки на проверяемые ячейки базы должны быть относительными: вида С4, при абсолютных, таких как $C$4 — значение формул будет статичным, т.е. всегда ЛОЖЬ или всегда ИСТИНА.

Общий алгоритм

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

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

Данные > Сортировка и фильтр >Дополнительно для ПК. Для Мак: Данные > Сортировка и фильтр > Фильтр > Расширенный фильтр.

Откроется меню. Здесь приведён скриншот Excel 2013, но все пункты совпадают с Mac.

Шаг 2: Выберите, где будут размещаться отобранные данные. В большинстве случаев разумнее определить «другое место», это оставит неизменным исходный массив данных. Но выбор за вами.

Шаг 3: Для исходного диапазона Excel по умолчанию отбирает всю «таблицу». Это можно изменить, исключив ненужные столбцы. Но Excel позволит выбрать только прямоугольный диапазон. Чтобы отобрать столбцы с пропусками, введите названия целевых столбцов в свободных ячейках и укажите их адрес для диапазона вывода. В Дополнительных примерах приводится подробное пояснение.

Шаг 4: Для установки диапазона условий щёлкните внутри поля и выделите соответствующий диапазон на листе. Если нужно свернуть меню, нажмите на значок выбора диапазона справа от поля.

Шаг 5: Если выбран пункт Cкопировать результат в другое место, укажите адрес в поле Поместить результат в диапазон. Можно указать единичную ячейку, тогда она станет верхней левой выводимого диапазона, или выбрать ячейки с введёнными названиями нужных столбцов.

Шаг 6: Если нужны только уникальные записи поставьте флажок. К сожалению, большинство людей используют исключительно эту функцию.

Шаг 7: Жмём OK, смотрим на результат.

Шаг 8: Если список фильтровался на месте, можно сбросить фильтр, нажав Очистить, но это верно для ПК. Данный пункт расположен выше пункта Дополнительно. На Маке присутствует аналог — Очистить фильтр, но он недоступен. Ещё один довод в пользу фильтрации на новое место. Чтобы сбросить фильтр нужно отменить действие — нажать Command-Z, или подключить стандартный фильтр.

Дополнительные примеры

1. Исключить слова

<> В данном контексте значит не содержит

2. Получить ключевые слова первой десятки

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

3. Вывести ключевые слова, для которых Cреднемесячное количество лежит в промежутке [5000, 10000]

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

4. Содержит хотя бы одно из слов: «купить», «аэрофлот». Не содержит слово «туту», и значение в столбце Среднемесячное количество больше 500

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

5. Ключевые слова содержат «аэрофлот» и Среднемесячное количество больше 500

Как и в предыдущем примере, первый знак в ячейке — апостроф.

6. Ключевые слова, для которых Позиция меньше 3, или Среднемесячное количество больше 1000

Для диапазона условий ИЛИ наличие пустого столбца — не помеха.

7. Ключевые слова содержат, по крайней мере, 1 знак перед словом «аэрофлот»

Сочетание ?* требует наличия хотя бы 1 знака, но может содержать больше (эквивалент .+ в регулярках)

8. Ключевые слова, для которых Среднемесячное количество больше 8000

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

9. Ключевые слова, для которых Среднемесячное количество больше 10000, а Конкурентность меньше 0,75

Используем функцию И в формуле.

10. Ключевые слова первой десятки по критерию Среднемесячное количество

Формула отбирает ячейки, значение которых больше или равно 10-му по величине числу. Само число получаем функцией НАИБОЛЬШИЙ. Обратите внимание, сравниваемая ячейка получена относительной ссылкой, а диапазон поиска для функции — абсолютной.

Заключительные рекомендации

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

  • Если случайно включить в диапазон условий пустые ячейки, расположенные под заполненными строками, то Excel воспримет их как условия, включающие всё.
  • Если вывод результатов идёт на другой лист, то запускать фильтр нужно с этого листа. Excel разрешает вывод результатов только на тот лист, с которого запущен фильтр.
  • Если фильтрации идёт на месте, то не получится последовательно применить несколько фильтров. Применение нового аннулирует предыдущие результаты.
  • Как уже писалось выше, пункт Очистить фильтр не работает в Excel 2011. Для сброса фильтра используйте отмену действия (Command-Z) или подключите обычный фильтр. В 2016 это исправили (прим. пер).
  • При выводе результатов в другое место полезно совместное применение оператора <>. Кроме того, можно транспонировать полученные данные: выделить, Копировать > Специальная вставка > флажок транспонировать.

Совет для продвинутых пользователей Excel

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

Однако существует хороший выход — макрос. Достаточно подключить несложный макрос и назначить его запуск по сочетанию клавиш или по щелчку на кнопке. Вместо кнопки можно использовать картинку. Например, такую:

Если вы затратите немного времени на изучение расширенного фильтра, то поймёте простоту и мощь данного инструмента.

Содержание

  • Применение «умной» таблицы
    • Создание «умной» таблицы
    • Наименование
    • Растягивающийся диапазон
    • Автозаполнение формулами
    • Строка итогов
    • Сортировка и фильтрация
    • Преобразование таблицы в обычный диапазон
  • Вопросы и ответы

Умные таблицы в Microsoft Excel

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

Применение «умной» таблицы

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

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

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

Создание «умной» таблицы

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

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

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

    Переформатирование диапазона в Умную таблицу в Microsoft Excel

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

    Переформатирование диапазона в Умную таблицу через вкладку Вставка в Microsoft Excel

    Но самый быстрый вариант — это после выделения ячейки или массива использовать нажатие горячих клавиш Ctrl+T.

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

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

  3. Окно с диапазоном таблицы в Microsoft Excel

  4. После этого действия диапазон данных будет преобразован в «умную» таблицу. Это будет выражаться в приобретении некоторых дополнительных свойств у данного массива, а также в смене его визуального отображения, согласно выбранному ранее стилю. Об основных возможностях, которые предоставляют эти свойства, мы и поговорим далее.

Умная таблица создана в Microsoft Excel

Урок: Как сделать таблицу в Excel

Наименование

После того, как «умная» таблица сформирована, ей автоматически будет присвоено имя. По умолчанию это наименование типа «Таблица1», «Таблица2» и т.д.

  1. Чтобы посмотреть, какое имя имеет наш табличный массив, выделяем любой его элемент и перемещаемся во вкладку «Конструктор» блока вкладок «Работа с таблицами». На ленте в группе инструментов «Свойства» будет располагаться поле «Имя таблицы». В нем как раз и заключено её наименование. В нашем случае это «Таблица3».
  2. Наименование таблицы в Microsoft Excel

    Lumpics.ru

  3. При желании имя можно изменить, просто перебив с клавиатуры название в указанном выше поле.

Имя таблицы изменено в Microsoft Excel

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

Растягивающийся диапазон

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

  1. Выделяем любую ячейку в первой же строчке ниже табличного массива. Делаем в ней произвольную запись.
  2. Установкеа произвольного значение в ячейку в Microsoft Excel

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

Строка добавлена в таблицу в Microsoft Excel

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

Формула подтянулась в новую строку таблицы в Microsoft Excel

Аналогичное добавление произойдет, если мы произведем запись в столбце, который находится у границ табличного массива. Он тоже будет включен в её состав. Кроме того, ему автоматически будет присвоено наименование. По умолчанию название будет «Столбец1», следующая добавленная колонка – «Столбец2» и т. д. Но при желании их всегда можно переименовать стандартным способом.

Новый столбец включен в состав таблицы в Microsoft Excel

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

наименования столбцов в Microsoft Excel

Урок: Как добавить новую строку в Excel

Автозаполнение формулами

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

  1. Выделяем первую ячейку пустого столбца. Вписываем туда любую формулу. Делаем это обычным способом: устанавливаем в ячейку знак «=», после чего щелкаем по тем ячейкам, арифметическое действие между которыми собираемся выполнить. Между адресами ячеек с клавиатуры проставляем знак математического действия («+», «-», «*», «/» и т.д.). Как видим, даже адрес ячеек отображается не так, как в обычном случае. Вместо координат, отображающихся на горизонтальной и вертикальной панели в виде цифр и латинских букв, в данном случае в виде адреса отображаются наименования колонок на том языке, на котором они внесены. Значок «@» означает, что ячейка находится в той же строке, в которой размещается формула. В итоге вместо формулы в обычном случае

    =C2*D2

    мы получаем выражение для «умной» таблицы:

    =[@Количество]*[@Цена]

  2. Формула умной таблицы в Microsoft Excel

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

Столбец автозаполнен формулами в Microsoft Excel

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

Функция в Умной таблице в Microsoft Excel

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

Адреса в формуле отображаются в обычном режиме в Microsoft Excel

Строка итогов

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

  1. Для того, чтобы активировать суммирование, выделяем любой табличный элемент. После этого перемещаемся во вкладку «Конструктор» группы вкладок «Работа с таблицами». В блоке инструментов «Параметры стилей таблиц» устанавливаем галочку около значения «Строка итогов».
    Установка строки итогов в Microsoft Excel

    Для активации строки итогов вместо вышеописанных действий можно также применить сочетание горячих клавиш Ctrl+Shift+T.

  2. После этого в самом низу табличного массива появится дополнительная строка, которая так и будет называться – «Итог». Как видим, сумма последнего столбца уже автоматически подсчитана с помощью встроенной функции ПРОМЕЖУТОЧНЫЕ.ИТОГИ.
  3. Строка итог в Microsoft Excel

  4. Но мы можем подсчитать суммарные значения и для других столбцов, причем использовать при этом совершенно разные виды итогов. Выделяем щелчком левой кнопки мыши любую ячейку строки «Итог». Как видим, справа от этого элемента появляется пиктограмма в виде треугольника. Щелкаем по ней. Перед нами открывается список различных вариантов подведения итогов:
    • Среднее;
    • Количество;
    • Максимум;
    • Минимум;
    • Сумма;
    • Смещенное отклонение;
    • Смещенная дисперсия.

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

  5. Варианты суммирования в Microsoft Excel

  6. Если мы, например, выберем вариант «Количество чисел», то в строке итогов отобразится количество ячеек в столбце, которые заполнены числами. Данное значение будет выводиться все той же функцией ПРОМЕЖУТОЧНЫЕ.ИТОГИ.
  7. Количество чисел в Microsoft Excel

  8. Если вам недостаточно тех стандартных возможностей, которые предоставляет список инструментов подведения итогов, описанный нами выше, то жмем на пункт «Другие функции…» в его самом низу.
  9. Переход в другие функции в Microsoft Excel

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

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

Читайте также:
Мастер функций в Экселе
Функция промежуточные итоги в Excel

Сортировка и фильтрация

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

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

  3. Если в столбце расположены текстовые значения, то можно применить сортировку согласно алфавиту или в обратном порядке. Для этого нужно выбрать соответственно пункт «Сортировка от А до Я» или «Сортировка от Я до А».
    Варианты сортировки для текстового формата в Microsoft Excel

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

    Значения отсортированы от Я до А в Microsoft Excel

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

    Варианты сортировки для формата даты в Microsoft Excel

    Для числового формата тоже будет предложено два варианта: «Сортировка от минимального к максимальному» и «Сортировка от максимального к минимальному».

  4. Варианты сортировки для числового формата в Microsoft Excel

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

  7. После этого останутся видны только строки, около которых в настройках фильтрации вы оставили галочки. Остальные будут спрятаны. Что характерно, значения в строке «Итог» тоже изменятся. Данные отфильтрованных строк не будут учитываться при суммировании и подведении других итогов.
    Фильтрация произведена в Microsoft Excel

    Это особенно важно, учитывая то, что при применении стандартной функции суммирования (СУММ), а не оператора ПРОМЕЖУТОЧНЫЕ.ИТОГИ, в подсчете участвовали бы даже скрытые значения.

Функция СУММ в Microsoft Excel

Урок: Сортировка и фильтрация данных в Экселе

Преобразование таблицы в обычный диапазон

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

  1. Выделяем любой элемент табличного массива. На ленте перемещаемся во вкладку «Конструктор». Щелкаем по иконке «Преобразовать в диапазон», которая расположена в блоке инструментов «Сервис».
  2. Переход к преобразованию Умной таблицы в диапазон в Microsoft Excel

  3. После этого действия появится диалоговое окно, в котором будет спрашиваться, действительно ли мы хотим преобразовать табличный формат в обычный диапазон данных? Если пользователь уверен в своих действиях, то следует нажать на кнопку «Да».
  4. Подтверждение преобразования таблицы в диапазон в Microsoft Excel

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

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

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

#Руководства

  • 5 авг 2022

  • 0

Как из сотен строк отобразить только необходимые? Как отфильтровать таблицу сразу по нескольким условиям и столбцам? Разбираемся на примерах.

Иллюстрация: Meery Mary для Skillbox Media

Ксеня Шестак

Рассказывает просто о сложных вещах из мира бизнеса и управления. До редактуры — пять лет в банке и три — в оценке имущества. Разбирается в Excel, финансах и корпоративной жизни.

Фильтры в Excel — инструмент, с помощью которого из большого объёма информации выбирают и показывают только нужную в данный момент. После фильтрации в таблице отображаются данные, которые соответствуют условиям пользователя. Данные, которые им не соответствуют, скрыты.

В статье разберёмся:

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

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

Фильтры в Excel работают по тому же принципу. Пользователь выбирает параметры данных, которые ему нужно отобразить, — и Excel убирает из таблицы всё лишнее.

Разберёмся, как это сделать.

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

Таблица, в которой хранятся данные о продажах автосалона
Скриншот: Excel / Skillbox Media

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

Шаг 1. Выделяем ячейку внутри таблицы — не обязательно ячейку столбца «Менеджер», любую.

Чтобы настроить фильтрацию, выбираем любую ячейку таблицы
Скриншот: Excel / Skillbox Media

Шаг 2. На вкладке «Главная» нажимаем кнопку «Сортировка и фильтр».

Нажимаем кнопку «Сортировка и фильтр»
Скриншот: Excel / Skillbox Media

Шаг 3. В появившемся меню выбираем пункт «Фильтр».

Жмём сюда, чтобы применить фильтрацию ко всем столбцам таблицы
Скриншот: Excel / Skillbox Media

То же самое можно сделать через кнопку «Фильтр» на вкладке «Данные».

Второй способ установить фильтрацию
Скриншот: Excel / Skillbox Media

Шаг 4. В каждой ячейке шапки таблицы появились кнопки со стрелками — нажимаем на кнопку столбца, который нужно отфильтровать. В нашем случае это столбец «Менеджер».

Нажимаем кнопку столбца, который нужно отфильтровать, — появляется меню фильтра
Скриншот: Excel / Skillbox Media

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

Выбираем менеджера, данные о продажах которого нужно показать в таблице
Скриншот: Excel / Skillbox Media

Готово — таблица показывает данные о продажах только одного менеджера. На кнопке со стрелкой появился дополнительный значок. Он означает, что в этом столбце настроена фильтрация.

Результат фильтрации по одному параметру
Скриншот: Excel / Skillbox Media

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

Разберём на примере.

Выше мы уже отфильтровали таблицу по одному параметру — оставили в ней продажи только менеджера Соколова П. Добавим второй параметр — среди продаж Соколова П. покажем автомобили дороже 1,5 млн рублей.

Шаг 1. Открываем меню фильтра для столбца «Цена, руб.» и нажимаем на параметр «Выберите».

Открываем меню фильтра столбца «Цена, руб.» и жмём сюда
Скриншот: Excel / Skillbox Media

Шаг 2. Выбираем критерий, которому должны соответствовать отфильтрованные ячейки.

В нашем случае нужно показать автомобили дороже 1,5 млн рублей — выбираем критерий «Больше».

Выбираем критерий фильтрации
Скриншот: Excel / Skillbox Media

Шаг 3. Дополняем условие фильтрации — в нашем случае «Больше 1500000» — и нажимаем «Применить фильтр».

Дополняем условие фильтрации
Скриншот: Excel / Skillbox Media

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

Результат фильтрации по двум параметрам
Скриншот: Excel / Skillbox Media

Расширенный фильтр позволяет фильтровать таблицу по сложным критериям сразу в нескольких столбцах.

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

Принцип работы расширенного фильтра следующий:

  • Копируют шапку исходной таблицы и создают отдельную таблицу для условий фильтрации.
  • Вводят условия.
  • Запускают фильтрацию.

Разберём на примере. Отфильтруем отчётность автосалона по трём критериям:

  • менеджер — Шолохов Г.;
  • год выпуска автомобиля — 2019-й или раньше;
  • цена — до 2 млн рублей.

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

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

Создаём таблицу для условий фильтрации
Скриншот: Excel / Skillbox Media

Шаг 2. В созданной таблице вводим критерии фильтрации:

  • «Год выпуска» → <=2019.
  • «Цена, руб.» → <2000000.
  • «Менеджер» → Шолохов Г.

В таблице с условиями вводим критерии фильтрации
Скриншот: Excel / Skillbox Media

Шаг 3. Выделяем любую ячейку исходной таблицы и на вкладке «Данные» нажимаем кнопку «Дополнительно».

Выделяем ячейку исходной таблицы и нажимаем на «Дополнительно», чтобы вызвать меню расширенного фильтра
Скриншот: Excel / Skillbox Media

Шаг 4. В появившемся окне заполняем параметры расширенного фильтра:

  • Выбираем, где отобразятся результаты фильтрации: в исходной таблице или в другом месте. В нашем случае выберем первый вариант — «Фильтровать список на месте».
  • Диапазон списка — диапазон таблицы, для которой нужно применить фильтр. Он заполнен автоматически, для этого мы выделяли ячейку исходной таблицы перед тем, как вызвать меню.

Эти параметры меню выставлены программой автоматически
Скриншот: Excel / Skillbox Media
  • Диапазон условий — диапазон таблицы с условиями фильтрации. Ставим курсор в пустое окно параметра и выделяем диапазон: шапку таблицы и строку с критериями. Данные диапазона автоматически появляются в окне параметров расширенного фильтра.

Выделяем диапазон таблицы с условиями
Скриншот: Excel / Skillbox Media

Шаг 5. Нажимаем «ОК» в меню расширенного фильтра.

Готово — исходная таблица отфильтрована по трём заданным параметрам.

Итог работы расширенного фильтра
Скриншот: Excel / Skillbox Media

Отменить фильтрацию можно тремя способами:

1. Вызвать меню отфильтрованного столбца и нажать на кнопку «Очистить фильтр».

Первый способ снять фильтрацию
Скриншот: Excel / Skillbox Media

2. Нажать на кнопку «Сортировка и фильтр» на вкладке «Главная». Затем — либо снять галочку напротив пункта «Фильтр», либо нажать «Очистить фильтр».

Второй способ снять фильтрацию
Скриншот: Excel / Skillbox Media

3. Нажать на кнопку «Очистить» на вкладке «Данные».

Третий способ снять фильтрацию
Скриншот: Excel / Skillbox Media

Научитесь: Excel + Google Таблицы с нуля до PRO
Узнать больше

Понравилась статья? Поделить с друзьями:
  • Динамическая таблица в excel что это такое
  • Динамическая таблица в excel скачать
  • Динамическая таблица в excel примеры
  • Динамическая таблица в excel по условию
  • Динамическая таблица в excel 2010