双if语句,然后突出显示值<>到%

我试图做的是:如果列D上的单元格说汽车然后检查右边的最后一个单元格(行中的最后一个单元格),如果该值小于20%,然后突出显示。 (这是代码的最后部分):

这是我迄今为止,但我不知道如何解决它。 我必须这样做的工作,但我感到困惑,谢谢!

Worksheets("Report").Activate Call VBA Dim lrow As Integer Dim xrow As Integer Dim FR As Range Dim MR As Range Dim cell As Range lrow = wsr.Cells(Rows.Count, 3).End(xlUp).Row xrow = wsr.Cells(Rows.Count, 3).End(xlToRight) Set FR = Range("D12:D" & lrow) For Each cell In FR If cell.Value = "Cars" then for cell.xrow if cell.Value > 0.20 then Then cell.Interior.Color = RGB(224, 202, 224) 

由Xrow我的意思是行上的最后一个单元格。

谢谢 !

为了避免vba,你可以使用条件格式。

条件格式公式将是:

 =AND($D12="Cars",INDEX(12:12,MATCH(1E+99,12:12))>0.2) 

INDEX(12:12,MATCH(1E+99,12:12))部分是find该行中具有数字的最后一列的内容。 然后testing它是否大于.2

您可以将其应用于所需的所有行和列,从第12行开始格式化,我只将它应用于D12:D28:

在这里输入图像说明

尝试这个:

 For Each cell In FR If cell.Value = "Cars" Then If Cells(cell.Row, Columns.Count).End(xlToLeft).Value < 0.2 Then cell.Interior.Color = vbRed End If End If Next 

然而斯科特·克莱纳的答案是一个更优雅的解决scheme。