Funktion för att returnera användarnamnet med VBA i Microsoft Excel

Anonim

Funktionen nedan returnerar användarnamnet för den inloggade användaren, fungerar i både Windows NT och Windows95/98.

Public Declare Function GetUserName Lib "advapi32.dll" _ Alias ​​"GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long Function ReturnUserName () As String 'return the NT Domain User Name Dim rString As String * 255, sLen As Long , tString As String tString = "" Vid fel Återuppta nästa sLen = GetUserName (rString, 255) sLen = InStr (1, rString, Chr (0)) If sLen> 0 Then tString = Left (rString, sLen - 1) Else tString = rString End If On Error GoTo 0 ReturnUserName = UCase (Trim (tString)) Slutfunktion

Om du inte vill returnera nätverksanvändarnamnet,
men vill returnera användarnamnet som användaren har registrerat med programmet kan du göra detta:

ActiveUserName = Application.UserName