Afficher tout avant de supprimer

thomasmbai

XLDnaute Nouveau
Bonjour,

Dans un de mes classeurs, à chaque fois que je lance une mise à jour des données je voudrais qu'il commence par effacer complêtement la feuille2. Aussi j'avais rédigé le code suivant :
Code:
Cells.Select
    Selection.ClearContents

Je me suis rendu compte que lorsqu'un filtre était activé, il efface tout sauf les cases défiltrées. Ce qui est logique mais contraire à ce que je souhaiterais. Alors j'ai utilisé la fonction ShowAllData comme suit :
Code:
    ActiveSheet.ShowAllData
    Cells.Select
    Selection.ClearContents

C'est parfait... cela fonctionne très bien. En revanche quand aucun filtre n'est activé j'ai le droit au débogage. Dès qu'un filtre est activé, cela fonctionne à nouveau.

Comment faire ? Je pense que la seule solution est de faire une formule si... Avec if(si filtres activés;alors ShowAllData;ClearContents). Mais comment exprimer la condition "si filtres activés" ?

Merci d'avance pour votre aide
 

Discussions similaires

Statistiques des forums

Discussions
312 492
Messages
2 088 936
Membres
103 987
dernier inscrit
Doctami