Menu

Besoin d'explication pour ces lignes de code

Messages postés
283
Date d'inscription
jeudi 11 août 2016
Statut
Membre
Dernière intervention
19 avril 2019
-
Bonjour,
Comment s'utilise ces lignes de code Svp
En vous remerciant

Public Const BackupDisplayCode = "seigle"


Public Sub BackupDisplay()
    Dim Reponse As Variant
    Reponse = Application.InputBox("Code Backup Display", Type:=2)
    If VarType(Reponse) = vbBoolean Then Exit Sub
    If Reponse = BackupDisplayCode Then Call AfficherFeuilles(ForcerAffichage:=True)
End Sub



Configuration: Windows / Firefox 66.0
Afficher la suite 

Votre réponse

3 réponses

Messages postés
775
Date d'inscription
samedi 16 février 2019
Statut
Membre
Dernière intervention
18 avril 2019
42
0
Merci
Quand la macro est appelé (bouton ...) l'utilisateur doit rentrer un code dans une fenêtre, et si le code est bon sa affiche une feuille en particulier :p

 
Public Const BackupDisplayCode = "seigle" 'Variable  pour définir le mot de passe


Public Sub BackupDisplay() 'Nom de la macro
    Dim Reponse As Variant 'Définition d'une variable pour ce que tape l'utilisateur
    Reponse = Application.InputBox("Code Backup Display", Type:=2) 'Ouverture d'une fenêtre pour rentrer le code et l'écrire dans la variable "reponse"
    If VarType(Reponse) = vbBoolean Then Exit Sub 'Si la réponse est booléenne (1 ou 0) alors on quitte la macro
    If Reponse = BackupDisplayCode Then Call AfficherFeuilles(ForcerAffichage:=True) ' Si la réponse correspond au code défini (variable Backupdisplaycode) on appelle une macro qui doit afficher une feuille
End Sub


je suis pas expert, y'a peut être des erreurs/imprécisions mais c'est l'idée ;)
Commenter la réponse de T3chN0g3n
Messages postés
283
Date d'inscription
jeudi 11 août 2016
Statut
Membre
Dernière intervention
19 avril 2019
5
0
Merci
Bonjour T3chN0g3n et merci de me répondre
J'avais omis de mettre cette ligne en début du code :
'Back up affichage si inaccessibilité des feuilles
'remplace le mdp si perdu

Mais je ne comprend pas comment ce code fonctionne
T3chN0g3n
Messages postés
775
Date d'inscription
samedi 16 février 2019
Statut
Membre
Dernière intervention
18 avril 2019
42 -
C'est un "bout" seulement, il doit y avoir d'autres sub. ça bout ne code ne permet pas de remplacer le mot de passe (inscrit dans le string "BackupDisplayCode") et ça n'explique pas comment est appelé ce sub.
Commenter la réponse de jean300
Messages postés
283
Date d'inscription
jeudi 11 août 2016
Statut
Membre
Dernière intervention
19 avril 2019
5
0
Merci
Voici ce qui est associé au bouton Valider

Private Sub BoutonValider_Click()

    Dim i As Long
    Dim ErrNb As Integer
    Dim Rôle As String
    Static NbEssais As Integer
    
    If Len(UtilisateurConnecté) > 0 Then Exit Sub
        
    'Charge les tables de paramètres généraux de la feuille Base (si pas déjà fait)
    If Not ParamGénérauxChargés Then If Not ChargerParamètresGénéraux Then Exit Sub
    
    NbEssais = NbEssais + 1
    If NbEssais > 3 Then
        MsgBox "Nombre d'essais maximum atteint. Veuillez contactez l'administrateur..."
        Unload Me
        Exit Sub
    End If
    
    'Cherche l'utilisateur dans la table
    For i = ParamTabUtilisateursLig0 + 1 To ParamTabUtilisateursLig0 + ParamNbUtilisateurs
        'Utilisateur trouvé, vérifie le mot de passe
        If Trim(UCase(Me.tbUtilisateur.Text)) = Trim(UCase(ThisWorkbook.Sheets(ParamNomFeuille).Range(ParamTabUtilisateursColUtilisateur & i).Value)) Then
            'Mot de passe incorrect
            If Me.tbMotDePasse.Text <> ThisWorkbook.Sheets(ParamNomFeuille).Range(ParamTabUtilisateursColMotDePasse & i).Value Then
                'Mot de passe incorrect
                MsgBox "Nom d'utilisateur ou mot de passe incorrect"
                Exit Sub
            End If
            
            'Mot de passe correct
            UtilisateurConnecté = Trim(ThisWorkbook.Sheets(ParamNomFeuille).Range(ParamTabUtilisateursColUtilisateur & i).Value)
            RôleUtilisateurConnecté = Trim(ThisWorkbook.Sheets(ParamNomFeuille).Range(ParamTabUtilisateursColRôle & i).Value)
            ThisWorkbook.Sheets(ParamNomFeuille).Range(ParamCelluleUtilisateurConnecté).Value = UtilisateurConnecté
            
            Select Case RôleUtilisateurConnecté
                Case ParamRôleAdmin
                    Rôle = "Administrateur"
                
                  Case ParamRôleAdjoint
                    Rôle = "Administrateur adjoint"
                    
                Case ParamRôleDélégué
                    Rôle = "Administrateur délégué"

                Case Else
                    Rôle = "Utilisateur"
                    
                    'MsgBox "Rôle de l'utilisateur " & UtilisateurConnecté & " non défini comme " & ParamRôleAdmin & _
                           " ou " & ParamRôleDélégué & " ou " & ParamRôleNormal
                    'Rôle = "Utilisateur"
            End Select
            
            Call PopUpMessage(1, Rôle & " " & UtilisateurConnecté & " connecté...", "Connexion", vbExclamation)
            
            'Charge les tables de paramètres Utilisateur de la feuille Base (si pas déjà fait)
            If Not ChargerParamètresUtilisateur Then
                If RôleUtilisateurConnecté = ParamRôleAdmin Then ThisWorkbook.Sheets(ParamNomFeuille).Visible = True
                Exit Sub
            End If
            
            'Affiche ou masque les feuilles
            If AfficherLesFeuilles Then
                If RôleUtilisateurConnecté = ParamRôleAdmin Then
                    Call AfficherFeuilles(ForcerAffichage:=True)
                Else
                    Call AfficherFeuilles(ForcerAffichage:=False)
                End If
            Else
                If RôleUtilisateurConnecté = ParamRôleAdmin Then
                    Call AfficherFeuilles(ForcerAffichage:=True)
                Else
                    Call MasquerFeuilles
                End If
            End If
            
            Unload Me
            Exit Sub
        End If
    Next i
    
    'Nom d'utilisateur incorrect
    If i > ParamTabUtilisateursLig0 + ParamNbUtilisateurs Then
        MsgBox "Nom d'utilisateur ou mot de passe incorrect"
    End If
End Sub
Commenter la réponse de jean300