058. Rileva Username del pc

Download PDF

In un contest lavorativo, a volte è utile poter rilevare chi stà utilizzando un file per poter abilitare o meno l’utilizzo di macro o calibrare quest’ultime in funzione dell’utilizzatore.

Torna utile in questi casi la seguente funzione, non realizzata a me.

In un modulo inserite il seguente codice:

 

Declare Function Get_User_Name Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long

Public Function GetUserName() As String
Dim lpBuff As String * 25
Get_User_Name lpBuff, 25

GetUserName = Left(lpBuff, InStr(lpBuff, Chr(0)) - 1)

End Function

Per vedere al volo il valore che restituisce, in un nuovo modulo inserite:

Msgbox (GetUserName)

Per usarla per abilitare o meno un utente ad eseguire una macro, potete scrivere:

If GetUserName = "Riccardo" Then
   'codice macro a piacere
Else
   Msgbox "Non sei autorizato!", VbCritical , "ATTENZIONE"
End if

Riccardo Vincenti

The following two tabs change content below.