Автофильтр в Excel и его расширенные возможности
Автофильтр в Excel – встроенный режим фильтрации числовых и текстовых значений по определенным критериям в одном или сразу в нескольких столбцах. Он позволяет быстро организовать данные и скрыть лишние значения по условиям пользователя.
Автофильтром пользователь контролирует как отображаемые, так и скрытые данные таблиц. Так же в программе Excel можно создавать свои специальные пользовательские фильтры, которые могут быть хорошо приспособлены к нестандартным задачам. Процесс фильтрации данных выполняется не только по числовым или текстовым значениям, а так же и по цветам фона ячеек или шрифта. Данная возможность существенно расширяет возможности фильтра в определенных условиях.
Как сделать автофильтр в Excel
Для включения необходимо щелкнуть в любом месте таблицы с данными, перейти на вкладку «Данные» — «Сортировка и фильтр». Нажать кнопку «Фильтр». Или нажмите комбинацию горячих клавиш CTRL+SHIFT+L.

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

Если данные отформатированы как таблица, то автофильтр включается автоматически (стрелочки видны сразу).
Чтобы кнопки фильтрации в шапке таблицы стали доступны, нужно включить строку заголовков. Корректная работа автофильтра возможна только в том случае, если все значения в определенном диапазоне имеют одинаковый формат (числа, дата, текст и т.д.).
Сделаем фильтрацию числовых значений:
- Нажимаем кнопку автофильтра у заголовка столбца с числовыми значениями. Выбираем «Числовые фильтры» — раскрывается список условий.

- Выберем, например, «больше или равно». Откроется пользовательский автофильтр в Excel.

- Зададим в качестве критерия для фильтрации значение «3000». Введем эти цифры в поле напротив условия.

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

Чтобы снять фильтр, нажимаем на значок в заголовке столбца и выбираем «Снять фильтр…».

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

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

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

- Чтобы закрыть окно и выполнить условие поиска, жмем ОК.

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

- Чтобы отобразить данные за второе полугодие 2014 г., назначим критерий «После». В открывшемся окне «Пользовательского автофильтра» для критерия «После» напишем условие «01.06.2014». Выберем функцию «И». Назначим второй критерий – «До». Условие – «31.12.2014». Дату можно вводить вручную, а можно выбрать в «Календаре».

- После нажатия кнопки ОК пользователю становится доступна информация за второе полугодие 2014 года.

Отфильтруем текстовый диапазон ячеек:
- Нажимаем кнопку у заголовка «Наименование». При наведении курсора на «Текстовые фильтры» откроется список доступных операторов сравнения, по которым можно сделать отбор.

- Допустим, нам нужно отобразить информацию по товарам, в названии которых есть цифра «2». Выбираем критерий «Содержит». Вводим условие «2».

- После нажатия ОК.

При назначении условий для пользовательского автофильтра можно пользоваться элементами подстановки:

- «?» — заменяет один любой знак. Условие для фильтрации данных в столбце «Наименование» — «Содержит «1?»:
- «*» — заменяет несколько знаков.
В конце любого списка фильтров (числовых, текстовых, по дате) есть «Настраиваемый фильтр». Эта кнопка тоже открывает окно пользовательского автофильтра в Excel.
Пустые ячейки и промежуточные итоги
Когда таблица состоит из нескольких тысяч строк, многие ячейки могут содержать пустые значения. Чистить вручную долго и непродуктивно.
Отберем в диапазоне с пустыми ячейками ячейки со значениями:

- Выделяем диапазон с данными и щелкаем по кнопке «Фильтр» (чтобы у заголовков появились «стрелочки»).
- Нажимаем кнопку у заголовка первого столбца. В меню фильтрации выбираем «Выделить все». Убираем выделение напротив значения «Пустые».
- Чтобы выполнить команду, жмем ОК.
Все пустые строки будут удалены.
Если таблица имеет промежуточные итоги, то итоговая строка в Excel при применении автофильтра изменит свои значения.

