maurogsc.eu
mauro gamberini


home ==> Excel: come fare per ==> Sistema: recuperare nome utente computer/rete(32/64 bit)

Sistema: recuperare nome utente computer(32/63 bit)  - VBA

NOTA. La soluzione ed il codice sono forniti *così come sono* e l’autore declina ogni responsabilità per eventuali problemi causati dal codice o dalla soluzione proposta se usati impropriamente. Create e utilizzate una copia del file per le vostre prove, *prima* di utilizzare il codice o la soluzione in files importanti.

1 - Funzione che recupera il nome dell'utente con il quale si è fatto l'accesso al computer/rete ed il tipo di sistema operativo, se a 32 o 64 bit. Può essere utile, ad esempio, nel caso si stia creando un file di log per gli accessi al file. ATTENZIONE a non confondere il nome utente con il quale si è fatto l'accesso al computer/rete con il nome utente relativo a Office(vedi punto 2). In un modulo standard:

#If Win64 Then
    Public Declare PtrSafe Function GetUserName Lib "advapi32.dll" _
        Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As LongLong) As Long
#Else
    Public Declare Function GetUserName Lib "advapi32.dll" _
        Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
#End If

Public Function fUserName() As String

    Dim s As String * 255
    Dim lLen As Long
    Dim sString As String

    sString = ""
    On Error Resume Next
    lLen = GetUserName(s, 255)
    lLen = InStr(1, s, Chr(0))
    
    If lLen > 0 Then
        sString = Left(s, lLen - 1)
    Else
        sString = s
    End If
    On Error GoTo 0
    
    #If Win64 Then
        fUserName = Trim(sString & "-Win 64bit")
    #Else
        fUserName = Trim(sString & "-Win 32bit")
    #End If

End Function

Da richiamare, ad esempio, così:

Public Sub mm()
    MsgBox fUserName
End Sub

2 - Per recuperare il nome utente relativo ad Office, vedi qui: Excel: recuperare nome utente di Office

Per ulteriori informazioni su Microsoft Excel ed il suo Visual Basic, utilizzate questo forum:
http://social.answers.microsoft.com/Forums/it-IT/officeexcelit/threads


Ultimo aggiornamento di questa pagina: 16/12/2010 - mauro gamberini