小编Rya*_*n E的帖子

锁定某个范围内的某些单元格

我正在尝试循环一系列单元格,锁定任何具有内容的单元格,同时保持空单元格未锁定.

当我运行以下代码时,结果是整个工作表被锁定.如果我添加一个else语句,表单将被解锁.基本上无论最后一个.locked =(true,false)语句是整个工作表如何结束.

更改1 我是否有可能因为我是唯一一个无法使用此功能而开启/关闭的设置?

Sub ProtectTheSheet()
Dim chCell As Range
Dim chRng As Range

'Clear the default status
ActiveSheet.Unprotect
Range("A7:I35").Locked = False

Set chRng = ActiveSheet.Range("A7:I35")

'Check cell value in body and lock cells with content
For Each chCell In chRng.Cells
    If chCell.Value <> "" Then Cells.Locked = True
Next chCell

ActiveSheet.Protect

End Sub
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba excel-2010

3
推荐指数
1
解决办法
5万
查看次数

标签 统计

excel ×1

excel-2010 ×1

excel-vba ×1

vba ×1