[RESOLU] ouvrir/fermer une feuill cachée d'un classeur grace à la touche d'un USForm

charbsou

XLDnaute Nouveau
bonjour,

j'ai un soucis d'erreur 1004 sur ma macro et je ne comprend pas pourquoi.

dans le this Workbook

Private Sub Workbook_activate() ' lorsque ce classeur est actif
Application.ScreenUpdating = False 'on masque l'éxécution des macro suivante
Sheets("objectif mois ").Visible = False ' la feuille objectif mois est masquée
End Sub


et dans l'userForm

Private Sub ObjectifDuMois_Click()

Sheets("objectif mois ").Select
'Sheets("objectif mois ").Visible = False 'on doit remettre ici comme dans thisisWorkbook que la feuille " " est masque)
End Sub



question supplementaire,
comment faire pour qu'un clic sur le bouton dans l'useur m'ouvre la feuille cache puis un second clic sur le meme bouton me referme la feuille.

merci
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

Re,

A noter, si tu veux sélectioner une feuille il faut qu'elle soit visible....
Code:
Private Sub ObjectifDuMois_Click()
Sheets("objectif mois ").Visible = True
Sheets("objectif mois ").Select
'Sheets("objectif mois ").Visible = False 'on doit remettre ici comme dans thisisWorkbook que la feuille " " est masque)
End Sub

bonne fin d'après midi
@+
 

Victor21

XLDnaute Barbatruc
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

Bonjour, charbsou.
Concernant la 1° question, on ne peut, sauf erreur, sélectionner une feuille cachée.
La solution : l'afficher, travailler dessus et la re-cacher.
Comme l'Application.ScreenUpdating est à false, cela ne se verra pas.
Concernant la 2° question, macro affectée au bouton :
sub bouton()
if Sheets("objectif mois ").Visible = False then Sheets("objectif mois ").Visible = true
if Sheets("objectif mois ").Visible = true then Sheets("objectif mois ").Visible = false
end sub
(non testé).

Edit : Bonjour, Pierrot 93
 

charbsou

XLDnaute Nouveau
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

ok tout simplement merci

par contre

si je met votre code pour la 2eme question dans cette macro,

Private Sub ObjectifDuMois_Click()

Sheets("objectif mois ").Visible = True
Sheets("objectif mois ").Select
Sheets("objectif mois ").Visible = Not Sheets("objectif mois ").Visible
End Sub

si je clic sur mon bouton, la feuille apparait et disparait aussitot, je ne peux plus rien changer ou voir de ma feuille precedemment masquer.

victore, la premiere parti marche maintenant, par contre, j'ai essaye egalement votre code pour la deuxieme question comme cela

Private Sub ObjectifDuMois_Click()

Sheets("objectif mois ").Visible = True
Sheets("objectif mois ").Select
If Sheets("objectif mois ").Visible = False Then Sheets("objectif mois ").Visible = True
If Sheets("objectif mois ").Visible = True Then Sheets("objectif mois ").Visible = False
End Sub

et j'ai le meme soucis qu'avec le code de pierrot
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

Re,

Code:
Sheets("objectif mois ").Visible = True
Sheets("objectif mois ").Select
Sheets("objectif mois ").Visible = Not Sheets("objectif mois ").Visible

comprends pas ce que tu veux faire exactement.... la ligne ci-dessous, affiche ou masque la feuille selon son état... renvoie l'état inverse...
Code:
Sheets("objectif mois ").Visible = Not Sheets("objectif mois ").Visible
 

charbsou

XLDnaute Nouveau
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

erf rien ne change si je vire le code dans thisWorkbook

ce que je veux faire :

j'ai bouton dans un user form, je voudrai qu'en cliquant dessus une feuille qui est cache grace au code de this is workbook s'ouvre afin que je puisse ecrire dedans. une fois que j'ai fini, je voudrai qu'en cliquant une nouvelle fois sur le bouton de luser, la feuille qui c'est ouverte disparaisse et soit toujours masque.

j'espere avoir ete plus clair en vous remerciant d'avoir deja regle mon probleme d'erreur 1004.
 

Victor21

XLDnaute Barbatruc
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

Re,

Private Sub ObjectifDuMois_Click()

Sheets("objectif mois ").Visible = True 'On affiche la feuille
Sheets("objectif mois ").Select 'on sélectionne la feuille
If Sheets("objectif mois ").Visible = False Then Sheets("objectif mois ").Visible = True 'si elle est masquée, on l'affiche (inutile, car elle est forcément visible)
If Sheets("objectif mois ").Visible = True Then Sheets("objectif mois ").Visible = False 'Si elle est visible, on la masque !!!
End Sub

Les 2 lignes if sont indépendantes, et ne concernent que le bouton pour masquer si afficher, ou afficher si masquée.
 
Dernière édition:

charbsou

XLDnaute Nouveau
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

merci victor, j'ai reessaye avec votre code en pensant mal l'avoir mis dans luser mais meme pas.

avec ce code
Private Sub ObjectifDuMois_Click()

Sheets("objectif mois ").Visible = True
Sheets("objectif mois ").Select

End Sub

si je clic dans l'user une fois, j'arrive bien sur ma feuille qui etait cache.

en ajoutant votre code, meme probleme qu'auparavant, la feuille cache apparait une demi sec et disparait aussi sec.

j'ai aussi fait le test avec this is workbook vide meme resultat.
 

Victor21

XLDnaute Barbatruc
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

Re, re, re...

La deuxième question était :
question supplementaire,
comment faire pour qu'un clic sur le bouton dans l'useur m'ouvre la feuille cache puis un second clic sur le meme bouton me referme la feuille.

c'est ce qu'est sensé faire (et uniquement cela pas d'autre code, pas d'autre action)

Code:
sub bouton()
if Sheets("objectif mois ").Visible = False then Sheets("objectif mois ").Visible = true
if Sheets("objectif mois ").Visible = true then Sheets("objectif mois ").Visible = false
end sub

Je répète : ce bouton ne fait que ça.
 

charbsou

XLDnaute Nouveau
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

à pardon victor, j'avais mal compris
ce n'est pas ce qu'il me faut alors dans la mesure ou cette feuille est masqué grace au code que j'ai mis dans this is workbook
mon bouton dans l'user doit m'ouvrir cette feuille masquée, un autre clic sur le bouton doit refermer la feuille et la remasquer.
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

Re,

mets peut être un tout petit fichierr en pièce jointe sur le forum, avec juste les éléments représentant le problème posé, car là, en l'état je crains que nous tournions en rond encore longtemps....
 

charbsou

XLDnaute Nouveau
Re : ouvrir/fermer une feuille caché d'un classeur grace à la touche d'un userform

ok, je pensai que mes explications auraient ete suffisante.
je m'y suis pourtant applique, j'ai encore du taff ...

voila le fichier au minimum

et merci pour le temps passe a me repondre.
 

Pièces jointes

  • test userform objectif.zip
    20.4 KB · Affichages: 44

Discussions similaires

Statistiques des forums

Discussions
312 203
Messages
2 086 183
Membres
103 152
dernier inscrit
Karibu