No sé si estas funciones han sido posteadas o no, acaban de ser colocadas en las otras News de Access "es.comp.bd.ms-access" y funcionan, de forma que como son útiles las coloco aquí para que el resto de "mantenedores" de sitios sobre Access las hagan suyas, aquí van (Cuidado con la líneas que el editor de las News trocea en dos o más líneas). Para obtener el nombre de la máquina en la que se encuentra el usuario. Posteado por CarCar desde Tenerife. ------------------------------------------------------------ Esta función te devuelve el nombre del PC, debes también declarar la función "GetComputerName" y creo que también debes de incluir las otras 2 declares (aunque no estoy seguro), cada una de las 3 Declares tiene que ir en una sóla línea. Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long Declare Function OemToChar Lib "user32" Alias "OemToCharA" (ByVal lpszSrc As String, ByVal lpszDst As String) As Long Declare Function CharToOem Lib "user32" Alias "CharToOemA" (ByVal lpszSrc As String, ByVal lpszDst As String) As Long Function NombrePC() As String Dim Buffer As String Dim Size As Long Dim X As Long Buffer = Space(255) Size = 255 'Asigna Nombre Maquina X = GetComputerName(Buffer, Size) NombrePC = Left$(Buffer, Size) End Function --------------------------------------------------------------- Para obtener el nombre de usuario Windows. Posteado por Bono desde Murcia. ---------------------------------------------------------------- Prueba con esta funcion (es una adaptacion de un modulo de Vb);-)) Saludos '---DECLARACIONES--- Option Compare Database Option Explicit Type BROWSEINFO hOwner As Long pidlRoot As Long pszDisplayName As String lpszTitle As String ulFlags As Long lpfn As Long lParam As Long iImage As Long End Type Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias _ "SHGetPathFromIDListA" (ByVal pidl As Long, _ ByVal pszPath As String) As Long Declare Function SHBrowseForFolder Lib "shell32.dll" Alias _ "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long Const BIF_RETURNONLYFSDIRS = &H1 Declare Function WNetGetUser Lib "mpr.dll" Alias "WNetGetUserA" _ (ByVal lpName As String, ByVal lpUserName As String, lpnLength As Long) As Long Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long '----- FUNCION PARA OBTENER EL USUARIO DE RED ----- Function NetUser() As String Dim cbusername As Long, username As String username = Space(256) cbusername = Len(username) If WNetGetUser(ByVal 0&, username, cbusername) = 0 Then NetUser = Left(username, InStr(username, Chr(0)) - 1) Else If GetUserName(username, cbusername) Then NetUser = Left(username, InStr(username, Chr(0)) - 1) Else NetUser = "" End If End If End Function