masquer les onglets automatiquement

ychc

XLDnaute Occasionnel
Bonjour à tous,

J'ai un fichier qui comporte toutes les semaines de l'année et à l'ouverture, seule l'onglet de la semaine en cours s'affiche.
Sur un onglet historique, j'ai créé un userform et un bouton pour afficher les onglets masqués.

Afin de ne pas laisser en permanence tous les onglets affichés, je souhaiterais masquer de nouveau les onglets inutiles au bout de deux minutes...et c'est là que j'ai besoin d'aide.

Ci joint le côde qui lance la macro.

Si quelqu'un a une solution et quelques lignes a insérer pour faire automatiquement se masquer les onglets.

Merci a vous.
Code:
Private Sub CommandButton1_Click()


    'macro 5
    'afficher la totalité des semaines
    
    Dim Ix As Integer
Ix = 1
While Ix < 53
    If Ix = Range("feuil1!C4").Value() Then
    Sheets("SEM" & Ix).Visible = True
    Sheets("SEM" & Ix).Activate
 Else
    Sheets("SEM" & Ix).Visible = True
    
    

End If
Ix = Ix + 1
Wend


  Sheets("Feuil1").Visible = False


Application.CommandBars("Ply").Enabled = False

Unload historiquesemaine

End Sub
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : masquer les onglets automatiquement

Bonjour ychc,

si j'ai bien compris la demande
Code:
Ix = 1
While Ix < 53
    If Ix = Range("feuil1!C4").Value() Then
    Sheets("SEM" & Ix).Visible = True
    Sheets("SEM" & Ix).Activate
 Else
    Sheets("SEM" & Ix).Visible = False
    
    

End If
Ix = Ix + 1
Wend
à+
Philippe
 

ychc

XLDnaute Occasionnel
Re : masquer les onglets automatiquement

Merci phlaurent de t'interesser à mon problème,

Mais je pense que je me suis mal expliqué,
Voilà, avec un exemple cela sera plus simple.

A l'ouverture du fichier, seulement 2 onglets sur 6 s'affichent.
En effet, pour ne pas emcombrer, seul l'onglet de la semaine en cours et un onglet "historique" s'affichent.
Les semaines non concernées restent masquées.

A l'ouverture de l'onglet "historique", j'ai mis un userform pour afficher volontairement les onglets de toutes les semaines.

Ce que je n'arrive pas à faire, c'est masquer automatiquement de nouveau les onglets inutiles au bout de 2 minutes par exemple, pour ne pas encombrer la page.

C'est à dire, afficher de nouveau uniquement l'onglet de la semaine en cours et l'onglet "historique".

J'espère avoir été plus précis.

Ci joint l'exemple.

Merci d'avance.
 

Pièces jointes

  • ex1.xlsm
    82.5 KB · Affichages: 34
  • ex1.xlsm
    82.5 KB · Affichages: 30

ychc

XLDnaute Occasionnel
Re : masquer les onglets automatiquement

non tout cela fonctionne,

c'est juste que je ne maîtrise pas les fonctions "time ou timer" ou autre fonctions de temps, qui me permettrais de lancer lors de ma macro, un chrono qui afficherait donc pendant X minutes la totalité des semaines, puis au bout du temps escomptés de nouveau les masquer.
 

ychc

XLDnaute Occasionnel
Re : masquer les onglets automatiquement

Merci philippe,

Voici ce que j'ai réussi a faire.
Je ne sais pas si c'est bien logique, mais c'est efficasse.

L'avantage, c'est que je peux afficher, mais aussi consulter les différentes pages.

Et au bout des dix secondes, les pages se masquent de nouveau.

Par contre, si je clic sur l'onglets historique par erreur et que je ne veux pas afficher les pages, je vais alors
cliquer sur la "croix rouge" de l'userform pour le fermer, mais je voudrais également me retrouver sur l'onglet de la semaine.

Je ne connais pas le code de cette petite croix rouge...

Si tu as une idée.

Merci
 

Pièces jointes

  • ex2.xlsm
    86.4 KB · Affichages: 42
  • ex2.xlsm
    86.4 KB · Affichages: 40

Discussions similaires

Statistiques des forums

Discussions
314 651
Messages
2 111 544
Membres
111 199
dernier inscrit
mavoungou regis