【发布时间】:2017-07-24 16:54:05
【问题描述】:
我是 VBA 的新手。我正在尝试制作一个按钮来清除我未受保护的单元格中的值。我有一张受保护的工作表,但我想确保只清除未受保护的单元格。我需要一个单元格范围吗?提前致谢
【问题讨论】:
我是 VBA 的新手。我正在尝试制作一个按钮来清除我未受保护的单元格中的值。我有一张受保护的工作表,但我想确保只清除未受保护的单元格。我需要一个单元格范围吗?提前致谢
【问题讨论】:
工作表被保护,单元格被锁定。
试试这个:
Sub ClearStuff()
Dim r As Range, rClear As Range
Set rClear = Nothing
For Each r In ActiveSheet.UsedRange
If r.Locked = False Then
If rClear Is Nothing Then
Set rClear = r
Else
Set rClear = Union(rClear, r)
End If
End If
Next r
rClear.Clear
End Sub
EDIT#1:
这只会清除内容:
Sub ClearStuff()
Dim r As Range, rClear As Range
Set rClear = Nothing
For Each r In ActiveSheet.UsedRange
If r.Locked = False Then
If rClear Is Nothing Then
Set rClear = r
Else
Set rClear = Union(rClear, r)
End If
End If
Next r
rClear.ClearContents
End Sub
【讨论】: