有人可以帮助解决以下问题 - 我想编写一个宏,如果它们小于工作表中其他地方指定的特定值,则从列中删除值。
我的尝试
Sub clearsmall()
Dim r As Range
num1 = Cells(7, 5).Value
For Each r In Selection
If r.Value < num1 Then
r.Clear
End If
Next
End Sub
问题是thois要求用户选择范围。不过,我想在宏中指定它 - 使用像
这样的东西设置r =范围(&#34; C16:C92&#34;)
我如何更改代码?
答案 0 :(得分:1)
Sub clearsmall()
Dim cell As Range, r As Range
Set r= Range("C16:C92")
num1 = Cells(7, 5).Value
For Each cell In r
If cell.Value < num1 Then cell.Clear
Next
End Sub
您还可以将其缩短为
Sub clearsmall()
Dim cell As Range
Num1 = Cells(7, 5).Value
For Each cell In Range("C16:C92")
If cell.Value < num1 Then cell.Clear
Next
End Sub
最后,您可能希望使用ClearContents而不是Clear,仅清除单元格值,这样更快。这不会触及格式