XL 2021 Si le nom de la feuille est égale alors .... HELP !

Lune999

XLDnaute Nouveau
Bonjour à toutes et tous,

J'aimerai faire en sorte que mon code s'active dès qu'une certaines feuille nommée "$Liste" est activée ; il s'agit d'un onglet que je ne peux pas cacher mais dont j'aimerai restreindre l'accès. Dès qu'elle est activer, il s'agit alors de vérifier avec un Inbox et un mdp que l'utilisateur est de type administrateur du fichier.

Si le mdp rentré est faux, alors il est renvoyé vers un autre onglet "Global"

Merci d'avance pour votre aide !

VB:
Private Sub Worksheet_Activate()

Dim resultat As String
    
        If ActiveSheet.Name = "$Liste" Then
    
        resultat = InputBox("Confirmer la demande d'accès", "Administrateur")
    
            If resultat <> "Test" Then
            
                Activate.Worksheets ("Global")
                MsgBox ("Le mot de passe est incorrect")
        Else
        
    End If

End Sub
 

patricktoulon

XLDnaute Barbatruc
bonjour
VB:
Private Sub Worksheet_Activate()

Dim resultat As String
 
If ActiveSheet.Name = "$Liste" Then
 
resultat = InputBox("Confirmer la demande d'accès", "Administrateur")
 
If resultat <> "Test" Then
         
Worksheets ("Global").Activate
MsgBox ("Le mot de passe est incorrect")

End If
End if 

End Sub
 

Lune999

XLDnaute Nouveau
bonjour
VB:
Private Sub Worksheet_Activate()

Dim resultat As String
 
If ActiveSheet.Name = "$Liste" Then
 
resultat = InputBox("Confirmer la demande d'accès", "Administrateur")
 
If resultat <> "Test" Then
        
Worksheets ("Global").Activate
MsgBox ("Le mot de passe est incorrect")

End If
End if

End Sub
Bonjour et merci pour votre proposition, malheureusement le code ne fonctionne toujours pas ...
 

Pièces jointes

  • Expl.xlsm
    13.1 KB · Affichages: 2

patricktoulon

XLDnaute Barbatruc
re
la bonne blague ;)
si tu utilise Worksheet_Activate() ton code doit aller dans le module de la feuille

sinon si tu veux le mettre dans le module thisworkbook c'est pas le même event
c'est Workbook_SheetActivate
VB:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim resultat As String

    If ActiveSheet.Name = "$Liste" Then

        resultat = InputBox("Confirmer la demande d'accès", "Administrateur")

        If resultat <> "Test" Then

            Sheets("Global").Activate
            MsgBox ("Le mot de passe est incorrect")

        End If
    End If
End Sub
 

Pièces jointes

  • Expl.xlsm
    14.8 KB · Affichages: 1

Discussions similaires

Statistiques des forums

Discussions
315 127
Messages
2 116 521
Membres
112 765
dernier inscrit
SIDIANW