2016-04-07 5 views
1

Я работаю со столами в excel и хочу удалить весь фильтр, который был установлен в любом из моих 52 столбцов, удалить жирный шрифт, цвета и т. Д. (Вернуться к нормальному форматированию).Удалить все активные фильтры из листа в excel

Как-то мой код этого не делает, любая идея, где проблема может быть?

'Clears filters on the activesheet. Will not clear filters if the sheet is protected. 
On Error Resume Next 
If ActiveWorkbook.ActiveSheet.FilterMode Or ActiveWorkbook.ActiveSheet.AutoFilterMode Then 
    ActiveWorkbook.ActiveSheet.ShowAllData 
End If 

'in case the sheet is protected 
ActiveWorkbook.Sheets("List").Cells.EntireColumn.Hidden = False 

ответ

0

Вы можете попробовать с этим вместо:

ActiveSheet.AutoFilter.ShowAllData 

Он может работать.

+0

То, что у меня есть в моем коде, который по какой-то причине не работает. – skatun

+0

Не совсем. Ваш код немного отличается. – Vityata

+0

это работает, за исключением того, что она не снимая сортировки: ActiveWorkbook.ActiveSheet.AutoFilter.ShowAllData – skatun

0
If ActiveSheet.AutoFilterMode Then ActiveSheet.Cells.AutoFilter 
If ActiveSheet.AutoFilterMode Then ActiveSheet.ShowAllData 
+0

'Если ActiveWorkbook.ActiveSheet.AutoFilterMode Тогда ActiveWorkbook.ActiveSheet.Cells.AutoFilter End If Если ActiveWorkbook.ActiveSheet.AutoFilterMode Тогда ActiveWorkbook. ActiveSheet.ShowAllData End Если 'Он не вызывает ни одного из них, если предложения. – skatun

0

Пожалуйста, попробуйте ниже

Cells.AutoFilter 
0

Это решило его:

ActiveWorkbook.Worksheets("List").ListObjects("FilterParts").Sort.SortFields.Clear 
ActiveSheet.ShowAllData 

Однако, как можно отсортировать этот столбец

Range("FilterParts[[#Headers],[POS NUMBER]]").Select 

так, что он показывает все, кроме заготовки?

Смежные вопросы