Macro para acceso a determinadas hojas
Tengo unlibro en el cual se controla adecuadamente el acceso al mismo dependendo si el usuario esta inscrito en el mismo y además si esta habilitado. Ademas queda el registro histórico de los ingresos con fecha y hora, pero necesito encontrar la manera parq eu cada usuario vaya a determinada hoja, esta deb estar oculta (Worksheets("XXXXXX"). Visible = xlSheetVeryHidden), asi que después de seleccionar su usuario, digitar su contraseña no solo le permite el acceso sino que llama a esta hoja exclusiva para él. Tengo las siguientes macros de control:
Sub Entrada()
Application.ScreenUpdating = False
nombre = Application.VLookup(Sheets("Control").Range("A2"), Sheets("Control").Range("B:C"), 2, 0)
clave = Application.VLookup(nombre, Sheets("Claves").Range("B:D"), 3, 0)
If clave = Sheets("Home").Range("I14") Then
autorizado = Application.VLookup(nombre, Sheets("Claves").Range("B:E"), 4, 0)
If autorizado = "" Then
MsgBox "Usuario no autorizado", vbCritical, "INICIO"
Else
Sheets("Home").Select
Range("I14").Select
Selection.Copy
Worksheets("Control").Visible = True
Sheets("Control").Select
Range("K2").Select
ActiveSheet.Paste
Worksheets("Entrada").Visible = True
Sheets("Entrada").Select
ActiveSheet.Unprotect Password:="2012"
Range("A3:D3").Select
Selection.Insert Shift:=xlDown
Sheets("Control").Select
Range("I2:L2").Select
Selection.Copy
Sheets("Entrada").Select
Range("A3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFiltering:=True, Password:="2012"
Sheets("Home").Select
ActiveSheet.Unprotect Password:="2012"
Range("I14").Select
Selection.ClearContents
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFiltering:=True, Password:="2012"
Worksheets("Inicio").Visible = True
Sheets("Inicio").Select
End If
Else
MsgBox "La clave o el nombre no estan registrados", vbCritical, "INICIO"
End If
Worksheets("Control").Visible = xlSheetVeryHidden
Worksheets("Entrada").Visible = xlSheetVeryHidden
Application.ScreenUpdating = True
End Sub
Sub EntradaDatos()
Entrada1 = InputBox(Chr(13) & Chr(13) & Chr(13) & Chr(13) & "Introduzca su clave numerica", "Registro por clave numerica", "Ingrese número natural, sin puntos ni comas", 4000, 3000)
If Entrada1 = "Ingrese número natural, sin puntos ni comas" Then Entrada1 = ""
ActiveSheet.Unprotect Password:="2012"
Sheets("Home").Range("I14") = Entrada1
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFiltering:=True, Password:="2012"
End Sub
Puedo compartir el libro para que el Experto que este en capacidad de darme una mano entienda mejor la necesidad.