Access - Capturar usuario

   
Vista:

Capturar usuario

Publicado por Pablo (1 intervención) el 27/07/2010 11:01:59
¿Como puedo capturar el usuario de Windows que está creando un registro?.
Tengo una base de datos en red, muy simple, en la que los usuarios registran una actividad, pero me gustaría saber quien la registra, tomando su login de acceso a Windows.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Enrique Ramírez

RE:Capturar usuario

Publicado por Enrique Ramírez (617 intervenciones) el 27/07/2010 15:54:06
Te puedes encontrar diferentes codigos para hacerlo, algunos más complicados otros más sencillos, yo utilizo este, y te pongo el codigo para que además sepas que computadora está utilizando el usuario.

(1) En un formulario pega lo siguiente, no necesariamente debe ir en el Form_Load ponlo donde lo necesites y cambia el nombre de las cajas de texto si lo requieres.

Private Sub Form_Load()
Me.txt_WindowsUser.Value = GetUser()
Me.txt_ComputerName.Value = GetComputer()
End Sub

(2) Crea un modulo y pega lo siguiente:

Option Compare Database
Private Declare Function GetUserName Lib "advapi32" Alias "GetUserNameA" _
(ByVal lpszReturnBuffer As String, ByRef lpdwBufferSize As Long) As Long

Private Declare Function GetComputerName Lib "Kernel32" Alias "GetComputerNameA" _
(ByVal lpszReturnBuffer As String, lpdwBufferSize As Long) As Long

Public Function GetUser() As String
Dim sReturnBuffer As String * 255
Dim lBufferSize As Long
Dim lErrNo As Long
lBufferSize = Len(sReturnBuffer)
lErrNo = GetUserName(sReturnBuffer, lBufferSize)
GetUser = Left$(sReturnBuffer, lBufferSize - 1)
End Function

Public Function GetComputer()
Dim sComputerName As String * 255
Dim lNameSize As Long
Dim lErrNo As Long
lNameSize = Len(sComputerName)
lErrNo = GetComputerName(sComputerName, lNameSize)
GetComputer = Left$(sComputerName, lNameSize)
End Function
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Capturar usuario

Publicado por Emilio (221 intervenciones) el 27/07/2010 16:08:22
en un cuadro de texto pones en valor predeterminado:

=Environ("Computername")

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Capturar usuario

Publicado por Chea (1015 intervenciones) el 27/07/2010 17:21:05
Quizás mejor

= Environ ("UserName")

Saludos
José Bengoechea Ibaceta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Capturar usuario

Publicado por Emilio (221 intervenciones) el 27/07/2010 18:00:14
Pero Chea si pongo:

= Environ ("UserName") me pone administrador y de la otra forma me pone el nombre completo del Equipo o sea mi nombre, que tengo mal.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Capturar usuario

Publicado por Fer Abrile (2 intervenciones) el 13/03/2015 19:22:45
No me funciono cuando abro el formulario me aparece #¿Nombre?, y me cambio a Entorno("UserName").
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Enrique Ramírez

RE:Capturar usuario

Publicado por Enrique Ramírez (617 intervenciones) el 27/07/2010 16:29:15
Ves como tengo razón al decir que hay codigos sencillos y complejos, solo hay que probar que el ejemplo de Emilio funcione bién en Red y con servidores remotos y si no hay problema.... VAMOS a utilizar el ejemplo de Emilio está super sencillo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Gracias en mayusculas

Publicado por Pablo (1 intervención) el 28/07/2010 23:22:11
Enrique, Emilio, Chea gracias por vuestra inestimable ayuda.
No soy programador y hago mis aplicaciones en excel o access para mi, porque lo realmente complejo es hacerlas para otros, y cuando no tengo mas remedio que compartirlas en cuatro días me las dejan hechas unos zorros. Así al menos sabré a quien pedirle explicaciones.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar