Sažetak
Možete stvoriti Windows API (sučelje za programiranje aplikacija) da biste dobili trenutno korisničko ime u programu Microsoft Windows DLL (biblioteka za dinamičku vezu). Trenutno korisničko ime može se nabaviti pomoću funkcije GetUserNameA u programu ADVAPI32. DLL.
Dodatne informacije
Microsoft Excel nema ugrađenu funkcionalnost za pristup postojećem korisničkom nazivu računala. Međutim, naredbu deklaracija možete koristiti u makronaredbi Visual Basic for Applications da biste zvali funkciju sustava Microsoft Windows koja će vratiti korisničko ime. Microsoft nudi primjere procedura za Visual Basic for Applications samo za ilustraciju, bez jamstva ili izražena ili implicirana, uključujući, ali ne ograničavajući se na implicirana jamstva o prodaji i/ili prikladnosti za određenu namjenu. Procedure programa Visual Basic u ovom članku osiguravaju se "kao i", a Microsoft ne jamči da se mogu koristiti u svim situacijama. Dok Microsoftovi profesionalci za podršku mogu objasniti funkcionalnost određene makronaredbe, oni neće izmijeniti ove primjere radi omogućavanja dodane funkcionalnosti, niti će vam pomoći da konstruirate makronaredbe da biste zadovoljili određene potrebe. Ako imate ograničeno programiranje, preporučujemo vam da se konzultirate s nekim od Microsoftovih davatelja rješenja. Davatelji rješenja nude široku lepeku servisa utemeljenih na naknade, uključujući stvaranje prilagođenih makronaredbi. Dodatne informacije o Microsoftovim pružateljima rješenja potražite u članku Microsoftova servisa za informacije o korisniku (800) 426-9400.
PRIMJER
-
Upišite sljedeći kod u novi modul:
' 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
-
Pokrenite Get_User_Name makronaredbe. Imajte na čemu da će se trenutno korisničko ime prikazivati u okviru poruke.