Useform : afficher et fermer dans certains cas

noemie45

XLDnaute Occasionnel
Bonjour,

j'ai crée un userfom que j'utilise comme masque de saisie, il sert a alimenter une base de donnée sous excel.
j'ai 2 types d'utilisateurs :
Utilisateurs 1
Ils ne voient pas la base. ils saississent et ferment le userform.
Utilisaterurs 2
Ouvre la base, par l'intermédiaire d'un bouton sur le userfor, avec un accès sécurisé et travaillent directement sur le fichier excel

Mon problème est que dans le workook j'ai mis ce code :

End Sub
Private Sub Workbook_WindowActivate(ByVal Wn As Window)
userform1.Show
End Sub
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
userform1.Hide
End Sub

Pour que les utilisateurs 1 puissent naviguer entre plusieurs fichiers.
Donc dès qu'ils vont sur un autre fichier, et qu'ils reviennent sur le fichier en question le userform reapparait

Par contre, je ne voudrais pas que ceci se produise pour les utilisateurs 2.

Est ce que vous avez une idée???
Par exemple; lorsque les utilisateurs 2 ouvrent la base ceci ferme définitivement le useform mais il faudrait déplacer le code cité ci-dessus ailleurs (mais je ne sais pas où)

je suis désolé mais je ne peux pas fournir d'exemple, j'ai des codes de partout dans mon userform!!
 

noemie45

XLDnaute Occasionnel
Re : Useform : afficher et fermer dans certains cas

j'ai bidouillé et j'ai mis ça :
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
'on le cache que si il était affiché
If TypeUtilisateur = 1 Then userform1.Hide
End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
If TypeUtilisateur = 1 Then userform1.Show
'on ne montre le userform à nouveau que si il s'agit d'un user avec accès restreint
End Sub

et ça fonctionne!!! merci pour votre aide
 

Statistiques des forums

Discussions
312 505
Messages
2 089 093
Membres
104 029
dernier inscrit
Neozz14