gebruikersnaam als voorwaarde om marco te gebruiken

Status
Niet open voor verdere reacties.

Rudi Rombouts

Verenigingslid
Lid geworden
31 jan 2002
Berichten
396
hoe kan ik via de gebruikersnaam waarmee iemand inlogd' op de PC, bepalen hoe welk deel van een macro hij mag gebruiken. Dus waar ergens wordt deze gebruiknaam bewaard en hoe kan ik die in de macro als voorwaarden gebruiken
 
Hai, :D

Als je de Logon naam wilt hebben moet deze opgevraagd worden uit de SAM. Dit doe je met een API

Dus:
Code:
Option Explicit
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, _
                                                                                nSize As Long) As Long                                                                 
Private Function GetLogonUser() As String
    Dim strTemp As String, strUserName As String
    
    strTemp = String(100, Chr$(0))
    strTemp = Left$(strTemp, InStr(strTemp, Chr$(0)) - 1)

    strUserName = String(100, Chr$(0))
    GetUserName strUserName, 100
    strUserName = Left$(strUserName, InStr(strUserName, Chr$(0)) - 1)
    GetLogonUser = strUserName
End Function

Sub ShowUserName()
MsgBox GetLogonUser
End Sub

Sub OnlyForRudi()
Dim sName As String
 
 sName = GetLogonUser
 If sName = "Rudi" Then
    MsgBox "jij bent Rudi"
    'doe hier wat de macro moet doen!
 Else
    Exit Sub 'niet uitvoeren dus
 End If
End Sub

Zie bijlage voor voorbeeld. (Twee menuknoppen toegevoegd in de menubalk)
Zelf eventjes de juist Usernaam invoeren.

See Yah! :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan