Foros del Web » Programación para mayores de 30 ;) » Programación General »

Clave de ingreso

Estas en el tema de Clave de ingreso en el foro de Programación General en Foros del Web. Hola! Bueno mi consulta para los genios es la siguiente: Tengo una planilla excel pero quiero limitar el acceso a ella en este caso solo ...
  #1 (permalink)  
Antiguo 18/08/2007, 02:33
 
Fecha de Ingreso: agosto-2007
Ubicación: Castro Chiloe
Mensajes: 4
Antigüedad: 16 años, 8 meses
Puntos: 0
Clave de ingreso

Hola!
Bueno mi consulta para los genios es la siguiente:

Tengo una planilla excel pero quiero limitar el acceso a ella en este caso solo personal autorizado.
Megustaria algo como esto.
------------------------------------------
Ejem. Usuario ____________

Password ____________


Aceptar Cancelar
-------------------------------------------

Esto logicamente en un Userform si alguien me puede ayudar

Atte.
Patricio Flores S.
  #2 (permalink)  
Antiguo 20/08/2007, 09:11
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 16 años, 8 meses
Puntos: 18
Re: Clave de ingreso

Veamos. Create un formulario con dos cusdros de texto y un boton. En el evnto abrir del workbook abrimos el formulario:

Private Sub Workbook_Open()
UserForm1.Show
End Sub

Luego, en una hoja que luego ocultaremos, pon los usuarios y las contrseñas asi:

Luis Luisito
Andres andresito
Manolo manolito

Necesitaremos saber tanto el rango como la hoja donde estan estos datos.

En el evento activate del formulario ocultamos la hoja donde estan las contraseñas, en este caso la Hoja2

Private Sub UserForm_Activate()
'Ocultamos la hoja donde estan las contraseñas al abrir el archivo excell
Sheets("Hoja2").Visible = True
End Sub

Y en el evento click del boton, pon este codigo:

Private Sub CommandButton1_Click()

If IsNull(Me.TxtUsuario) Or Me.TxtUsuario = "" Then
MsgBox "Introduzca un nombre de usuario"
Exit Sub
End If

If IsNull(Me.TxtContraseña) Or Me.TxtContraseña = "" Then
MsgBox "Introduzca una contraseña"
Exit Sub
End If

Dim myRange As Range
Set myRange = Worksheets("hoja2").Range("I4:J6")


For Each c In myRange
If Me.TxtUsuario = c.Value Then 'se ha encontrado un usuario coincidente
If Worksheets("Hoja2").Cells(c.Row, c.Column + 1).Value = Me.TxtContraseña Then
MsgBox "Puede entrar"
'Ocultamos el form
Me.Hide
Exit Sub
Else
MsgBox "Acceso denegado"
'Cerramos el libro
Application.Workbooks(1).Close
End If
End If
Next c

End Sub


Solo tienes que cambiar los nombres de las hojas y el rango asigando para los nombres y contraseñas.

Un saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:07.