Como bloquear ciertas celdas si ya tengo una macro

Solicito apoyo de parte de ustedes para poder bloquear ciertas celdas de un hoja de Excel, en el cual ya tengo una macro que alguien me apoyo para poder ocultar ciertas celdas, entonces lo que yo quiero es que ciertas celdas no se pueda modificar, pero con esta macro cuando protejo la hoja me da error la macro, ya tengo marcadas las celdas y le coloque el check de bloqueada a la celdas, les adjunto la macro que ya tiene el archivo

Private Sub CheckBox1_Click() If CheckBox1.Value = True Then  ActiveSheet.Unprotect     Rows("26:36").Select     Selection.EntireRow.Hidden = False    Rows("53:68").Select     Selection.EntireRow.Hidden = False     Range("L17").Select

Cells.Select ' selcciona todas las celdas de la hoja Selection.Locked = False ' las marca como desbloqueadas Selection.FormulaHidden = False Range("s16:s24").Select ' selecciona el rango de celdas que desees dejar bloqueadas Selection.Locked = True ' bloquea las celdas seleccionadas Range("L24").Select Selection.Locked = True ' bloquea las celdas seleccionadas Range("p32").Select Selection.Locked = True ' bloquea las celdas seleccionadas Range("p36").Select ' selecciona el rango de celdas que desees dejar bloqueadas Selection.Locked = True ' bloquea las celdas seleccionadas Range("p37:p40").Select Selection.Locked = True ' bloquea las celdas seleccionadas Range("k41").Select Selection.Locked = True ' bloquea las celdas seleccionadas Range("p42:p49").Select Selection.Locked = True ' bloquea las celdas seleccionadas Range("K50:k51").Select ' selecciona el rango de celdas que desees dejar bloqueadas Selection.Locked = True ' bloquea las celdas seleccionadas Range("K52:p52").Select ' selecciona el rango de celdas que desees dejar bloqueadas Selection.Locked = True ' bloquea las celdas seleccionadas Range("p54:p62").Select ' selecciona el rango de celdas que desees dejar bloqueadas Selection.Locked = True ' bloquea las celdas seleccionadas Range("k63:k65").Select ' selecciona el rango de celdas que desees dejar bloqueadas Selection.Locked = True ' bloquea las celdas seleccionadas Range("a1:a6").Select ' selecciona el rango de celdas que desees dejar bloqueadas Selection.Locked = True ' bloquea las celdas seleccionadas Range("a9:a10").Select ' selecciona el rango de celdas que desees dejar bloqueadas Selection.Locked = True ' bloquea las celdas seleccionadas Range("a11").Select Selection.Locked = True Range("a66:a70").Select Selection.Locked = True Range("r71:r79").Select Selection.Locked = True Range("r81:r82").Select Selection.Locked = True Range("r84:p90").Select Selection.Locked = True Range("p100:p101").Select Selection.Locked = True Range("p111:p113").Select Selection.Locked = True

Selection.FormulaHidden = False ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True     Range("L17").Select

Else  ActiveSheet.Unprotect     Rows("26:36").Select     Selection.EntireRow.Hidden = True     Rows("53:68").Select     Selection.EntireRow.Hidden = True     Range("L17").Select

Cells.Select Selection.Locked = False Selection.FormulaHidden = False Range("s16:s24").Select Selection.Locked = True Range("L24").Select Selection.Locked = True Range("p32").Select Selection.Locked = True Range("p36").Select Selection.Locked = True Range("p37:p40").Select Selection.Locked = True Range("k41").Select Selection.Locked = True Range("K50:k51").Select Selection.Locked = True Range("p42:p49").Select Selection.Locked = True Range("K52:p52").Select Selection.Locked = True Range("p54:p62").Select Selection.Locked = True Range("k63:k65").Select Selection.Locked = True Range("a1:a6").Select Selection.Locked = True Range("a9:a10").Select Selection.Locked = True Range("a11").Select Selection.Locked = True Range("a66:a70").Select Selection.Locked = True Range("r71:r79").Select Selection.Locked = True Range("r81:r82").Select Selection.Locked = True Range("r84:p90").Select Selection.Locked = True Range("p100:p101").Select Selection.Locked = True

Selection.FormulaHidden = False ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True     Range("L17").Select

End If   

End Sub

1

1 Respuesta

25.175 pts. Nunca es tarde para aprender....

No distingo mucho tu macro ya que la estoy mirando desde el cel, además por la fecha de la pregunta quizás ya tengas la respuesta ...

¿Probaste agregar la línea "On Error Resume Next" haber si así te funciona?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas