Problema al proteger hojas con macros

Tengo el siguiente problema:
Cree un macro para que la hoja actual se desproteja (con una contraseña dada), luego se elimine la fila actual y se vuelva a proteger con la misma contraseña, hasta ahí todo funciona bien.
El problema es que necesito que las celdas bloqueadas no se puedan seleccionar, cuando ejecuto el macro, se aplica la configuración que tengo (osea sin permitir seleccionar las celdas bloqueadas), pero cuando guardo y cierro el archivo y lo vuelvo a abrir, pasa que las celdas pueden seleccionarse, cuando desprotejo la hoja se ve que la opción seleccionar celdas bloqueadas esta marcada, osea que se permite.
Cuando protejo manualmente la hoja no hay ningún problema, guardo cierro y vuelvo a abrir y todo esta en su lugar, solo me pasa cuando ejecuto la macro.
Este el el código:

Subneliminar()
'
'neliminar Macro
'
'
ActiveSheet.Unprotect("xxxx")
Selection.EntireRow.Delete
ActiveSheet.Protect("xxxx"),DrawingObjects:=True,Contents:=True,Scenarios:=True_
,AllowInsertingRows:=True,AllowDeletingRows:=True
EndSub
1

1 Respuesta

807.225 pts. Excel avanzado y VBA

Utiliza esta sentencia además de proteger y todo listo, no se podrán seleccionar las celdas bloqueadas después de la protección:

ActiveSheet.EnableSelection = xlUnlockedCells

Gracias Experto, intenté con eso, pero el problema persiste, es decir, sib bien el código funciona al ejecutar la macro, cuando guardo, cierro y vuelvo a abrir, nuevamente las celdas bloqueadas pueden seleccionarse.

No se cual es el motivo, como decía, cuando hago la protección manualmente, esto no ocurre, es decir cierro y vuelvo a abrir y las celdas bloqueadas no pueden seleccionarse, como es el objetivo.

Gracias por su tiempo, espero se pueda solucionar.

Si pusieras esto en la macro auto_open al abrir el archivo estaría protegido y no dejaría seleccionar las celdas bloqueadas

Sub auto_open()
For Each hoja In ActiveWorkbook.Sheets
hoja.Select
ActiveSheet.EnableSelection = xlUnlockedCells
hoja.Protect password:="contraseña"
Next
End Sub

Gracias compañero, me sirvió mucho, pero use algo resumido:

Subauto_open()
ForEachhoja InWorksheets
hoja.EnableSelection=xlUnlockedCells
Next
EndSub

Y ya no tengo el problema, aunque me gustaría saber a que se debe este problema y si solo me pasa a mi o es algo recurrente.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas