Excel 2013 VBA Alle filters verwijderen macro

Het lijkt erop dat oudere macro's niet werken. Ik heb de juiste beveiliging ingesteld om VBA macro's uit te voeren, maar wanneer ik een paar methoden heb geprobeerd om ALLE filters op een werkblad te wissen, krijg ik een compileerfout.

Dit is wat ik heb geprobeerd:


Sub AutoFilter_Remove()
'Deze macro verwijdert alle filtering om alle gegevens weer te geven, maar verwijdert de filterpijlen niet
ActiveSheet.ShowAllData
Einde

Ik heb knoppen op de bladen om alle filters te wissen voor het gebruiksgemak van de gebruikers, aangezien de bladen veel kolommen hebben met filters erop.

Probeer dit eens:

If ActiveSheet.AutoFilterMode Then ActiveSheet.ShowAllData
Commentaren (3)
Oplossing

Als er al een filter op het blad zit dan:

Sub Macro1()
    Cells.AutoFilter
End Sub

het verwijderen.

Commentaren (1)

Probeer zoiets als dit:

Sub ClearDataFilters()
'Clears filters on the activesheet. Will not clear filters if the sheet is protected.
On Error GoTo Protection
If ActiveWorkbook.ActiveSheet.FilterMode Or _
   ActiveWorkbook.ActiveSheet.AutoFilterMode Then _
   ActiveWorkbook.ActiveSheet.ShowAllData

Exit Sub
Protection:
If Err.Number = 1004 And Err.Description = _ 
    "ShowAllData method of Worksheet class failed" Then
    MsgBox "Unable to Clear Filters. This could be due to protection on the sheet.", _
    vbInformation
End If

End Sub

.FilterMode retourneert true als het werkblad in filtermodus staat. (Zie dit voor meer informatie.) Zie deze voor meer informatie over .AutoFilter.
En tenslotte, this geeft meer informatie over de .ShowAllData methode.

Commentaren (0)