Usuario:
Hola, quiera saber si hay una forma como una macro para borrar un archivo en cuanto se desbloque, debido a que tengo un archivo que creé, pero no me gustaría que hicieran mal uso con la información que tengo oculta y en las fórmulas, esta bloqueado las hojas y el libro en estructura, y se que es muy sencillo violar las claves ya que hay macros que lo hacen, por lo que me gustaría encontrar una forma de que el archivo se auto borre en cuanto lo desbloqueen. ¿Habrá alguna forma?
Respuesta:
Buenas noches amigo
Existe una posible solución aplicando Worksheets("Hoja1"). ProtectContents . Esto le devolvera True si la hoja esta protegida y False si la hoja esta desprotegida.
Con el siguiente ejemplo básico podrá ver como funciona el comando.
Private Sub CommandButton1_Click()
If Worksheets("Hoja1").ProtectContents = True Then
Range("B2").Select
ActiveCell.FormulaR1C1 = "Protegido"
End If
If Worksheets("Hoja1").ProtectContents = False Then
Range("B2").Select
ActiveCell.FormulaR1C1 = "Desprotegido"
End If
End Sub
Para que funcione correctamente debe cambiar el formato de la celda "B1" para desbloquear la misma.
Intente programar el código de una hoja para que verifique cualquier cambio, usando el evento Changue de Worksheet, y que en cada verificación compruebe que la hoja esta protegida. Si la hoja esta desprotegida, entonces que seleccione toda la hoja y la borre.
Si me me da algo de tiempo, puedo hacer el intento de programarle una hoja de ejemplo.
Saludos
Existe una posible solución aplicando Worksheets("Hoja1"). ProtectContents . Esto le devolvera True si la hoja esta protegida y False si la hoja esta desprotegida.
Con el siguiente ejemplo básico podrá ver como funciona el comando.
Private Sub CommandButton1_Click()
If Worksheets("Hoja1").ProtectContents = True Then
Range("B2").Select
ActiveCell.FormulaR1C1 = "Protegido"
End If
If Worksheets("Hoja1").ProtectContents = False Then
Range("B2").Select
ActiveCell.FormulaR1C1 = "Desprotegido"
End If
End Sub
Para que funcione correctamente debe cambiar el formato de la celda "B1" para desbloquear la misma.
Intente programar el código de una hoja para que verifique cualquier cambio, usando el evento Changue de Worksheet, y que en cada verificación compruebe que la hoja esta protegida. Si la hoja esta desprotegida, entonces que seleccione toda la hoja y la borre.
Si me me da algo de tiempo, puedo hacer el intento de programarle una hoja de ejemplo.
Saludos
Usuario:
Bien. Una respuesta aceptable.