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.
Riccardo Vincenti
Ultimi post di Riccardo Vincenti (vedi tutti)
- 073. Duplicare righe excel modificando il contenuto - 6 Ottobre 2017
- 072. Estrazione numeri casuali - 6 Ottobre 2017
- 071. Estrazione casuale valori da un elenco - 5 Ottobre 2017
- 070. Contare dati univoci senza Pivot - 21 Settembre 2017
- 069. Aggiungere intervalli ad una data: Date Add in Excel - 21 Settembre 2017