Menu Sluiten

Verwijder alle filters uit je werkmap

Functies vba excel macro

Ken je het probleem dat tabellen soms niet alle waardes tonen, omdat er door een andere gebruiker van de sheet al een filter staat ingesteld. Indien dat één tabel betreft dan kun je dat gemakkelijk oplossen door met de hand het filter van deze tabel te verwijderen binnen Excel. Zijn dat meerdere tabellen dan loont het om deze actie af te vangen met een VBA script. 

Als je de onderstaande functie aanroept binnen je sub ( door ‘Call AlleFiltersVerwijderen‘) te schrijven dan zal hij binnen je werkmap alle filters verwijderen die ingesteld staan. 

Waar deze functie helemaal tot zijn recht komt is in de situatie dat jij vanuit een VBA script één of meer andere Excel bestanden opent en daar gegevens uit tabellen moet importeren. In dat geval is deze functie je enige optie om dat op een juiste manier te doen. Je zult de functie dan iets moeten aanpassen. Indien je deze code vlak na het openen van een bestand plaatst zal dit bestand het active workbook zijn. Je kunt in de onderstaande code dan ThisWorkbook.Worksheets vervangen door ActiveWorkbook.Worksheets.

Public Function AlleFiltersVerwijderen()

    Dim ws As Worksheet

    For Each ws In ThisWorkbook.Worksheets
         With ws
            If ws.AutoFilterMode Then
                If ws.FilterMode Then ws.ShowAllData
            End If
        End With
    Next

End Function

Als het goed is zijn nu alle filters uit je werkmap verwijderd. Wil je meer weten over hoe je kunt filteren met behulp van VBA? Lees het hier.

Heeft dit artikel je geholpen?

1 reactie

  1. Pingback:Filteren in een macro - Macro Excel Advies

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *