Proteger celdas de excel después de copiar contenido en ellas

Hola, ... Tengo esta macro para proteger las celdas después de copiar en ellas, .. Es decir luego de introducir un texto en alguna celda de mi rango seleccionado no es posible luego editarlas a menos que se posea la contraseña que para este caso es "excel" --------------- la macro me funciona de maravilla, ... Hay que tener en cuenta que antes de ejecutar la macro hay que desproteger todas las celdas de la hoja.

Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, Range("A1:Z1000")) Is Nothing Then
Exit Sub
Else
If Target.Value <> "" Then
Target.Select
ActiveSheet.Unprotect "excel"
Selection.Locked = True
End If
ActiveSheet.Protect "excel", DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlUnlockedCells
End If
End Sub

Bueno como les digo la macro me funciona muy bien, ... PERO lo que sucede es que tengo unos libros que ya tienen contenido en muchas de sus celdas y quiero que esta macro reconozca ese texto que ya esta en las celdas y lo proteja del mismo modo, esto al abrir inmediatamente el libro de excel ------------- si ejecuto la macro en estos libros que ya tienen contenido funciona, pero me deja modificar las celdas que tienen contenido y luego de eso las protege, es decir, inicializa como si el libro y todas sus celdas estuvieran en blanco.

He probado proteger el rango ya con contenido mediante las opciones de excel de proteger rangos con clave, y luego ejecutar la macro para el rango restante, pero me sale un error en esta linea de código (ActiveSheet.Unprotect "excel") ---------- quiero entonces me ofrezcais alguna solución posible, pues soy nuevo en esto del uso de las macros ...... Se los agradezco desde ya, ... Ojala me puedan ayudar, ---- GRACIAS

Añade tu respuesta

Haz clic para o