¿Como crear una macro para que cada vez que se quiera guardar un archivo pida una contraseña?

Quisiera saber si se puede crear una macro para que cada vez que se quiera guardar un archivo me solicite una contraseña y la contraseña se vea con caracteres (asteriscos o puntos).

1 respuesta

Respuesta
2

H o l a:

Realiza los siguientes pasos:

1. Crea un formulario con un Label, un Textbox, y 2 commandbutton:

2. Pon el siguiente código dentro del formulario:
Private Sub CommandButton1_Click()
'Por.Dante Amor
    If TextBox1 = "" Then
        MsgBox "Escribe el password", vbExclamation, "VALIDA PASSWORD"
        TextBox1.SetFocus
        Exit Sub
    End If
    If TextBox1 = "abc" Then
        ThisWorkbook.guardar = True
        Unload Me
    Else
        MsgBox "Password incorrecto", vbExclamation, "VALIDA PASSWORD"
        TextBox1.SetFocus
    End If
End Sub
'
Private Sub CommandButton2_Click()
'Por.Dante Amor
    Unload Me
End Sub

3.  Instrucciones para userform

  • Abre tu hoja de excel
  • Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  • En el menú elige Insertar / UserForm
  • Le das dobleclik en cualquier parte del Panel del userForm y copias la macro
  • En el panel del UserForm agrega los controles

Para insertar un control en el formulario, selecciona el control desde el Cuadro de herramientas y arrástralo al panel del formulario:


4. Ahora, agrega el siguiente código en los eventos de Thisworkbook:

Public guardar
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'Por.Dante Amor
    If SaveAsUI Then
        MsgBox "No se puede guardar como", vbExclamation
        Cancel = True
        Exit Sub
    End If
    guardar = False
    UserForm1.Show
    If guardar Then
        Cancel = False
    Else
        Cancel = True
        MsgBox "Guardar cancelado"
    End If
End Sub

Instrucciones para poner la macro en los eventos ThisWorkbook

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a ThisWorkbook
  4. Del lado derecho copia la macro

Instrucciones para poner la macro en los eventos ThisWorkbook

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a ThisWorkbook
  4. Del lado derecho copia la macro


Si tienes dificultades para seguir los pasos, envíame tu archivo para adecuar las macros.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “” y el título de esta pregunta.

Avísame en esta pregunta cuando me lo hayas enviado.

S a l u d o s . D a n t e   A m o r

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Piero Sanchez VasquezPiero Sanchez Vasquez” y el título de esta pregunta.

Muchas gracias, pero como hago para que al digitar la contraseña me aparezcan caracteres (asteriscos o puntos)?

Agrega lo siguiente en el código del formulario:

Private Sub UserForm_Activate()
TextBox1.PasswordChar = "*"
End Sub

Te debe quedar así:

Private Sub CommandButton1_Click()
'Por.Dante Amor
    If TextBox1 = "" Then
        MsgBox "Escribe el password", vbExclamation, "VALIDA PASSWORD"
        TextBox1.SetFocus
        Exit Sub
    End If
    If TextBox1 = "abc" Then
        ThisWorkbook.guardar = True
        Unload Me
    Else
        MsgBox "Password incorrecto", vbExclamation, "VALIDA PASSWORD"
        TextBox1.SetFocus
    End If
End Sub
'
Private Sub CommandButton2_Click()
'Por.Dante Amor
    Unload Me
End Sub
'
Private Sub UserForm_Activate()
TextBox1.PasswordChar = "*"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas