每行的条件格式

Conditional Formatting for every row

我试图突出显示每行数据中的最大值以确定它属于哪一年。有没有一种简单的方法可以将它应用于整个电子表格?我现在唯一能做到的方法是在每一行上使用格式刷……这对于 800 多行数据来说效率不高。

使用条件格式 - 前 N 个项目

以下 VBA 代码可以解决问题(更新版本):

Sub Mark_max_value_in_every_row()
    Dim rngArea As Range
    Set rngArea = ThisWorkbook.Sheets("Sheet1").UsedRange
    Dim rngRow As Range
    Dim iRow As Long

    For iRow = 2 To rngArea.Rows.Count
        Set rngRow = rngArea.Range(Cells(iRow, 1), Cells(iRow, rngArea.Columns.Count))
        With rngRow.FormatConditions.AddTop10
            .Rank = 1
            .Interior.Color = 49407
        End With
    Next
End Sub

我假设您的 table 的第一行是 headers,因此您看到 iRow 从 2 开始计数。

这是一个小宏 - 您需要将它复制到 VBA 项目中的模块。到达那里后,将光标放在宏中并按 F5 :)

1) 它适用于从 1 到 800 的行(如果您在其他地方需要它,请更改它) 2) 它适用于 Sheet1

Sub ManyConditions()

    Dim iRow As Integer

    For iRow = 1 To 800

      With Sheet1

        With .Range(.Cells(iRow, 1), .Cells(iRow, 10)).FormatConditions.AddTop10
          .TopBottom = xlTop10Top
          .Rank = 1
          .Percent = False
          .Interior.PatternColorIndex = xlAutomatic
          .Interior.Color = 13551615
          .StopIfTrue = False
        End With

      End With

    Next

End Sub