Сменился диапазон – сумма стала иной.
Если после строки с промежуточными итогами таблица продолжается, то при фильтрации данных нужно выделять весь диапазон. Иначе программа может воспринять итоговую строку как окончание таблицы: все, что находится ниже, перестанет высвечиваться.
- Excel Formula Examples
- Создать таблицу
- Форматирование
- Функции Excel
- Формулы и диапазоны
- Фильтр и сортировка
- Диаграммы и графики
- Сводные таблицы
- Печать документов
- Базы данных и XML
- Возможности Excel
- Настройки параметры
- Уроки Excel
- Макросы VBA
- Скачать примеры
Добавить или удалить автофильтр в файле Excel (XLSX/XLS) с помощью С#
Форматы файлов XLSX и XLS часто используются для работы с огромными данными. Аналогичным образом автофильтры используются для организации данных в файлах Excel. Вы можете легко добавить или удалить автофильтр в файлах Excel с помощью Aspose.Cells for .NET API. Фильтры можно использовать для количественной оценки некоторых данных для извлечения некоторой значимой информации. Например, организация хочет отфильтровать месяцы с низкими продажами, чтобы разработать и улучшить свои стратегии. В этой статье мы рассмотрим фильтрацию данных с помощью автоматических фильтров в C#:
- Добавление или удаление автофильтра в файлах Excel — установка API
- Применение автофильтра к ячейкам в файлах Excel с помощью С#
- Добавить автофильтр даты в XLSX с помощью С#
- Добавить автофильтр динамической даты в XLSX с помощью С#
- Применить автофильтр пользовательских номеров в XLSX с C#
- Добавить пользовательский автофильтр с содержит с помощью C#
- Удалить или удалить автофильтр в Excel с помощью С#
Добавление или удаление автофильтра в файлах Excel — установка API#
Aspose.Cells for .NET API позволяет эффективно работать с электронными таблицами Excel. Вы можете программно создавать, редактировать или манипулировать XLS, XLSX и другими поддерживаемыми форматами с минимальным кодом. Вы можете загрузить и установить пакет MSI или ZIP из раздела загрузок или просто установить его через галерею NuGet в своем решении. Например, вы можете легко установить его в своей среде с помощью следующей команды:
Install-Package Aspose.Cells -Version 20.9.0
После успешной установки API давайте приступим к некоторым важным и полезным вариантам использования.
Применение автофильтра к ячейкам в файлах Excel с помощью С##
Вы можете применить автофильтр к определенному диапазону ячеек в файлах Excel. Это позволяет сортировать значения в порядке возрастания или убывания, а также использовать другие числовые фильтры, когда ячейки содержат числовые значения. Вам необходимо выполнить следующие шаги для применения автофильтра в файлах Excel с помощью C#:
- Откройте файл Excel и получите доступ к Рабочему листу.
- Создайте Автофильтр, указав определенный диапазон ячеек
- Сохранить выходной файл XLS/XLSX
Фрагмент кода показывает, как применить автофильтр к ячейкам в файле Excel с помощью C#:
// Создание экземпляра объекта Workbook // Открытие файла Excel через файловый поток Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook(dataDir + "book1.xls"); // Доступ к первому рабочему листу в файле Excel Aspose.Cells.Worksheet worksheet = workbook.Worksheets[0]; // Создание автофильтра путем указания диапазона ячеек строки заголовка worksheet.AutoFilter.Range = "A1:B1"; // Сохранение измененного файла Excel workbook.Save(dataDir + "output.xlsx");
Вы можете заметить автофильтр, добавленный в исходный файл XLSX, на снимке экрана ниже:

Добавить автофильтр даты в XLSX с помощью С##
Данные в файлах Excel часто содержат информацию, связанную с датами. Иногда вам может понадобиться изучить информацию, основанную на различных периодах времени, которые можно определить по датам. Например, давайте рассмотрим случай, когда нам нужно отфильтровать данные, относящиеся к январю 2018 года, тогда вам необходимо выполнить следующие шаги:
- Загрузить таблицу ввода
- Доступ к рабочему листу
- Добавьте фильтр даты и сохраните выходной файл
Следующий пример кода следует этим шагам и показывает, как добавить автофильтр даты в файлы Excel с помощью C#.
// Создание экземпляра объекта Workbook // Открытие файла Excel через файловый поток Workbook workbook = new Workbook(dataDir + "Date.xlsx"); // Доступ к первому рабочему листу в файле Excel Worksheet worksheet = workbook.Worksheets[0]; // Вызовите функцию AddDateFilter, чтобы применить фильтр worksheet.AutoFilter.AddDateFilter(0, DateTimeGroupingType.Month, 2018, 1, 0, 0, 0, 0); // Вызовите функцию обновления, чтобы обновить рабочий лист worksheet.AutoFilter.Refresh(); // Сохранение измененного файла Excel workbook.Save(dataDir + "FilteredDate.xlsx");
Добавить автофильтр динамической даты в XLSX с помощью С##
Поскольку мы уже обсуждали сценарий фильтрации данных по датам. Однако в некоторых случаях сценарий даты может быть немного более общим. Например, нам нужно отфильтровать данные за январь независимо от года. Такие требования можно легко обработать с помощью динамического фильтра даты, выполнив следующие действия:
- Загрузить исходный файл XLSX
- Доступ к рабочему листу
- Установите DynamicFilter для января.
- Сохранить выходной лист Excel
Этот пример является продолжением приведенного выше примера, где приведенный ниже фрагмент кода показывает, как добавить автофильтр динамической даты в файл Excel с помощью C#:
// Создание экземпляра объекта Workbook // Открытие файла Excel через файловый поток Workbook workbook = new Workbook(dataDir + "Date.xlsx"); // Доступ к первому рабочему листу в файле Excel Worksheet worksheet = workbook.Worksheets[0]; // Вызовите функцию DynamicFilter, чтобы применить фильтр worksheet.AutoFilter.DynamicFilter(0, DynamicFilterType.January); // Вызовите функцию обновления, чтобы обновить рабочий лист worksheet.AutoFilter.Refresh(); // Сохранение измененного файла Excel workbook.Save(dataDir + "FilteredDynamicDate.xlsx");
Применить автофильтр пользовательских номеров в XLSX с C##
Вы можете фильтровать данные на основе пользовательского диапазона чисел, используя Aspose.Cells для .NET API. Например, когда компании необходимо получить доступ к тому, сколько ее сотрудников достигли целей продаж. Точно так же может быть много возможностей, где этот метод фильтрации может помочь. Предположим, что нам нужно отфильтровать все данные, где числа находятся в диапазоне от 5 до 10 включительно, тогда вам необходимо выполнить следующие шаги:
- Создайте экземпляр объекта Workbook и загрузите входной файл
- Добавить пользовательский числовой фильтр на определенный лист
- Сохранить выходной файл Excel
На основе этих шагов в следующем коде показано, как добавить автофильтр по пользовательскому номеру с помощью C#:
// Создание экземпляра объекта Workbook // Открытие файла Excel через файловый поток Workbook workbook = new Workbook(dataDir + "Number.xlsx"); // Доступ к первому рабочему листу в файле Excel Worksheet worksheet = workbook.Worksheets[0]; // Вызов пользовательской функции для применения фильтра worksheet.AutoFilter.Custom(0, FilterOperatorType.GreaterOrEqual, 5, true, FilterOperatorType.LessOrEqual, 10); // Вызовите функцию обновления, чтобы обновить рабочий лист worksheet.AutoFilter.Refresh(); // Сохранение измененного файла Excel workbook.Save(dataDir + "FilteredNumber.xlsx");
Добавить пользовательский автофильтр с содержит с помощью C##
Сделав еще один шаг дальше от настраиваемого автофильтра по номерам, давайте узнаем, как добавить настраиваемый автофильтр, который можно использовать для отслеживания определенного текста с помощью оператора «Содержит фильтр». Может быть полезно искать слова, в которых какой-либо текст частично или полностью присутствует в данных. Для выполнения этих требований необходимо выполнить следующие шаги:
- Загрузить входной файл Excel с данными
- Укажите диапазон AutoFilter и FilterOperatorType.
- Сохранить выходной файл XLSX
В приведенном ниже фрагменте кода показано, как добавить пользовательский автофильтр с параметром «Содержит» с помощью C#:
// Создание экземпляра объекта Workbook, содержащего образцы данных Workbook workbook = new Workbook(dataDir + "sourseSampleCountryNames.xlsx"); // Доступ к первому рабочему листу в файле Excel Worksheet worksheet = workbook.Worksheets[0]; // Создание автофильтра путем указания диапазона ячеек worksheet.AutoFilter.Range = "A1:A18"; // Инициализировать фильтр для строк, содержащих строку «Ba» worksheet.AutoFilter.Custom(0, FilterOperatorType.Contains, "Ba"); //Обновите фильтр, чтобы показать/скрыть отфильтрованные строки worksheet.AutoFilter.Refresh(); // Сохранение измененного файла Excel workbook.Save(dataDir + "outSourseSampleCountryNames.xlsx");
Удалить или удалить автофильтр в Excel с помощью С##
Поскольку мы изучили различные сценарии добавления автофильтров в файлы Excel с помощью C#, давайте проверим наоборот. Случай использования удаления или удаления автофильтров из Excel одинаково важен и имеет решающее значение. Вам необходимо выполнить следующие шаги, чтобы удалить все автофильтры из файла XLSX:
- Загрузить исходный файл XLSX
- Переберите каждый рабочий лист и удалите автофильтры.
- Сохранить выходной файл
В следующем фрагменте кода показано, как удалить автофильтры из файлов Excel с помощью C#.
// Создание экземпляра объекта Workbook // Открытие файла Excel Workbook workbook = new Workbook(dataDir + "output.xlsx"); // Итерация по каждому рабочему листу foreach (var sheet in workbook.Worksheets) < // Удалить автофильтры sheet.RemoveAutoFilter(); >// Сохраните книгу workbook.Save(dataDir + "AutoFilter_Removed.xlsx", SaveFormat.Xlsx);
Вывод#
Aspose.Cells for .NET API предлагает различные готовые функции. Добавление, удаление или удаление автофильтра с помощью C# в .NET Framework выполняется просто и легко. Мы подробно обсудили несколько возможностей. Если у вас есть какие-либо сомнения или сомнения, свяжитесь с нами на Форум бесплатной поддержки.
Смотрите также#
- Aspose.Cells Product Family
- add autofilter in xlsx
- autofilter in excel
- remove autofilter
Автофильтр в EXCEL
Для нормальной работы автофильтра требуется «правильно» спроектированная таблица. Правильная с точки зрения MS EXCEL — это таблица без пустых строк/ столбцов, с заголовком, с однотипными данными в столбце (т.е. не нужно смешивать в одном столбце данные разных форматов, например текст и числа или числа и даты). Подробнее см. статью Советы по построению таблиц . Будем использовать именно такую, правильную таблицу (см. файл примера ).

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

