Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

utiliser la fonction 'afficher tout' avec une macro

  • Initiateur de la discussion Initiateur de la discussion toto
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

toto

Guest
bonjour forum,

je souhaiterai une fois de plus les conseil du forum pour résoudre un petit problème.

je souhaiterai faire une macro qui reproduierai la fonction afficher tout.

en effet j'ai une page avec de nombreuse ligne et de nombreux filtres et je souhaiterai faciliter les choses en mettant une macro qui me réaffichera tout.

merci d'avance pour tout.

cordialement toto.
 
Bonjour toto et le Forum !!!

et voilà ton code à mettre :

Sub AutoFilterShowAll()
With Sheets("Feuil1")
If .FilterMode = True Then .ShowAllData
End With
End Sub

je suis fier d'être le 1er à répondre ;-) lol

Tchao
 
Bonjour Toto et Lapou

Bien joué pour la place de premier et aussi pour la qualité de ta formule en effet le piège est qu'il fallait vérifier si le filtre était actif avant de lui demander d'afficher "tout" sinon ... plantage assuré.
Bravo
@+
GD
 
Re : utiliser la fonction 'afficher tout' avec une macro

Avant de relancer ce vieux sujet, merci à ceux qui aident les débutants qui n'en veulent comme moi !

Ma question :

J'aimerai à l'ouverture de mon fichier, que le classeur s'ouvre sur le bon onglet et que des macros déja existantes se lancent et notament une macro qui permet d'afficher tout (d'où le lien avec le topic ;-p)

Voilà ce que j'ai saisi :
Sub DEMARRAGE()
Private Sub Workbook_Open()
On Error GoTo ExistePas
Sheets(Format(Now, "yyyy")).Activate
On Error GoTo 0
Exit Sub

ExistePas: Sheets(1).Activate
Module1.ActiverMacroPerso

End Sub

... mes feuilles ont toute pour titre une année, le module ci-dessus permet d'ouvrir systématiquement sur l'année en cours (j'ai des collègues un peu bourrins, ça limite la casse). Maintenant, j'aimerai améliorer encore la chose avec le "afficher tout" qui marche bien une fois le fichier ouvert, mais pas directement à l'ouverture ^^

Merci d'avance pour vos lumières hô grands dieux manipulateurs chevronnés d'Excel !
 
Re : utiliser la fonction 'afficher tout' avec une macro

bonsoir

Ta macro ne s'exécute que si la page n'existe pas


Ou alors je n'ai rien compris (J'ai l'habitude)
 
Dernière édition:
Re : utiliser la fonction 'afficher tout' avec une macro

Bonsoir à tous


Au moins voila quelqu'un qui utilise le moteur de recherche du forum 😉


2004, cela nous rajeunit pas


Ceci dit:
ShowAllData

s'utilise quand un filtre est actif sur une feuille d'un classeur.

Cela ne sert pas à autre chose.
 
Re : utiliser la fonction 'afficher tout' avec une macro

Merci pour vos réponses... mais bon, ça marche pas :-/
Bref, je pense qu'il faut que je rectifie :

ça, ça marche :

Sub DEMARRAGE()
Private Sub Workbook_Open()
On Error GoTo ExistePas
Sheets(Format(Now, "yyyy")).Activate
On Error GoTo 0
Exit Sub

ExistePas: Sheets(1).Activate

End Sub

...et ça, ça me permet d'ouvrir systématiquement sur la feuille qui porte pour titre, l'année en cours... si j'ouvre ce fichier 3 ans après la dernière feuille, il est sensé s'ouvrir sur la dernière année créée.
Y a peut être plus simple, et je suis prenneur, mais la modif de Banzai m'ouvre le débogueur :-S

Mais sans aller jusqu'à refondre cette macro qui finalement, donne satisfaction, j'aimerais que sur sa lancée, la macro enlève tous les filtres s'ils existent.

Le module donné plus haut :
Sub AutoFilterShowAll()
With Sheets("Feuil1")
If .FilterMode = True Then .ShowAllData
End With
End Sub

Semble pouvoir assurer ce que je recherche, mais je n'arrive pas à l'intégrer sans que ça plante. D'autant que le "With Sheets("Feuil1")" ne marche que si ma feuille s'appelle "Feuil1", je peux le remplacer par "With ActiveSheet" ?

J'espère avoir été plus clair, et je vous remercie d'avance pour vos conseils avisés ;-)
 
Re : utiliser la fonction 'afficher tout' avec une macro

Bonjour

Testé et vérifié (Ou alors je ne comprends plus rien)

Dans ThisWorkBook colle

VB:
 Private Sub Workbook_Open()
  On Error Resume Next
  Sheets(Format(Now, "yyyy")).Activate
  If Err > 0 Then
    Sheets(1).Activate
  End If
  On Error GoTo 0
  Module1.ActiverMacroPerso
End Sub



et ensuite dans Module1


VB:
 Sub ActiverMacroPerso()
  With ActiveSheet
    If .FilterMode = True Then .ShowAllData
 End With
End Sub


Si la feuille (Année) existe elle sera activée sinon en cas d'erreur cela sera (Feuil1)

Ensuite le test se fera
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
406
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…