Bonjour à tous,
Le tableau joint est un extrait très synthétique.
Je suis peu accoutumé à la fonction HLOOKUP, je n'arrive pas à résoudre mon problème car j'ai du mal à comprendre la logique.
J'alimente une feuille "Droits" qui informe l'utilisateur actif et qui affiche en colonne les feuilles dont il a accès.
Lorsque j'ouvre une feuille (Activate) je me dirige vers mon module controle utilisateur.
Je récupère le nom de la feuille active et je souhaiterais contrôler dans ma feuille "Droits" si ma feuille active en deuxième ligne possède une "x" ce qui autorise à poursuivre le programme, sinon il y a un message d'erreur et on renvoie l'utilisateur au menu général.
Bien que je comprenne le fonctionnement de la fonction, dans mon exemple à traiter, je ne sais pas par quel bout résoudre le problème.
Option Explicit
Sub Controle_Utilisateurs()
Dim Autorisation As String
Dim Login As String
Dim FeuilleActive As String
FeuilleActive = ActiveSheet.Name
MsgBox FeuilleActive
Login = Sheets("Parametres").Range("Utilisateur_Actif")
MsgBox Login
Autorisation = WorksheetFunction.HLookup(FeuilleActive, Sheets("Droits").Range("F4:AV4"), 2, 0)
MsgBox Autorisation
If Autorisation <> "x" Then
MsgBox "Vous n'avez pas l'autorisation pour accéder à cette page"
Worksheets("Menu General").Activate
End If
End Sub