此代码使整张表格只读。
我想将只有空的单元格(保持空值)设为只读。它应该适用于不同的Excel文件,其中使用的单元格范围可能不同。
Sub proFirst()
Sheets("DCAFTE").UsedRange.Select
ActiveSheet.Unprotect
ActiveWorkbook.Unprotect
Dim myRange As Range
Set myRange = ActiveSheet.UsedRange
myRange.Select
Selection.Locked = True
ActiveSheet.Protect Contents:=True
End Sub
答案 0 :(得分:0)
您可以使用以下代码替换您的代码。这将仅选择空的单元格(空白)并使其为只读。具有值的单元格将是可编辑的。
Sub proFirst()
Sheets("DCAFTE").Select
ActiveSheet.Unprotect
ActiveWorkbook.Unprotect
Dim myCell As Range
Set myCell = Selection
Cells.Select
Selection.Locked = False
myCell.Select
Selection.SpecialCells(xlCellTypeBlanks).Select
Selection.Locked = True
ActiveSheet.Protect Contents:=True
myCell.Select
End Sub