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 

それが動作する可能性があります。それは除いてすべてを表示されるように

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

しかしどのように私はこのコラム

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

を並べ替えることができます。

+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 エンド もしActiveWorkbook.ActiveSheet.AutoFilterModeその後 ActiveWorkbookの場合。 ActiveSheet.ShowAllData End If '文の場合は、それらのいずれも起動しません。 – skatun

0

これは、それを解決し、以下の

Cells.AutoFilter 
0

てみてください空白?

関連する問題