pb macro masquer onglet

foxbox545

XLDnaute Nouveau
Bonjour tout le monde,

je vous expose mon problème:

J'ai dans un premier temps créé des commandboutons sur ma première feuille. Lorsque je clique sur ces boutons ils me mène chacun sur une feuille différentes (c'est une macro que j'avais configuré). Jusque la tout fonctionne à la perfection. Cependant mon fichier excel comporte un grand nombre de feuille, je dirais même un trop grand nombre. Ainsi j'ai créé une macro masqueongletsaufun:

Sub MasqueOngletSaufUn()
Dim nbonglet As Byte
For nbonglet = 1 To ThisWorkbook.Sheets.Count
If Sheets(nbonglet).Name <> "Nom de l'onglet à garder" Then
Sheets(nbonglet).Visible = 0
End If
Next
End Sub

qui fonctionne elle aussi très bien.
J'en arrive maintenant à mon problème: les macros attribuées au commandbutons et la macro masqueongletsaufun ne sont pas compatible !!! En fait, lorsque je lance la macro masquer les onglets et que je clique ensuite sur un de mes boutons un msg d'erreur s'affiche.

Ainsi mon objectif serait: de masquer tous les onglet sauf un (celui comportant les commandboutons) mais il faudrait que lorsque je clique sur un de mes boutons, la page qui lui est attribué s'ouvre. Comment faire?

je suis conscient que mon msg n'est pas très clair mais jspr sincérement que vous pourrez m'aider. Merci d'avance
 

Larson

XLDnaute Junior
Re : pb macro masquer onglet

Bonjour,

sans fichier exemple, effectivement, ca manque un peu de clareté. :eek:

Un petit indice toutefois : dans les macros qui doivent afficher un onglet, as tu fais un sheets("xxx").visible= true avant de faire un sheets("xxx").select ?
 

ROGER2327

XLDnaute Barbatruc
Re : pb macro masquer onglet

Bonjour Larson
(...) Un petit indice toutefois : dans les macros qui doivent afficher un onglet, as tu fais un sheets("xxx").visible= true avant de faire un sheets("xxx").select ? (...)
Je ne pense pas que ce soit un problème, mais nous serons fixés lorsque notre ami aura déposé son classeur de démonstration.​
Bonne journée.
ROGER2327
 

foxbox545

XLDnaute Nouveau
Re : pb macro masquer onglet

dsl je suis nouveau sur le forum et je rencontre un problème au momen d'intégrer ma pièce jointe. Celle ci est trop volumineuse (elle dépense 48ko) et même Zipé elle pèse pas moins de 2.30mo cment dois je faire pour la soumettre?
 

foxbox545

XLDnaute Nouveau
Re : pb macro masquer onglet

Voila ci joint mon classeur

Je vais essayer de reformuler mes objectifs de façon un peu plu clair.
j'aimerais qu'il n'apparaisse comme feuille que l'onglet "carte" lorque l'on ouvre le fichier. Mais j'aimerais aussi que lorsque l'on clique sur un des boutons présent dans l'onglet carte la macro associé au bouton s'éxécute.

merci encore
 

Pièces jointes

  • tableau hotels régionaux TEST.zip
    25.6 KB · Affichages: 36

ROGER2327

XLDnaute Barbatruc
Re : pb macro masquer onglet

Re...
Code:
[COLOR="DarkSlateGray"]Private Sub Workbook_Open()
Dim n As Long
   For n = 1 To Me.Sheets.Count
      If Me.Sheets(n).Name <> "Carte" Then Me.Sheets(n).Visible = False
   Next n
End Sub[/COLOR]
placé dans le module ThisWorkbook masque toutes les feuilles sauf Carte à l'ouverture du classeur.
Code:
[COLOR="DarkSlateGray"]Private Sub CommandButton1_Click()
   Sheets("Ouest").Visible = True
   Sheets("Ouest").Activate
End Sub[/COLOR]
rend visible et active la feuille Ouest.​
Bon courage.
ROGER2327
 

foxbox545

XLDnaute Nouveau
Re : pb macro masquer onglet

Merci beaucoup ça marche !!
J'ai encore un dernier service à de demander. J'aimerais créer une macro qui me renverais à ma page carte en masquant tous les autres onglets mais cela sur commande (autrement dit cette macro serait la même dans son concept que celle que tu m'as fournis précedemment mais il faudrait que celle ci s'effectue sur commande via un bouton par exemple).
exemple: j'ouvre mon fichier, je clique sur le bouton "ouest" qui va m'amener sur un nouvel onglet. Pb: lorsque je reviens sur la feuille "carte", l'onglet "ouest" est toujours affiché. j'aimerais donc faire une macro me permettant d'effectuer la même opération que celle que tu m'a fourni précedemment (cad qui masque les onglet autre que "carte") mais que cela se fasse sur commande via un bouton par exemple. Je ne sais pas comment faire puisque ta macro ne semble fonctionner que dans ThisWorkBook.

Merci
 

Discussions similaires

Réponses
6
Affichages
333

Statistiques des forums

Discussions
312 451
Messages
2 088 519
Membres
103 875
dernier inscrit
Farouka