• Initiateur de la discussion Initiateur de la discussion patrice
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

P

patrice

Guest
Bonjour à toutes et à tous.
Comment peut on recupérer le logging d'un utilisateur sous NT ou autre via VB Excel.
Je m'explique : Je voudrais arréter la macro Aut😵pen si l'utilisateur n'est pas autorisé (if ... then exit sub). Merci d'avance.
 
Bonsoir,

Je ne sais pas si cela peut te convenir mais dans une de mes applications j'ai utilisé cette macro qui oblige l'utilisateur à encoder un mot de passe avant d'accéder au fichier . Il te suffit d'encoder la macro "message" dans la macro Auto_open

Sub Message()
Dim Message, Title, Default, MyValue
' Définit le message.
Message = "Enter your password"
Title = "Password" ' Définit le titre.
Default = "" ' Définition la valeur par défaut.
' Affiche le message, le titre et la valeur par défaut.
MyValue = InputBox(Message, Title, Default)
Select Case MyValue
Case Is = "mot de passe utilisateur": "nom de macro à enclencher"
Case Else: Wrongpassword
End Select
End Sub

Fais savoir si c'est cela te convient

@+

Dan
 
bonjour tout le monde

mylogin = Application.UserName

C@thy
BipBip.gif
 
Bonjour,

J'ai remarqué que Application.UserName donne le nom du domaine plutot que le nom de l'utilisateur.
Moi j'utilise le code ci-après, qui me rend bien le login de l'utilisateur :


Declare Function WNetGetUser Lib "mpr.dll" Alias "WNetGetUserA" (ByVal lpName As String, ByVal lpUserName As String, lpnLength As Long) As Long
Const NoError = 0


Function GetUserName()
Const lpnLength As Long = 255
Dim status As Long
Dim lpName, lpUserName As String
lpUserName = Space$(lpnLength + 1)
status = WNetGetUser(lpName, lpUserName, lpnLength)
If status = NoError Then
lpUserName = left$(lpUserName, InStr(lpUserName, Chr(0)) - 1)
Else
MsgBox "Impossible d'obtenir le login."
End
End If
GetUserName = lpUserName
End Function

René
 
Bonsoir C@thy, René et à tous
Pour moi le commande : mylogin = Application.UserName
fonctionne correctement merci.
Win NT et Excel 97, il y a peu etre une différence de version avec René,
dont je n'ai pas essayé le code.
A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
197
Réponses
7
Affichages
334
  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
266
Réponses
7
Affichages
316
Réponses
4
Affichages
403
Retour