VBA ouverture excel avec login et mdp windows

Fermé
Monty - 30 mai 2018 à 11:33
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 1 juin 2018 à 09:06
Bonjour,

Je travaille sur un fichier Excel et je souhaiterais que à l'ouverture du fichier, on puisse se connecter avec le login et le mot de passe de la session Windows et que en fonction du login, soit on a accès à tous les onglets en modif ou seulement en lecture seule

Merci d'avance pour votre aide

A voir également:

2 réponses

JuanLucas38 Messages postés 57 Date d'inscription mardi 22 mai 2018 Statut Membre Dernière intervention 3 avril 2023 4
30 mai 2018 à 21:35
Il me semble que le nom de l'utilisateur est affiché en haut à droite lorsqu'on utilise un logiciel de la suite office.
Vérifies si c'est ton cas, dans ce cas il y a peut être un moyen.
0
en fait je me suis mal exprimé, il y aura plusieurs utilisateurs et il faut que chacun puisse se connecter avec son propre login
0
JuanLucas38 Messages postés 57 Date d'inscription mardi 22 mai 2018 Statut Membre Dernière intervention 3 avril 2023 4 > Monty
1 juin 2018 à 07:11
Est-ce que tous les utilisateurs utiliseront la même session windows ?

Si oui dans ce cas il faudra créer ta propre macro de connexion à Excel. C'est faisable mais tout dépend quel niveau de sécurité te veux mettre. Si c'est un simple mot de passe et que les utilisateurs ne sont pas trop "poussés" cela devrait largement suffire par contre si tu as a faire à des "passionnés" il va falloir créer ton propre cryptage de mot de passe et la ce n'est plus la même affaire.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié le 1 juin 2018 à 09:19
Bonjour

pour connaitre qui ouvre le classeur sur le serveur

Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" _
(ByVal lpBuffer As String, nSize As Long) As Long
'---------------------------------------------
sub xxxx()
Dim lpBuff As String * 25
Dim retour As Long
Dim utilisateur As String

retour = GetUserName(lpBuff, 25)
utilisateur = Left(lpBuff, InStr(lpBuff, Chr(0)) - 1)

.... etc


en général, on attribue plut^t un mot de passe par utilisateur dans l'active directory du serveur qu'un mot de passe windows (ce qui permet de modifier la liste des "autorisés")
0