Impedir eliminar hoja en Excel

Ya vimos en una entrega anterior como impedir que se inserten hojas a nuestro libro de trabajo, ahora vamos a ver como impedir que se eliminen hojas que ya tenemos.

Impedir que un usuario elimine hojas en Excel.

Lo primero que vamos a hacer es ingresar al Editor de Visual Basic y para ello desde la primera hoja utilizaremos la combinación de teclas Alt + F11:

Nos ubicamos en la ventana del Explorador de Proyectos que tenemos en el panel izquierdo de la ventana del Editor de Visual Basic y damos doble clic sobre el Objeto ThisWorkbook y pegamos el siguiente código:

Private Sub Workbook_SheetBeforeDelete(ByVal Sh As Object)

ThisWorkbook.Protect Structure:=True

MsgBox "No es posible eliminar la hoja"

End Sub

La primea línea marca el principio de la macro y vamos a desglosar esta línea para entender un poco mejor esta macro:

  • Private Sub: significa Subrutina (Sub) o macro de acceso Privado (Private) y este acceso se aplica cuando se intenta ejecutar desde otra macro.
  • Workbook: Corresponde a la indicación de que la macro se aplicará sobre el libro de Excel (Workbook).
  • SheetBeforeDelete: Corresponde al evento Antes de Eliminar una Hoja del libro, es decir, cuando se intente eliminar una hoja  del libro de trabajo, antes de ejecutar dicha acción, vamos a aplicar unas líneas de código.

En resumen, esta primera línea se interpreta como macro que se ejecutará antes de poder eliminar una hoja del libro de trabajo.

La segunda línea es la instrucción con la cual estamos protegiendo la estructura de todo el archivo con lo cual se impide que se eliminen hojas

La tercera línea es el código con el cual se esta enviando un mensaje informando la imposibilidad de eliminar la hoja del libro de trabajo.

La última línea End Sub marca el final de la macro

Ahora vamos a Excel y probemos a eliminar una hoja del libro de trabajo:

Descargar archivo de trabajo

Recomendados.

Compártalo en Facebook Compártalo en Twitter
Deje su opinión o su pregunta.

Regístrese para informarle cuando se responda su pregunta.

Este sitio web utiliza cookies propias y de terceros para ofrecer un mejor servicio. Al seguir navegando acepta su uso.