Password para proteger libro y macros a la ves

Mientras introduce el passw, no deje ver el libro, este abrirá y será visible, SOLO después de introducir el passw correcto.
Me de 3 oportunidades, si a la 3ª no es correcto el passw, que salga sin ver y sin abrir el libro
Si el passw es correcto, me ejecute una macro.
Agradecido

1 Respuesta

Respuesta
1

Has esto;:

Sub password()
On Error Resume Next
clave = "1234"
intentos = 3
For Each N In Sheets
N.Visible = False
Next N
For i = 0 To intentos
pass = InputBox("Ingrese Password", "Inicio", "****")
If pass = clave Then
MsgBox "Bienvenido!", vbInformation, "Exito"
For Each N In Sheets
N.Visible = True
Next N
Exit For
Else
MsgBox "Password Incorrecta ", vbCritical, "Error"
End If
Next i
For Each N In Sheets
N.Visible = False
Next N
Application.DisplayAlerts = False
ActiveWorkbook.Close SaveChanges:=False
End Sub

BIen amigo, pero algo me esta fallando.

!º- Tuve que desactivar la linea

'ActiveWorkbook.Close SaveChanges:=False porque al introducir el passw correcto, se ciera el libro solo deja la aplicación (EXCEL32) abierta pero con el fondo TODO en gris porque usa el 'ActiveWorkbook.Close SaveChanges y no el Application.Quit para que la aplicación se cierre (eso es lo de menos) yo lo cambiaría, NO  hay problema en ello.

Al Introducir el passw incorrecto las 3 opotunidades, sucede lo mismo de cerrar el libro pero da la 4ª oportunidad

A esta ultima le cambie el intentos = 3 por intentos = 2 NO se si hice bien o mal pero así si da las 3 oportunidades.

Vere donde (en que linea) colocar el 'ActiveWorkbook.Close para que se cierre SOLO al introducir el passw irroneo.

Si me puedes echar una manita, pues, Gracias de antemano

Probé la cosa con mas paciencia y me di cuenta que:

En la linea intentos = 3 si coloco 2, al 3º intento la coloco bien, me da la bienvenida pero me cierra igual el libro, igual si dejo intentos = 3  y, DEFINITIVAMENTE, no encuentro donde colocar (intentar) para la linea ActiveWorkbook.Close.

Podrías modificarlo de la siguiente forma:

Sub inicio()
On Error Resume Next
clave = "1234"
intentos = 3
' Oculto todas las hojas
For Each N In Sheets
N.Visible = False
Next N
' Inicio Validacion de Password
For i = 1 To intentos
pass = InputBox("Ingrese Password", "Inicio", "****")
If pass = clave Then
MsgBox "Bienvenido!", vbInformation, "Exito"
For Each N In Sheets
N.Visible = True
Next N
Exit For
Exit Sub
Else
MsgBox "Password Incorrecta ", vbCritical, "Error"
End If
Next i
For Each N In Sheets
N.Visible = False
Next N
If i >= 3 Then
Application.DisplayAlerts = False
ActiveWorkbook.Close SaveChanges:=False
End If
End Sub

Hola amigo. Disculpa solo ahora responderte pero es que he tenido algún contratiempo, pues he estado atareado con mi hijo que fue operado.

Voy a probar tu opción y luego diré algo

Amigo snaki, ahora si me da UNICAMENTE 3 opciones y no 4 como anteriormente pero, sigue el problema de que;

Al dar 2 malas y la 3ª buena, me da la bien venida, acerpto y me cierra el libro tal como si le diera las 3 malas.

Cuanto a verse o no verse el ibro (hojas) mientras se valida el passw, veré como hago.

En un futuro si encuentras algo que funcione tal como se espera, te agradezco me comuniques a mi mail.

Agradecido

Añade tu respuesta

Haz clic para o