OVH Cloud OVH Cloud

masquer un onglet par un code

8 réponses
Avatar
YANN24
Bonjour,

je voudrais, par VBA, rendre invisible une feuille, par une macro qui si
situerais sur une autre feuille, et accessible avec un mot de passe.

Merci
YANN

8 réponses

Avatar
RaMa
bonjour

Private Sub CommandButton1_Click()
Sheets("feuil1").Unprotect
Sheets("feuil1").Visible = True
End Sub
Salutations
RaMa

"YANN24" a écrit dans le message de news:

Bonjour,

je voudrais, par VBA, rendre invisible une feuille, par une macro qui si
situerais sur une autre feuille, et accessible avec un mot de passe.

Merci
YANN


Avatar
AV
Es-tu bien sur d'avoir le temps d'assimiler les réponses aux questions que tu
poses ?
Ca nous rappelle un "cher disparu" cette affaire ;-)

AV
Avatar
Corona
Bonjour Yann,
Voici deux macros pour rendre invisible et visible la feuille3
Sub MasquerFeuille()
Sheets("Feuil3").Select
ActiveWindow.SelectedSheets.Visible = False
End Sub
Sub DemasquerFeuille()
While pw <> "ZaZa": pw = InputBox("Entrez le mot de passe ... "): Wend
Sheets("Feuil3").Visible = True
End Sub
Et une autre macro qui rend visible ou invisible selon que l'état de la
feuille.
Sub MasquerDemasquerFeuille()
If Sheets("Feuil3").Visible = True Then
Sheets("Feuil3").Select
ActiveWindow.SelectedSheets.Visible = False
Else
While pw <> "ZaZa": pw = InputBox("Entrez le mot de passe ... "): Wend
Sheets("Feuil3").Visible = True
End If
End Sub
Philippe

"YANN24" a écrit dans le message de news:

Bonjour,

je voudrais, par VBA, rendre invisible une feuille, par une macro qui si
situerais sur une autre feuille, et accessible avec un mot de passe.

Merci
YANN


Avatar
anomymousA
bonjour,

'feuille 1 cachée mais possible de réafficher par Format/feuille/Afficher

Sheets(1).Visible = xlHidden ou Sheets(1).Visible = False ou
Sheets(1).Visible = 0

''feuille 1 cachée mais pas possible de réafficher par
Format/feuille/Afficher. Possible seulement par l'éditeur VBA ou par VBA.

Sheets(1).Visible = xlveryHidden ou Sheets(1).Visible = 1

'rendre feuille 1 visible

Sheets(1).Visible = xlvisible ou Sheets(1).Visible = true ou
Sheets(1).Visible = -1

L'accessibilité par mot de passe doit se gérer depuis une autre feuille au
travers d'un Msgbox p.e ou d'un userform afin d'activer la propirété de
visibilité.

A+


Bonjour,

je voudrais, par VBA, rendre invisible une feuille, par une macro qui si
situerais sur une autre feuille, et accessible avec un mot de passe.

Merci
YANN


Avatar
twinley
8-)


à+twinley

Es-tu bien sur d'avoir le temps d'assimiler les réponses aux questions que tu
poses ?
Ca nous rappelle un "cher disparu" cette affaire ;-)

AV




Avatar
Ellimac
Bonjour,

Sub tutu()
For cpt = 1 To 3
a = InputBox("taper le mot de passe")
If a = "toto" Then
Sheets(1).Visible = False
Exit For
End If
Next
End Sub

Camille

-----Message d'origine-----
Bonjour,

je voudrais, par VBA, rendre invisible une feuille, par
une macro qui si

situerais sur une autre feuille, et accessible avec un
mot de passe.


Merci
YANN
.



Avatar
YANN24
Merci, ça marche bien.
Juste une dernière question : si je veux que apparait et disparait se fasse
sur 2 feuilles, je modifie quoi sur la formule ?
(sheets("feuille1";"feuille2"), c'est ça??
MERCI
Yann


Bonjour Yann,
Voici deux macros pour rendre invisible et visible la feuille3
Sub MasquerFeuille()
Sheets("Feuil3").Select
ActiveWindow.SelectedSheets.Visible = False
End Sub
Sub DemasquerFeuille()
While pw <> "ZaZa": pw = InputBox("Entrez le mot de passe ... "): Wend
Sheets("Feuil3").Visible = True
End Sub
Et une autre macro qui rend visible ou invisible selon que l'état de la
feuille.
Sub MasquerDemasquerFeuille()
If Sheets("Feuil3").Visible = True Then
Sheets("Feuil3").Select
ActiveWindow.SelectedSheets.Visible = False
Else
While pw <> "ZaZa": pw = InputBox("Entrez le mot de passe ... "): Wend
Sheets("Feuil3").Visible = True
End If
End Sub
Philippe

"YANN24" a écrit dans le message de news:

Bonjour,

je voudrais, par VBA, rendre invisible une feuille, par une macro qui si
situerais sur une autre feuille, et accessible avec un mot de passe.

Merci
YANN






Avatar
Corona
Re,
J'ai légèremement modifié le code.
Comme tu souhaites un mot de passe pour afficher les feuilles, il est
préférable de placer la propriété 'visible' de la feuille avec la constante
'xlSheetVeryHidden'. Ce qui a pour effet de ne plus lister les feuilles
masquées.
Pour éviter de taper 2 x le Mot de passe pour afficher ou pour masquer,
j'ai placer la question avant d'appeler la macro
Philippe

Sub MasquerDemasquerFeuille(ShName As String)
With Sheets(ShName)
If .Visible = True Then
.Select
.Visible = xlSheetVeryHidden
Else
.Visible = True
End If
End With
End Sub

Sub Test()
While pw <> "ZaZa": pw = InputBox("Entrez le mot de passe ... "): Wend
MasquerDemasquerFeuille "Feuil2"
MasquerDemasquerFeuille "Feuil3"
End Sub

"YANN24" a écrit dans le message de news:

Merci, ça marche bien.
Juste une dernière question : si je veux que apparait et disparait se
fasse
sur 2 feuilles, je modifie quoi sur la formule ?
(sheets("feuille1";"feuille2"), c'est ça??
MERCI
Yann


Bonjour Yann,
Voici deux macros pour rendre invisible et visible la feuille3
Sub MasquerFeuille()
Sheets("Feuil3").Select
ActiveWindow.SelectedSheets.Visible = False
End Sub
Sub DemasquerFeuille()
While pw <> "ZaZa": pw = InputBox("Entrez le mot de passe ... "):
Wend
Sheets("Feuil3").Visible = True
End Sub
Et une autre macro qui rend visible ou invisible selon que l'état de
la
feuille.
Sub MasquerDemasquerFeuille()
If Sheets("Feuil3").Visible = True Then
Sheets("Feuil3").Select
ActiveWindow.SelectedSheets.Visible = False
Else
While pw <> "ZaZa": pw = InputBox("Entrez le mot de passe ... "):
Wend
Sheets("Feuil3").Visible = True
End If
End Sub
Philippe

"YANN24" a écrit dans le message de
news:

Bonjour,

je voudrais, par VBA, rendre invisible une feuille, par une macro qui
si
situerais sur une autre feuille, et accessible avec un mot de passe.

Merci
YANN