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

S

Sebastienh

Guest
Bonjour,

Voici une macro :

'saisie du mot de passe1
If TextBox1 = "123" Or TextBox1 = "456" Or TextBox1 = "789" Then
ligne = Sheets("main_courante").Range("A65536").End(xlUp).Row + 1
Sheets("main_courante").Cells(ligne, 1) = Environ("USERNAME")
Sheets("main_courante").Cells(ligne, 2) = TextBox1.Value
Sheets("main_courante").Cells(ligne, 3) = Date
TextBox1 = ""
'Décharger l'userform
Unload PASSE
'Ouvrir la page d'accueil
Sheets("bd1").Visible = True
Sheets("bd3").Visible = True

Elle me permet d'ouvrir des feuilles verrouillées et d'avoir une main courant.

Je souhaiterais rajouter un mode de passe vide qui permet d'avoir la lecture seule uniquement afin de visualiser 2 feuilles.

Encore merci pour votre aide
A+
Seb
 
Re : Mot de passe

Bonsoir

Ci dessous un code à tester

Code:
'################################
'VALIDATION DES MOTS DE PASSE
'################################

Private Sub CommandButton1_Click()
Dim i
Dim ligne As Long
'Ne pas beugguer sur une erreur
On Error Resume Next

Select Case Me.TextBox1.Value
    Case "123", "Wil", "Roul"
        ligne = Sheets("main_courante").Range("A65536").End(xlUp).Row + 1
        Sheets("main_courante").Cells(ligne, 1) = Environ("USERNAME")
        Sheets("main_courante").Cells(ligne, 2) = TextBox1.Value
        Sheets("main_courante").Cells(ligne, 3) = Date
        TextBox1 = ""
        'Décharger l'userform
        
        'Ouvrir la page d'accueil
        Sheets("bd1").Visible = True
        Sheets("bd3").Visible = True
        [COLOR="Magenta"]protection "bd1", True
        protection "bd3", True[/COLOR]
        Unload Me
    Case "321", "Cav", "Car" 'saisie du mot de passe2
        ligne = Sheets("main_courante").Range("A65536").End(xlUp).Row + 1
        Sheets("main_courante").Cells(ligne, 1) = Environ("USERNAME")
        Sheets("main_courante").Cells(ligne, 2) = TextBox1.Value
        Sheets("main_courante").Cells(ligne, 3) = Date
        TextBox1 = ""
        'Décharger l'userform
        Unload Me
        'Ouvrir la page d'accueil
        Sheets("bd3").Visible = True
        Sheets("bd4").Visible = True
        Sheets("bd5").Visible = True
       [COLOR="Magenta"] protection "bd3", True
        protection "bd4", True
        protection "bd5", True[/COLOR]
    Case "admin"
        Me.CommandButton2.Visible = True    
    Case ""
        Sheets("bd1").Visible = True
        Sheets("bd3").Visible = True
        Sheets("bd2").Visible = True
       [COLOR="Magenta"] protection "bd1", False
        protection "bd3", False
        protection "bd2", False[/COLOR]
        Unload Me
    Case Else 'Message d'erreur si mot de passe incorrect
                
        MsgBox "Mot de passe invalide", vbOKOnly, "Password"
        'Vider la textbox
        TextBox1 = ""
        Exit Sub
End Select


    
End Sub

Private Sub CommandButton2_Click()
Sheets("accueil").Activate
Dim i
For i = 1 To Sheets.Count
    If Sheets(i).Name <> "ACCUEIL" Then
        Sheets(i).Visible = True
        [COLOR="Magenta"]protection Sheets(i).Name, True[/COLOR]
    End If
Next

 MsgBox "ONGLETS DEVERROUILLES", vbOKOnly, "Password"
 
 Unload PASSE
 
End Sub

Private Sub TextBox1_Change()

End Sub

Private Sub UserForm_INITIALIZE()
Me.CommandButton2.Visible = False

End Sub

'
[COLOR="Red"]Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)[/COLOR]
    If CloseMode = vbFormControlMenu Then Cancel = True
End Sub

[COLOR="Red"]Private Sub protection(nomfeuille As String, liberer As Boolean)[/COLOR]
Dim motdepasse As String
motdepasse = "azc548fkyUbC"
If liberer = True Then
    Sheets(nomfeuille).Unprotect motdepasse
Else
    Sheets(nomfeuille).Protect Password:=motdepasse, DrawingObjects:=True, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True, AllowFormattingCells:=True, AllowFormattingColumns:=True, AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows:=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, AllowUsingPivotTables:=True
End If
End Sub

JP
 
Dernière édition:
Re : Mot de passe

Bonjour à tous

Soit problème impossible à régler soit trop facile pour vous mais je me demande si je le serais un jour .....😎

Le souci est que c'est toi qui doit savoir comment fonctionne ton fichier. Ici, les gens ne peuvent que te conseiller pour te faire avancer mais pas faire tout le travail.

Ensuite, il faut adapter les codes qu'on te propose à ta problèmatique en disant par exemple à JP, ce qui va et ce qui ne vas pas 😕.
 
Re : Mot de passe

Salut

Il y a des contradictions dans tes demandes. Le dernier fichier joint ne correspond à celles-ci (main courante, Environ(), Date ...) .
En voici une adaptation avec ce que j'ai compris : un mot de passe et je peux consulter certaines feuilles sans pouvoir y toucher.
Le retour à l'accueil se fait par double clic sur A1
Si ce n'est pas cela, ce sera à toi de revoir ta copie !
 

Pièces jointes

Re : Mot de passe

Merci Forum,

Je revois donc ma copie.

Le fichier joint est celui que j'utilise.
Il comprend 3 niveaux :
1- administrateur avec plusieurs codes
2- Chef avec plusieurs codes qui ouvrent 2 feuilles
3- sous chef plusieurs codes qui ouvrent 1 feuille.

De plus, il y a une sécurité lorsque nous écrivons cela verrouille la cellule.

Jusqu'ici tout baigne grâce à l'aide du forum.

Je souhaiterais donc que lorsqu'une personne n'est pas d'accès, celle ci puisse voir les feuilles sans la possibilité d'écriture ni d'enregistrement.

En espérant avoir été clair. 😱

Seb
 

Pièces jointes

Dernière modification par un modérateur:
Re : Mot de passe

et aujourd'hui aurais je l'honneur d'avoir une aide ?

Je ne comprends toujours pas ce phénomène, un engouement incroyable pour la construction de ce fichier et puis plus rien pour la finalisation.

Ben, encore merci d'avance pour les personnes qui ont participé à sa construction et peut être à sa finalisation
 
Re : Mot de passe

Salut

...
Le fichier joint est celui que j'utilise.
Il comprend 3 niveaux :
1- administrateur avec plusieurs codes
2- Chef avec plusieurs codes qui ouvrent 2 feuilles
3- sous chef plusieurs codes qui ouvrent 1 feuille.

...
Jusqu'ici tout baigne grâce à l'aide du forum.
...

Il te suffit d'ajouter un niveau : un "Invité" et de lui associer une macro protégeant tout.
Pour celle-ci, les discussions ne manquent pas !
 
Re : Mot de passe

Bonsoir Forum,


C'est la macro que je cherche cela depuis le début du post et du réitérer la réponse sans m'apporter la solution....
Il y a une dimension que je n'ai pas saisie et j'aimerais trouver la solution 😕
 
Re : Mot de passe

Bonjour à tous


Cette question a été traitée maintes et maintes fois sur le forum

Un exemple entre autres ici
https://www.excel-downloads.com/threads/acces-multi-utilisateurs-avec-password.96492/

PS: en utilisant le moteur de recherche du forum, tu te serais évité l'angoisse de l'attente 😉, puisque la patience ne semble pas être ton fort.
et aujourd'hui aurais je l'honneur d'avoir une aide ?
un engouement incroyable pour la construction de ce fichier et puis plus rien pour la finalisation.
Nous sommes bénévoles et nous n'avons pas d'obligation de résultats.
 
- 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
5
Affichages
912
Compte Supprimé 979
C
  • Question Question
Réponses
10
Affichages
1 K
A
Réponses
2
Affichages
2 K
agathe marcadon
A
N
Réponses
5
Affichages
3 K
Nicocotte125
N
D
Réponses
49
Affichages
9 K
D
A
Réponses
2
Affichages
1 K
A
Retour