Команда Фильтр также доступна на вкладке Главная ( Главная/ Редактирование/ Сортировка и фильтр/ Фильтр )

В строке заголовка появятся стрелки раскрытия фильтра.

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

Сначала отобразим только те строки, которые содержат в столбце Товар слово Гвозди ( Регистр букв не имеет значения). Сделаем это 2-мя способами.
Способ 1. Нажмем стрелку раскрытия фильтра. Затем нажмем на значение (Выделить все) — снимутся все галочки. Затем установите галочку напротив значения гвозди .

Нажмите ОК. В итоге отобразятся только те строки, которые содержат в столбце Товар значение Гвозди (т.е. строки со значениями Лучшие Гвозди или Гвозди 10 мм отобраны не будут). Понять, что применен фильтр очень просто: стрелка раскрытия фильтра изменит свой вид (на ней появится маленькая воронка), а номера отобранных строк станут синими. Если подвести курсор к стрелке раскрытия фильтра столбца, в котором используется фильтрация, отобразится всплывающая подсказка с фильтром, который используется в данном столбце, например, Товар : «Равно Гвозди». В строке состояния (внизу листа) отображается информация о примененном фильтре: «Найдено записей: 13 из 76».

Снять примененный фильтр можно несколькими способами:
- Нажмите стрелку раскрытия фильтра. Выберите пункт Снять фильтр с «Товар» или;
- Нажмите стрелку раскрытия фильтра, затем нажмите на значение (Выделить все) или;
- Выберите команду Очистить( Данные/ Сортировка и фильтр/ Очистить ) или;
- Выберите команду Очистить , но в другом меню ( Главная/ Редактирование/ Сортировка и фильтр/Очистить ) или;
- Нажмите сочетание клавиш CTRL+SHIFT+L (должна быть выделена любая ячейка таблицы). При этом фильтр будет выключен.
Способ 2. Нажмем стрелку раскрытия фильтра. Выберем Текстовый фильтр Равно.. . Появится диалоговое окно, введем значение гвозди или выберем его из выпадающего списка.

В результате получим тот же результат.
Примечание: Если в столбце содержится и текстовые значения и числа (пример «неправильной» таблицы), то MS EXCEL будет отображать меню Числовые фильтры только в том случае, если количество чисел в столбце больше чем текстовых значений. В противном случае будут отображено меню Текстовые фильтры .
Теперь используя Способ 2 рассмотрим настройку других текстовых фильтров. Например, установим фильтр для отбора строк, которые содержат в столбце Товар значения начинающиеся со слова Гвозди . В этом случае будут строки со значениями Гвозди и Гвозди 10 мм.
Для этого нажмем стрелку раскрытия фильтра. Выберем Текстовый фильтр Начинается с.. .

Введем значение Гвозди, в результате получим:

Аналогично можно настроить фильтр для отображения строк, у которых в столбце Товар значения заканчиваются на ; содержат или не содержат определенные значения.
Более того, в диалоговом окне Настраиваемый фильтр возможно использование Подстановочных знаков , которые могут сделать настройку фильтра очень гибкой. Но, как правило, сложные критерии фильтра не используются, т.к. их невозможно сохранить, в отличие от Расширенного фильтра . Единственное, что можно сделать — это использовать отмену последнего действия ( CTRL+Z ), который запоминает настройки фильтра. Например, применив последовательно 3 условия фильтрации можно используя комбинации CTRL+Z и CTRL+Y отменять и заново применять условия фильтрации (не выполняйте при этом никаких других действий кроме настройки фильтра!).
СОВЕТ : Т.к. условия отбора записей (настройки автофильтра) невозможно сохранить, то чтобы сравнить условия фильтрации одной и той же таблицы в разных случаях, скопируйте лист с исходной таблицей, затем примените нужные фильтры для оригинала таблицы и ее копии. Для сравнения результатов фильтрации используйте 2 окна (для каждой из таблиц). Для этого создайте новое окно ( Вид/ Окно/ Новое окно ), перейдите в новый лист, затем выберите требуемый вид отображения окон ( Вид/ Окно/ Упорядочить все/ Рядом ).

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

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

Числовой фильтр Первые 10 отберет 10 наибольших значений. Настройка этого фильтра позволяет отобрать и нужное количество наименьших значений.

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

Что значит 9 наибольших значений? В человеческом понимании это: 450; 300; 200; 100; 90; 87; 50; 40; 30. В понимании MS EXCEL — это 450; 300; 300; 300; 300; 200; 200; 200; 100, т.е. повторы также учитываются. Но это еще не все. Применим фильтр для отбора 9 наибольших значений в столбце Количество .

Вопреки ожиданиям будет отобрано не 9 значений, а 11. Дело в том, что 9-м наибольшим является число 100, которое повторяется еще 2 раза, т.е. в таблице 3 строки со значением 100 в столбце Количество . MS EXCEL естественно не знает какой из трех строк отдать предпочтение, поэтому отбирает все три! В итоге к 9 наибольшим добавляется еще 2 повтора, т.е. всего отбирается 11 строк.
Отбор по столбцу с датами
Если столбец содержит даты, то меню фильтра будет иметь еще более развернутый вид, чем в случае числовых столбцов (см. столбец Дата поставки ).

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

Причем можно выбрать или фильтр по цвету шрифта или фильтр по цвету ячейки, но не одновременно. Чтобы сделать это одновременно, продублируйте нужный столбец в таблице (вместе с форматированием) и примените в одном столбце фильтр по цвету шрифта, а в его копии фильтр по цвету ячейки.
Сортировка
Через меню фильтра также доступна сортировка таблицы. Текстовые значения могут быть отсортированы по алфавиту (от A до Z или от А до Я) или в обратном порядке. Числовые значения — по убыванию или возрастанию.

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

После сортировки столбца Товары от Я до А таблица будет разрушена! Это видно на рисунке ниже.

