Excel 是否有方法验证一行中的所有单元格是否符合相同的标准?

Excel 是否有方法验证一行中的所有单元格是否符合相同的标准?,excel,vba,Excel,Vba,我是vba新手,正在尝试自动化一些数据分析。在原始数据中,我对单元格进行了格式化,以突出显示两个用户输入条件之间的单元格。现在我需要找到该行中所有单元格高亮显示的行。我尝试了以下方法。对不起,我在手机上 Sub Hold() Dim cell as range Dim rowdata as range Dim s as long Dim rc as long Dim n as Boolean rc = range("C10", range("C

我是vba新手,正在尝试自动化一些数据分析。在原始数据中,我对单元格进行了格式化,以突出显示两个用户输入条件之间的单元格。现在我需要找到该行中所有单元格高亮显示的行。我尝试了以下方法。对不起,我在手机上

Sub Hold()

    Dim cell as range
    Dim rowdata as range
    Dim s as long
    Dim rc as long
    Dim n as Boolean

    rc = range("C10", range("C10").end(xldown)).rows.count

    For s = 0 to rc
        Set rowdata = range("C10", range("C10").end(xltoright)).offset(s , 0)
            For each cell in RowData
                If cell.interior.color <> 11389944 Then
                    n = false 
                    Exit for
                End if 
            Next cell

        If n = false then 
            Rowdata.font.color = rgbred
        Else 
            Rowdata.font.color = rgbgreen
        End if
    Next s
End Sub
Sub-Hold()
暗淡单元格作为范围
将行数据设置为范围
他和我一样长
如长
Dim n为布尔型
rc=范围(“C10”,范围(“C10”).end(xldown)).rows.count
对于s=0至rc
设置行数据=范围(“C10”,范围(“C10”)。结束(xltoright))。偏移量(s,0)
对于RowData中的每个单元格
如果cell.interior.color 11389944,则
n=错误
退出
如果结束
下一个细胞
如果n=false,则
Rowdata.font.color=rgd
其他的
Rowdata.font.color=rgbgreen
如果结束
下一个s
端接头

我手动搜索以查找一行,其中所有单元格都高亮显示在该行中。当我调试时,我希望字体变为绿色。事实并非如此。我注意到第二个
if
语句有
n=false
,尽管我希望它是真的,因为在那一行
cell.interior.color=11389944
。我在这里遗漏了什么?

而不是检查颜色-检查在条件格式中使用的相同逻辑。你能分享一下最初用来设置单元格格式的规则吗?这可能是养成缩进代码习惯的更好的方法——使代码更具可读性。有一件事是,
n
永远不可能是
True
。像
n
这样的布尔值的默认值是
false
-您从来没有将其设置为
True
。@urderaboy来格式化,
如果cell.value>=CriteriaMinimum和cell.value@SJR感谢您的澄清,我不知道它必须被显式设置。与其检查颜色,不如检查在条件格式中使用的相同逻辑。你能分享一下最初用来设置单元格格式的规则吗?这可能是养成缩进代码习惯的更好的方法——使代码更具可读性。有一件事是,
n
永远不可能是
True
。像
n
这样的布尔值的默认值是
false
-您从来没有将其设置为
True
。@urderaboy来格式化,
如果cell.value>=CriteriaMinimum和cell.value@SJR感谢您的澄清,我不知道它必须被明确设置。