值大于或小于的VBA条件格式单元格

值大于或小于的VBA条件格式单元格,vba,excel,conditional-formatting,Vba,Excel,Conditional Formatting,我正在尝试编写一个宏代码,对一系列单元格执行以下操作 仅当单元格已输入值时,条件格式才会应用 如果单元格中的值小于$I$6和/或大于$M$6,则高亮显示红色,否则不高亮显示(或不适用) 这用于对输入的数据进行规格检查,以确保数字在规格范围内。谢谢 我尝试的是: Sub SpecCheck() Dim iRow As Range Set iRow = Range("f16:l34") For Each cell In iRow If cell.Value

我正在尝试编写一个宏代码,对一系列单元格执行以下操作

  • 仅当单元格已输入值时,条件格式才会应用
  • 如果单元格中的值小于$I$6和/或大于$M$6,则高亮显示红色,否则不高亮显示(或不适用)
  • 这用于对输入的数据进行规格检查,以确保数字在规格范围内。谢谢

    我尝试的是:

    Sub SpecCheck()
        Dim iRow As Range
        Set iRow = Range("f16:l34")
    
        For Each cell In iRow
            If cell.Value <> "" And cell.Value > "I6" And cell.Value < "M6" Then
                cell.Interior.Color = RGB(255, 0, 0)
            End If
        Next
    End Sub
    
    子规范检查()
    暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗暗
    设置iRow=范围(“f16:l34”)
    对于iRow中的每个单元格
    如果cell.Value“”和cell.Value>“I6”和cell.Value<“M6”,则
    cell.Interior.Color=RGB(255,0,0)
    如果结束
    下一个
    端接头
    
    我试过的新代码不起作用。也不确定是否重要,但代码是在工作表的“常规”代码中编写的

    Sub SpecCheck()
    
    Dim iRow As Range, cell As Range 
    Dim lowSpec As Range
    Dim highSpec As Range
    Set iRow = Range("f16:l34")
    Set lowSpec = Range("r6")
    Set highSpec = Range("s6")
    
    For Each cell In iRow
     If cell.Value <> "" And cell.Value > highSpec And cell.Value < lowSpec Then
        cell.Interior.Color = RGB(255, 0, 0)
     End If
    Next
    
    End Sub
    
    子规范检查()
    变暗箭头为范围,单元格为范围
    Dim低规格As范围
    Dim highSpec As范围
    设置iRow=范围(“f16:l34”)
    设置低规格=范围(“r6”)
    设置高规格=范围(“s6”)
    对于iRow中的每个单元格
    如果cell.Value“”和cell.Value>highSpec和cell.Value
    您需要指定这些是范围,而不是字符串:

    Sub SpecCheck()
    Dim iRow As Range, cell as Range ' I also added the cell as Range
    Set iRow = Range("f16:l34")
    
    For Each cell In iRow
        If cell.Value <> "" And cell.Value > Range("$I$6").Value And cell.Value < Range("$M$6").Value Then
            cell.Interior.Color = RGB(255, 0, 0)
        End If
    Next
    End Sub
    
    子规范检查()
    Dim iRow As Range,cell As Range’我还将单元格添加为Range
    设置iRow=范围(“f16:l34”)
    对于iRow中的每个单元格
    如果cell.Value“”和cell.Value>Range($I$6”).Value和cell.Value
    我正在尝试编写一个宏代码
    。。。好吧,那它怎么了。。。?所以不是
    “为我编写代码站点”
    。向我们展示您迄今为止尝试过的内容以及遇到的问题。Sub SpecCheck()Dim iRow As Range Set iRow=Range(“f16:l34”)为iRow中的每个单元格设置iRow If cell.Value“”和cell.Value>“I6”和cell.Value<“M6”然后cell.Interior.Color=RGB(255,0,0)End If Next End Sub合并的单元格是否会影响代码?我的两个范围在一个合并的单元格中…@Sid.T.-是的,会的。你能发布一个快速的截图吗?您必须取消合并,并确保两个单元格都有数据。在我看来,通常最好避免合并单元格,只需使用格式使其看起来合并即可。您能澄清一下吗
    $I$6
    类似于
    值为123
    ,您只需检查
    123
    ?为了检查它是否是合并的单元格,我将单元格范围更改为r6和s6。我要检查的值是否低于299,如果高于311。Private Sub SpecCheck()Dim iRow As Range,cell As Range'我还添加了单元格As Range Dim lowSpec As Range Dim highSpec As Range Set iRow=Range(“f16:l34”)Set lowSpec=Range(“r6”)Set highSpec=Range(“s6”),用于iRow if cell.Value“”中的每个单元格和cell.Value>highSpec和cell.Value