Procédure Visual Basic pour obtenir le nom d’utilisateur actuel


Résumé


Vous pouvez effectuer un appel d’API Windows (application de programmation d’application) vers une DLL Microsoft Windows (bibliothèque de liens dynamiques) pour obtenir le nom d’utilisateur actuel. Le nom d’utilisateur actuel peut être obtenu à l’aide de la fonction GetUserNameA dans ADVAPI32. DLL.

Informations supplémentaires


Microsoft Excel ne dispose pas de la fonctionnalité intégrée permettant d’accéder au nom d’utilisateur actuel de l’ordinateur. Toutefois, vous pouvez utiliser l’instruction DECLARE dans une macro Visual Basic pour applications pour appeler une fonction Microsoft Windows qui renverra le nom d’utilisateur actuel. Microsoft fournit des exemples de procédures Visual Basic pour applications à des fins d’illustration uniquement, sans garantie, expresse ou implicite, y compris, mais sans s’y limiter, les garanties implicites concernant la qualité marchande et/ou l’adéquation à un but particulier. Les procédures Visual Basic contenues dans cet article sont fournies « en l’aspect » et Microsoft ne garantit pas qu’elles peuvent être utilisées dans toutes les situations. Bien que les professionnels du support technique Microsoft puissent vous aider à expliquer les fonctionnalités d’une macro particulière, ces exemples ne seront pas modifiés dans ces exemples pour fournir des fonctionnalités supplémentaires, et vous aideront à créer des macros qui répondent à vos besoins spécifiques. Si vous disposez d’une connaissance de programmation limitée, vous pouvez consulter l’un des fournisseurs de solutions Microsoft. Les fournisseurs de solutions proposent une large gamme de services payants, y compris la création de macros personnalisées. Pour plus d’informations sur les fournisseurs de solutions Microsoft, contactez le service informations client Microsoft sur (800) 426-9400.

EXAMPLE

  1. Tapez le code suivant dans un nouveau module :
        ' Makes sure all variables are dimensioned in each subroutine.     Option Explicit     ' Access the GetUserNameA function in advapi32.dll and     ' call the function GetUserName.     Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" _     (ByVal lpBuffer As String, nSize As Long) As Long     ' Main routine to Dimension variables, retrieve user name     ' and display answer.     Sub Get_User_Name()     ' Dimension variables     Dim lpBuff As String * 25     Dim ret As Long, UserName As String     ' Get the user name minus any trailing spaces found in the name.     ret = GetUserName(lpBuff, 25)     UserName = Left(lpBuff, InStr(lpBuff, Chr(0)) - 1)     ' Display the User Name     MsgBox UserName     End Sub
  2. Exécutez la macro Get_User_Name. Notez que le nom de l’utilisateur actuel apparaît dans une zone de message.