Desbloquear rango de celdas en VBA

Esta pregunta está relacionada con la que me has contestado anteriormente, de titulo "Proteger celdas de un rango en hojas en VBA".
Acabo de darme cuenta de que tal como está ahora la macro, puedo desproteger la hoja para actualizar el nombre del mes, pero al volver a protegerla, me protege todas las celdas, cuando lo que yo quería era mantener desprotegidas en todas las hojas ciertas celdas para que el usuario pueda entrar datos en ellas.
Estas celdas las tengo identificadas en un rango que he creado para la hoja de enero y no sé cómo "trasladarlo" al resto de hojas.
¿Me puedes echar un cable en esto?
Respuesta
1
Haz lo siguiente:
Desprotege manualmente la hoja que usas como patrón o plantilla para crear el resto de hojas. Selecciona el rango de celdas que el usuario puede modificar. Si el rango no es continuo tendrás que hacerlo una a una. Cuando selecciones la(s) celdas(s) click derecho... Formato de Celdas y en la ficha Proteger desactiva la opción Bloqueada. Cuando termines protege nuevamente la hoja. Tendrás que hacer esto solo una vez en la hoja plantilla porque los cambios se conservaran cuando la repliques. Si quieres hacerlo con vba:
worksheets("Nombre").Range("A1").Locked=False
Si es para un rango de 2 o más celdas entonces:
worksheets("Nombre").Range("A1:A10").Locked=False
Gracias, lo probaré pero no me acaba de solucionar bien el asunto, porque esta plantilla (que la genera el usuario cuando quiere, y a partir de ésta genera los "n" libros con los cuales trabajará durante el año) puede ir cambiando la disposición de las celdas en cuestión. De hecho, la solución al tema pasaría por la otra pregunta que me has contestado hace poco. Así que cierro ésta, y una menos pendiente.
Te agradezco mucho el esfuerzo que te tomas, y aunque esta hoja me ha salido un poco "marciana", nada de lo que me has enseñado cae en saco roto, pues lo aplico a otras casuísticas.
Saludos cordiales.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas