Bonjour à tous,
je rencontre un petit problème avec mon code. A l'ouverture je vérifie que l'utilisateur (windows) soit présent dans une liste sur la feuille "paramétrage". S'il n'est pas présent dans la liste, le fichier s'ouvre en lecture seule, sinon il s’ouvre normalement. Ensuite je souhaite que seule la feuille "accueil" soit visible. Quand le fichier s'ouvre en écriture, aucun problème cela fonctionne, par contre en lecture seule, toutes les feuilles restent visibles et le formulaire ne se lance pas... et je bloque
Voici mon code :
Merci d'avance pour un petit coup de pouce
je rencontre un petit problème avec mon code. A l'ouverture je vérifie que l'utilisateur (windows) soit présent dans une liste sur la feuille "paramétrage". S'il n'est pas présent dans la liste, le fichier s'ouvre en lecture seule, sinon il s’ouvre normalement. Ensuite je souhaite que seule la feuille "accueil" soit visible. Quand le fichier s'ouvre en écriture, aucun problème cela fonctionne, par contre en lecture seule, toutes les feuilles restent visibles et le formulaire ne se lance pas... et je bloque
Voici mon code :
Code:
Private Sub Workbook_Open()
Dim Ws As Worksheet
Dim Utilisateur
Dim usertrouve As Range
Utilisateur = Environ("username")
Application.DisplayAlerts = False
With Sheets("parametrage").Range("B13:J13")
Set usertrouve = .Find(Utilisateur, , xlValues, xlWhole)
If usertrouve Is Nothing Then
Workbooks.Open Filename:= _
"I:\suivi pmcv\BD.xlsm", _
ReadOnly:=True
End If
End With
Application.DisplayAlerts = True
'Masque toutes les feuilles sauf la feuille "Accueil"
For Each Ws In ThisWorkbook.Worksheets
If Ws.Name <> "Accueil" Then Ws.Visible = xlSheetVeryHidden
Next Ws
'Charge l'Userform en mémoire
Load UserForm3
'Affiche l'Userform
UserForm3.Show
End Sub
Merci d'avance pour un petit coup de pouce
Dernière édition: