首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >循环遍历多行

循环遍历多行
EN

Stack Overflow用户
提问于 2020-03-03 00:08:13
回答 1查看 63关注 0票数 0

我有一个VBA代码,它遍历一个范围,并根据预定义的条件改变单元格的颜色。该代码适用于两行(第3行和第4行),然而,我想再使用它98次。

代码语言:javascript
复制
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
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-03 00:20:32

如果我理解正确的话,您希望range("AS3:BG101")IF语句引用当前的rcell行。这个应该可以了。我还删除了无关的范围设置和声明以及选择。

代码语言:javascript
复制
Dim rCell As Range        

    For Each rCell In ws1.Range("AS3:BG101") 'Larger range
        If rCell.Value < Range("BP" & rcell.row).Value Or rCell.Value > Range("BO" & rcell.row).Value Then 'Variable value
            With rcell.Font 'No need to select
                .Color = -16776961
                .TintAndShade = 0
            End With
        End If
    Next rCell
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60492673

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档