2. При сортировке столбцов скрытые строки не перемещаются. Перед сортировкой данных отобразите скрытые строки. Строки могут быть скрыты как через меню Главная/ Ячейки/ Формат/ Скрыть или отобразить так и после применения Автофильтра — в любом случае они не примут участия в сортировке!
3. Отменить сортировку таблица нельзя! Для отмены результатов сортировки нужно сразу выполнить команду Отмена последнего действия ( CTRL+Z ). Можно еще закрыть файл без сохранения, но есть риск потери других изменений.
СОВЕТ : Другой способ возвращения к первоначальной сортировке: заранее перед сортировкой создать дополнительный столбец с порядковыми номерами строк (вернуть прежнюю сортировку можно потом, заново отсортировав по нему).
4. Сортировку можно также можно осуществить с помощью меню Данные/ Сортировка и фильтр/ Сортировка . После нажатия кнопки меню будет отображено диалоговое окно.

В принципе оно дублирует функционал сортировки в автофильтре, но с его помощью можно осуществить сортировку с учетом регистра .
- Выделите ячейку таблицы.
- На вкладке Данные в группе Сортировка и фильтр выберите команду Сортировка (та же команда доступна через меню ( Главная/ Редактирование/ Сортировка и фильтр/ Настраиваемая сортировка. ).
- В диалоговом окне Сортировка выберите столбец по которому нужно произвести сортировку и порядок сортировки от А до Я.
- В диалоговом окне Сортировка нажмите кнопку Параметры .
- В диалоговом окне Параметры сортировки установите флажок Учитывать регистр .
- Дважды нажмите кнопку ОК .
Как видно из рисунка ниже значения гвозди (строчные буквы) располагаются выше, чем значения Гвозди (первая буква Прописная).

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

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

Значения Цемент нет в меню автофильтра, т.к. в качестве таблицы MS EXCEL рассматривает только строки 6-9, а строки 11 и 12 — это уже другая таблица, т.к. под таблицей MS EXCEL понимает диапазон ячеек окруженный пустыми строками и столбцами (исключение составляют таблицы в формате EXCEL 2007 ).
Другой вид неправильной таблицы — таблица с названиями и пояснениями, расположенными непосредственно над заголовками. Выделим любую ячейку таблицы и применим автофильтр — вместо строки заголовков стрелки раскрытия фильтра будут применены к названию таблицы!

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

Теперь для правильного установления фильтра необходимо сперва выделить ячейки заголовка, а только затем нажать сочетание клавиш CTRL+SHIFT+L ). Это не всегда удобно, поэтому над строкой заголовков всегда располагайте пустую строку, которую можно скрыть.
Как отменить автофильтры листа в excel
Ребята, а зачем макрос для «Отобразить все»? Мы не ищем легких путей? :)) Не проще кнопку вынести на панель инструментов? Вот тут даже написано как это сделать: http://www.planetaexcel.ru/tip.php?aid=45 (даже слишком подробно).
А если нужно не отобразить все, а вообще удалить автофильтр, то у меня кнопке назначен вот такой микромакрос:
Selection.AutoFilter
End Sub
С кнопкой «Отобразить всё» согласен. А вот с макросом, чтобы автофильтр включать-выключать — нет. Для этого можно пункт меню перенести поближе на панель, чтобы быстрее было к нему добираться 🙂
Пользователь
Сообщений: 5192 Регистрация: 16.01.2013
29.11.2008 09:34:20
Ребята, а зачем макрос для «Отобразить все»? Мы не ищем легких путей? :)) Не проще кнопку вынести на панель инструментов? Вот тут даже написано как это сделать: http://www.planetaexcel.ru/tip.php?aid=45 (даже слишком подробно).
А если нужно не отобразить все, а вообще удалить автофильтр, то у меня кнопке назначен вот такой микромакрос:
Selection.AutoFilter
End Sub
макрос — он для использования в других макросах.. 🙂 это ВАм сразу ясно есть автофильтр на листе или нет, а макросы — они глупые..
хотя и к макросу можно кнопку прикрутить — в общем оно универсальнее..
Живи и дай жить..
Пользователь
Сообщений: 5192 Регистрация: 16.01.2013
29.11.2008 09:39:47
а по контексту вопроса — первый ответ самый подходящий, ибо понятно, что человеку надо только сбросить все условия, а не выключить автофильтр, причем кодом, а не ручками..