Hej ! Tack Åsa, Lite osäker, men hittade detta på en site Ok, testa WNetGetUser:VBA problem
Jag är nybörjare på VBA och skulle vilja ha tag i användarnamnet i Windows och lägga det i en variable.
Hur hittar jag den?
Tack för all hjälp jag kan få.
Mvh
JonasSv: VBA problem
Men när jag provar så blir variabelen tom tyvärr......
Har du något annat bra tips?
Mvh
JonasSv: VBA problem
<code>
sUser=VBA.Environ("USERNAME")
</code>
eller
<code>
Set netObj = CreateObject("WScript.Network")
user = netObj.UserName
</code>
eller
<code>
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Private Sub Form_Load()
Dim strUserName As String
'Create a buffer
strUserName = String(100, Chr$(0))
'Get the username
GetUserName strUserName, 100
'strip the rest of the buffer
strUserName = Left$(strUserName, InStr(strUserName, vbNullChar) - 1)
'Show the temppath and the username
MsgBox "Hello " + strUserName
End Sub
</code>
Hoppas nån hjälper Sv: VBA problem
<code>
Private Declare Function WNetGetUser Lib "mpr.dll" Alias "WNetGetUserA" _
(ByVal lpName As String, ByVal lpUserName As String, lpnLength _
As Long) As Long
Private Const NoError = 0
Public Sub Main
Dim sUserLogin As String
sUserLogin = GetUserLogin
MsgBox sUserLogin
End Sub
Private Function GetUserLogin() As String
Dim sUser As String
Dim lHdl As Long
Dim lLength As Long
lLength = 255
sUser = Space$(lLength + 1)
lHdl = WNetGetUser("", sUser, lLength)
If lHdl = NoError Then
GetUserLogin = Left$(sUser, InStr(sUser, Chr(0)) - 1)
End If
End Function
</code>