Удаление только настроек фильтрации (Microsoft Excel)
На многих своих рабочих листах Рой широко использует сортировку и фильтрацию.
На вкладке «Данные» ленты в группе «Сортировка и фильтр» есть инструмент «Очистить». Этот инструмент очищает все настройки фильтрации и сортировки. Рою обычно требуется очистить настройки фильтрации, но он хотел бы, чтобы очистка не влияла на его настройки сортировки. Он задается вопросом, есть ли способ либо изменить поведение этого инструмента, либо очистить только настройки фильтрации за одно действие.
Это была интересная проблема для исследования, и потребовалось немало усилий. Похоже, что Excel позволяет вам определять параметры сортировки для фильтров, которые вы применяете к набору данных. Чтобы увидеть это в действии, выполните следующие действия:
-
Откройте книгу, в которой есть данные, или создайте книгу, в которой есть данные, которые вы можете сортировать и фильтровать.
-
Выберите ячейку в данных.
-
Откройте вкладку «Данные» на ленте.
-
Щелкните инструмент «Фильтр» в группе «Сортировка и фильтр». Excel помещает стрелки раскрывающегося списка вверху каждого столбца ваших данных.
-
Щелкните стрелку раскрывающегося списка в верхней части одного из столбцов.
Обратите внимание, что в появившемся раскрывающемся меню можно выбрать данные для фильтрации в столбце. Однако именно сюда люди обычно перестают смотреть. Интересно, что вверху выпадающего меню есть элементы управления сортировкой. Если вы используете эти элементы управления, то отфильтрованные результаты, отображаемые в Excel, фильтруются в соответствии с вашими требованиями.
Если на этом этапе включить средство записи макросов (после применения фильтра, включающего сортировку) и щелкнуть инструмент «Очистить», Excel записывает именно этот макрос:
Sub Macro1() ' ' Macro1 Macro ' ' ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Clear ActiveSheet.ShowAllData End Sub
Обратите внимание, что в записанном макросе есть две строки. Первая строка очищает настройки сортировки, а вторая очищает все настройки фильтрации. Если вы записываете те же шаги, не выбрав предварительно параметр сортировки в раскрывающемся меню фильтрации в верхней части столбца, тогда Excel не будет включать первую строку.
Результатом этого является то, что вы можете легко создать свой собственный однострочный макрос, который удаляет любую фильтрацию, но сохраняет любые настройки сортировки, сделанные в раскрывающемся списке фильтрации. Простой макрос будет выглядеть так:
Sub ClearFilter() ActiveSheet.ShowAllData End Sub
Следует отметить, что если вы отключите фильтрацию (щелкнув второй раз на инструменте «Фильтр»), Excel автоматически очистит все настройки фильтрации и сортировки, которые вы могли применить. Если вы хотите сохранить настройки сортировки — особенно сложные настройки сортировки — за пределами структуры фильтрации, то было бы лучше записать макрос шагов, которые вы выполняете для сортировки данных.
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (12254) применим к Microsoft Excel 2007, 2010, 2013 и 2016.