每一行的条件格式

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

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

这是一个微小的macros – 你需要将它复制到VBA项目中的模块。 一旦那里,把一个光标放在macros中,然后按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 

下面的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 

我假设你的第一行是表头,所以你看到iRow从2开始计数。