• Initiateur de la discussion Initiateur de la discussion Dok'
  • 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 !

D

Dok'

Guest
Bonjour tout le monde...

juste une petite question :

Est-il possible de protéger par un mot de passe un onglet de ma feuille excel (et seulement cet onglet).

Si oui, comment faire ?

Merci d'avance.
 
Merci...

juste une précision : en suivant tes conseils, je ne réussis pas à protéger mon onglet en lecture. En effet, cet onglet est protéger en écriture (on ne peut pas changer les données qui en fot partie). ce que je voudrais, c'est "carrément" qu'on ne puisse pas accéder à cet onglet (et donc lire les informations qu'il contient) sans mot de passe....

J'espère que je suis assez clair.

Merci d'avance.

Dok'.
 
bonsoir DOK
voici une macro qui devrait te convenir le code c'est "dok" minuscule ou majuscule

Sub mystere()
Dim X, retour
retour = MsgBox("Accés a la feuille secrete." & Chr(13) & "que je ne veux pas montrer. " & Chr(13) & "" & Chr(13) & "" & Chr(13) & " Code d'accés obligatoire ! ", 4 + vbInformation + vbDefaultButton2, " et oui il faut un code . ")
If retour = vbYes Then
Do
X = Application.InputBox(" Saisir le code d'accés . * * * * * .", "Code d'accés à la feuilles secrete.", " Password !")
Loop Until LCase(X) = "ok" Or X = False
If X = ("dok") Or X = ("DOK") Then
Application.ScreenUpdating = False
Sheets("feuil1").Visible = True
End If
End If
End Sub

bonne soirée
Evelynetfrancois
 
Evelynetfrancois :

pourriez-vous m'apportez une précision please :

Je masque ma feuille (ok j'ai réussi à le faire) mais votre macro ne m'affiche pas ma feuille lorsque je tape "dok" ou "DOK".....

(pourtant il s'adit bien de "Feuil1")....

Merci d'avance

Dok'
 
mille excuses dok
une toute petite erreur s'est glissee
dans la ligne
Loop Until LCase(X) = "ok" Or X = False
change le "ok " par " dok"
j'avais pas saisi le "d"
cela dit
ok c'etait pas mal lol ......
bon prog
a plus
dit moi si ça marche ,normalement aucun prob
Evelynetfrancois
 
mille excuses dok
une toute petite erreur s'est glissee
dans la ligne
Loop Until LCase(X) = "ok" Or X = False
change le "ok " par " dok"
j'avais pas saisi le "d"
cela dit
ok c'etait pas mal lol ......
bon prog
a plus
dit moi si ça marche ,normalement aucun prob
Evelynetfrancois
 
nickel ça marche merci.....

Par contre un dernier truc que je ne comprends pas :

si je fais Format / feuille / Masquer, et que j'applique le code tout marche bien.

Par contre nimporte qui peut accéder à cette feuille en faisant tout simplement Format / Feuille / Afficher / Feuille 1.

comment résoudre ce problème ?
 
Salut Dok

Evidemment il faut proteger le classeur (outil/ protec/ classeur)
mettre un code de protect a ce classeur ("toto" par exemple,
et rajouter à la macro

ActiveWorkbook.Protect password:="toto", structure:=False, Windows:=True

comme ci dessous


Sub mystere()
Dim X, retour
retour = MsgBox("Accés a la feuille secrete." & Chr(13) & "que je ne veux pas montrer. " & Chr(13) & "" & Chr(13) & "" & Chr(13) & " Code d'accés obligatoire ! ", 4 + vbInformation + vbDefaultButton2, " et oui il faut un code . ")
If retour = vbYes Then
Do
X = Application.InputBox(" Saisir le code d'accés . * * * * * .", "Code d'accés à la feuilles secrete.", " Password !")
Loop Until LCase(X) = "dok" Or X = False
If X = ("dok") Or X = ("DOK") Then
Application.ScreenUpdating = False
ActiveWorkbook.Protect password:="toto", structure:=False, Windows:=True
Sheets("feuil1").Visible = True
End If
End If
End Sub


Ensuite lorsque tu ressortiras de cette feuille "mystere" il faudra penser à reinverser le procesus par un bouton macros ur la feuil Mystere qui t'en fera resortir avec:

Private Sub pass_visible()
Sheets("ici le nom de la feuil ou tu veux revenir").Select
Sheets("feuil1").Visible = False
ActiveWorkbook.Protect password:="toto", structure:=True, Windows:=False
end sub

voilà bonne programmation(sssssssssssssss)
Evelynetfrancois

End Sub
 
Un grand Merci (un énorme merci même), je peux maintenant appliquer ça à n'importe quel fichier Excel (en faisant bien attention à ne pas oublier mon mot de passe évidemment !!!)

Excusez-moi de vous embêter, je commence peut-être à abuser.... mais pour finir, j'aimerais qu'on ne puisse pas accéder à mon code VBA (le mot de passe étant inscrit dans ce code, il "suffirait" à l'utilisateur lambda de venir le chercher à cet endroit), sans un mot de passe (et uniquement pour cette macro, située dans un module spécial)

( Voilà mes noms : )
( nom de module : ProtectionClasseurEtFeuil1 )
( nom de macro : mystere )
( nom de classeur (si utile) : SensibilitéNcp )

UN GRAND MERCI si vous pouvez (si je me suis bien exprimé et que je suis compréhensible) m'aider pour cette ultime tâche...

Dok'
 
- 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
19
Affichages
622
Réponses
4
Affichages
204
Retour