Thread: Username
View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
Peter T Peter T is offline
external usenet poster
 
Posts: 5,600
Default Username

The API example Tom posted should work fine for you in windows. Try pasting
it into a new module in a new project and try again. Earlier you said "
error Project or library not found", perhaps you have a missing reference
(Tools - references). If following works it would be highly indicative of a
missing ref.

MsgBox VBA.Interaction.Environ$("USERNAME")

If for you Environ("USERNAME") still doesn't work, ie it returns an empty
string but doesn't error, there's probably not much you can do about it. It
doesn't work for me either. However I get 10 returns if I run this -

Sub test()
Dim i As Long
On Error Resume Next
For i = 0 To 100
s = Environ(i)
If Len(s) Then
Debug.Print i, s
s = ""
End If
Next
End Sub

Regards,
Peter T


"Oldjay" wrote in message
...
All computers have the same references and are running Excel 2003 SP3.
I tried the API and got the same error message at

GetUserName Buffer, BuffLen

"Tom Hutchins" wrote:

On the computers where this code does not work there is probably a

needed
reference missing (to see what references have been added, select

Refernces
from the Tools menu in the Excel Visual Basic Editor). I think the

missing
refernce is either 'Visual Basic for Applications' or 'Microsoft Excel

11.0
Object Library' (you may have a different version than 11.0).

Here is another way to retrieve the user's LAN ID using an API call:

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

Function UserName() As String
Dim Buffer As String * 100
Dim BuffLen As Long
On Error GoTo UNerr
BuffLen = 100
GetUserName Buffer, BuffLen
UserName = Left(Buffer, BuffLen - 1)
Exit Function
UNerr:
UserName = vbNullString
End Function

Sub AAAAA()
MsgBox UserName()
End Sub

Hope this helps,

Hutch

"Oldjay" wrote:

I have the following code that works on some computer but not on

others
It gives the error Project or library not found

Public Function UserName()

UserName = Environ("USERNAME")

End Function

Also tried UserName = Environ$("USERNAME")

What do I have to add?