요약
현재 사용자 이름을 가져오려면 Microsoft Windows DLL (동적 연결 라이브러리)에 대 한 Windows API (응용 프로그래밍 인터페이스) 호출을 만들 수 있습니다. 현재 사용자 이름은 ADVAPI32 GetUserNameA 함수를 사용 하 여 얻을 수 있습니다. DLL입니다.
추가 정보
Microsoft Excel에는 기본 제공 기능에 액세스할 컴퓨터의 현재 사용자 이름이 없습니다. 그러나 현재 사용자 이름을 반환 하는 Microsoft Windows 함수를 호출 하는 Visual Basic for Applications 매크로에서 Declare 문을 사용할 수 있습니다. Microsoft는 프로시저 예제 Visual Basic for Applications 보증을 포함 하며, 특정 목적에의 적합성의 묵시적된 보증을 포함 하 여를 제공 합니다. 이 문서에서 Visual Basic 프로시저는 '있는 그대로' 제공 되며 Microsoft는 모든 상황에서 사용할 수 보증 하지 않으며 Microsoft 기술 지원 담당자는 특정 매크로 기능을 설명할 수, 동안 추가 된 기능을 제공 하기 위해 이러한 예제를 수정 하지 않습니다 하거나 사용자의 특정 요구에 맞게 매크로 만들 수 있습니다. 프로그래밍 경험을 제한 한 경우 Microsoft 솔루션 공급자 중 하나를 참조 하는 것이 좋습니다. 솔루션 공급자는 다양 한 유료 서비스 요금을 제공 합니다. Microsoft 솔루션 공급자에 대 한 자세한 내용은 (800) 426-9400에서 Microsoft 고객 정보 서비스를 호출 합니다.
예제
-
새 모듈에 다음 코드를 입력 합니다.
' 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
-
Get_User_Name 매크로 실행 합니다. 참고 현재 사용자 이름을 메시지 상자에 나타납니다.