写一段 excel vba 代码

写一段 excel vba 代码
当是否锁定为“是”时,即锁定这一行,任何人不可修改(如A2:J2这个范围),只能为“否”时才可修改,或者让用户无法选择这一行也同样无法修改,同时给不可修改的这个范围的单元格增加一个颜色区别。
行是不确定的
哪位高手会的教学 谢谢
你的附图好像不对。

假设是否锁定这列在“K”列,那么请按ALT+F11打开VBA窗口,粘贴以下代码:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Range("K" & Target.Row).Value = "是" Then
ActiveSheet.Unprotect
With Cells
.Locked = False
.FormulaHidden = False
End With
With Range("A" & Target.Row & ":J" & Target.Row)
.Locked = True
.FormulaHidden = True
.Interior.ColorIndex = 6
End With
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True

ElseIf Range("岁档K" & Target.Row).Value = "否" Then
ActiveSheet.Unprotect
With Cells
.Locked = False
.FormulaHidden = False
End With

With Range("A" & Target.Row & ":J" & Target.Row)
.Locked = False
.FormulaHidden = False
.Interior.ColorIndex = Null
End With
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End Sub

希望哪腊能帮到楼主,有其它要求请HI我乎缓乱。
← 上一篇: 下一篇: →