你能帮我循环遍历表格并只锁定指定的范围吗?我试过这样的东西,但它不能正常工作:
Sub LoopThru()
Dim N As Long, i As Long
With Sheets("Sheet1")
N = .Cells(Rows.Count, "A").End(xlUp).Row
For i = 1 To N
Sheets(.Cells(i, "A").Value).Select
Sheets(.Cells(i, "A").Value).Locked = False
Sheets(.Cells(i, "A").Value).FormulaHidden = False
Sheets(.Cells(i, "A").Value).Range("A1:X1").Locked = True
Sheets(.Cells(i, "A").Value).Protect Password:="abcd1"
Next i
End With
End Sub
我正在尝试遍历文档中的工作表列表并解锁所有单元格,然后仅锁定指定范围(使用密码)。
答案 0 :(得分:2)
这里。
循环 A 列中列出的工作表,解锁每张工作表上的所有单元格,然后锁定特定范围并使用密码 xxx 锁定工作表。
Sub PS()
Dim N As Long, i As Long
With Sheets("Sheet1")
N = .Cells(Rows.Count, "A").End(xlUp).Row
For i = 1 To N
Sheets(.Cells(i, "A").Value).Select
Sheets(.Cells(i, "A").Value).Cells.Locked = False
Sheets(.Cells(i, "A").Value).Range("A1:X1").Locked = True
Sheets(.Cells(i, "A").Value).Protect Password:="xxx"
Next i
End With
End Sub
要解锁循环:
Sheets(.Cells(i, "A").Value).Unprotect "xxx"
答案 1 :(得分:0)
Sub LoopThru()
For Each c In Worksheets("Sheet1").Range("A1:D10").Cells
c.Locked = True
Next
End Sub
然后您需要保护工作表。我在 excel 顶部的搜索栏中输入保护表,它会显示保护窗口。
这是否达到了您的要求?