Podsumowanie
Umożliwia wywołanie Windows API (interfejs programowania aplikacji) do Microsoft Windows DLL (dynamic-link library), aby uzyskać bieżącej nazwy użytkownika. Nazwę bieżącego użytkownika można uzyskać za pomocą funkcji GetUserNameA w ADVAPI32. DLL.
Więcej informacji
Program Microsoft Excel nie ma wbudowanej funkcjonalności do dostępu do tego komputera nazwę bieżącego użytkownika. Jednak służy instrukcja Declare w języku Visual Basic for Applications makra do wywołania funkcji Microsoft Windows, który zwraca nazwę bieżącego użytkownika. Firma Microsoft podaje przykłady Visual Basic dla aplikacji procedury wyłącznie, bez jakichkolwiek gwarancji wyrażonych wprost lub dorozumianych, w tym między innymi dorozumianych gwarancji przydatności handlowej i przydatności do określonego celu. Procedury języka Visual Basic w niniejszym artykule są dostarczane "tak jak jest" i firma Microsoft gwarantuje mogą być używane we wszystkich sytuacjach. Natomiast specjalistów pomocy technicznej firmy Microsoft mogą pomóc w wyjaśnieniu, jak działa określonym makrem, nie będą modyfikować tych przykładów zapewnia dodatkowe funkcje, ani ich pomoże Ci utworzyć makra do określonych potrzeb. Jeśli czytelnik ma niewielkie doświadczenie w programowaniu, warto skonsultować się z jednego z dostawców rozwiązań firmy Microsoft. Dostawcy rozwiązań oferują szeroką gamę usług opartych na opłaty, włączając w to tworzenie niestandardowych makr. Aby uzyskać więcej informacji na temat dostawców rozwiązań firmy Microsoft wywołanie obsługi informacji klienta Microsoft pod adresem (800) 426-9400.
PRZYKŁAD
-
Wpisz następujący kod do nowego modułu:
' 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
-
Uruchom makro Get_User_Name. Należy zauważyć, że nazwę bieżącego użytkownika pojawi się w oknie komunikatu.