Saltar al contenido

Poner cartel con leyenda cada vez que una macro tira error 1004


Recommended Posts

publicado

Hola, tengo una macro que desprotege ciertas celdas, cuando apreto la misma, primero te pregunta la contrasena. Pero necesito que cada vez que la contrasena es incorrecta no me tire error 1004 sino un cartel que diga contrasena incorrecta. Cree la siguiente macro pero no me funciona:

Sub Desproteger()

'

' Desproteger Macro

'

' On Error GoTo Errhandler

ActiveSheet.Unprotect

Sheets("OP").Select

ActiveSheet.Unprotect

Sheets("NP").Select

Range("F11").Select

Exit Sub

Errhandler:

MsgBox "No dijiste la palabra magica", vbOKOnly, "Error"

Exit Sub

End Sub

Que debo hacer para que funcione? Desde ya muchas gracias =)

publicado
Que debo hacer para que funcione?

Subir el archivo e indicar las passwords correspondientes a cada una de las hojas.

publicado

Además de lo que ya te indicó el maestro macro, parece que tienes comentada la línea On Error Goto Errhandler, con dicha línea comentada el código nunca irá a la etiqueta Errhandler cuando se presente un error.

Una opción de lo que buscas, un poco más elaborada, podría ser algo así:

Sub Desproteger()
     '
     ' Desproteger Macro
     '


    On Error GoTo Error_Desproteger

    ActiveSheet.Unprotect
    Sheets("OP").Select
    ActiveSheet.Unprotect
    Sheets("NP").Select
    Range("F11").Select


Salir_Desproteger:
    Exit Sub



Error_Desproteger:

    If Err.Number = 1004 Then

        If MsgBox("No dijiste la palabra magica" & _
                  vbCrLf & _
                  vbCrLf & _
                  "¿Desea volver a intentar?", vbYesNo, "Error") = vbYes Then

            Resume

        Else

            Resume Next

        End If

    Else

        MsgBox "Error " & Err.Number & ": " & Err.Description

        Resume Salir_Desproteger

    End If

End Sub

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.