【发布时间】:2020-06-14 23:24:00
【问题描述】:
我有 VBA 代码,它通过一个范围并根据预定义的条件更改单元格的颜色。该代码适用于两行(第 3 行和第 4 行)但是,我想再使用它 98 次。
Dim rCell As Excel.Range
Dim rRng As Range
Set rCell = Range("AS3")
For Each rCell In ws1.Range("AS3:BG3")
If rCell.Value < Range("BP3").Value Or rCell.Value > Range("BO3").Value Then
rCell.Select
With Selection.Font
.Color = -16776961
.TintAndShade = 0
End With
End If
Next rCell
Set rCell = Range("AS4")
For Each rCell In ws1.Range("AS4:BG4")
If rCell.Value < Range("BP4").Value Or rCell.Value > Range("BO4").Value Then
rCell.Select
With Selection.Font
.Color = -16776961
.TintAndShade = 0
End With
End If
Next rCell
【问题讨论】:
-
你想要
range("AS3:BG101")? -
Set rCell = Range(...: 做作没有用,因为在For Each rCell ...行再次设置了变量。顺便说一句,在使用 Range 时,您应该始终明确。也许你想要w1.Range(...而不是隐含的 *ActiveSheet.*Range(... -
为什么不使用条件格式?