首页 > 解决方案 > 基于相邻单元格值可编辑/不可编辑的行中的单元格范围

问题描述

我需要什么:

所附图像中的当前状态:单元格 A2:E7 已解锁,工作表中的所有其他单元格保持锁定状态 工作表的其余部分在没有密码的情况下受到保护/仅选择未锁定的单元格(但如果需要,可以包含密码)

例子

标签: excelvba

解决方案


另一种解决方案。工作表中的代码 - 更改事件:


Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Column = 1 Then                   ' column A changed
        ThisRow = Target.Row                    'get row number
        If Target.Value = "Yes" Then
            ThisWorkbook.ActiveSheet.Unprotect  'unprotect sheet
            Range("B" & ThisRow).Locked = True
            Range("C" & ThisRow).Locked = True
            Range("D" & ThisRow).Locked = True
            Range("E" & ThisRow).Locked = True
            ThisWorkbook.ActiveSheet.Protect    'protect sheeet
        Else
            ThisWorkbook.ActiveSheet.Unprotect
            Range("B" & ThisRow).Locked = False
            Range("C" & ThisRow).Locked = False
            Range("D" & ThisRow).Locked = False
            Range("E" & ThisRow).Locked = False
            ThisWorkbook.ActiveSheet.Protect
        End If
    End If
    
End Sub



推荐阅读