Ayuda vba en excel boleta de notas

estoy tratando de elaborar un archivo de excel para control de notas, q por medio de visual basic para aplicaciones que habilite o no una celda de la boleta de notas dependiendo del valor de una celda adyacente, he escrito varios códigos pero al final me da error hice uno de dice código demasiado largo.

Me es urgente lograr terminar ese archivo

una parte del código es asi

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Select
Worksheets("3STA").Unprotect
Worksheets("3STA").Cells.Locked = True
Worksheets("3STA").Range("H10:H18,h37:h45,h66:h74,h93:h101").Locked = False
If Range("H10").Value <= 5 And Range("H10").Value > 0 Then
Range("I10").Locked = False
End If
If Range("H11").Value <= 5 And Range("H11").Value > 0 Then
Range("I11").Locked = False
End If
If Range("H12").Value <= 5 And Range("H12").Value > 0 Then
Range("I12").Locked = False
End If
If Range("H13").Value <= 5 And Range("H13").Value > 0 Then
Range("I13").Locked = False
End If
If Range("H14").Value <= 5 And Range("H14").Value > 0 Then
Range("I14").Locked = False
End If
If Range("H15").Value <= 5 And Range("H15").Value > 0 Then
Range("I15").Locked = False
End If
If Range("H16").Value <= 5 And Range("H16").Value > 0 Then
Range("I16").Locked = False
End If
If Range("H17").Value <= 5 And Range("H17").Value > 0 Then
Range("I17").Locked = False
End If
If Range("H18").Value <= 5 And Range("H18").Value > 0 Then
Range("I18").Locked = False
End If
Worksheets("3STA").Protect
End Sub

Esto seria para una boleta pero cada hoja tiene 50 boletas

mi duda es

1) si se puede automatizar

2) Resumir código en bucles o rutinas

Añade tu respuesta

Haz clic para o