Excel列条件格式

我有一个Excel工作表,我需要应用一些条件格式,并对如何做到这一点感到困惑。

我需要做的是使一列的值(在我的情况下列G)红色,如果另一列(列E)的date是五天以上,如果没有值在不同的列(列I)。

我还需要它,以便第一个值(在列G中)恢复为正常的黑色,如果有一个值添加到第二个条件列(列I)。

另一个问题是,即使在条件格式化符合要求保存或运行下面的代码之前,之后的CF不会持续:

这是我们的“显示最新”或崩溃代码:

Sub Collapse1() ' ' Collapse Macro ' Collapses rows to show only the most recent issuance of each unique Document Number ' ' Range("Table1[[#Headers],[Document Number]]").Select Cells.FormatConditions.Delete Selection.AutoFilter Selection.AutoFilter ActiveSheet.ListObjects("Table1").Sort. _ SortFields.Clear ActiveSheet.ListObjects("Table1").Sort. _ SortFields.Add Key:=Range("Table1[Document Number]"), SortOn:= _ xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal ActiveSheet.ListObjects("Table1").Sort. _ SortFields.Add Key:=Range("Table1[Issuance" & Chr(10) & "Date]"), SortOn:=xlSortOnValues _ , Order:=xlDescending, DataOption:=xlSortNormal With ActiveSheet.ListObjects("Table1"). _ Sort .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Range("Table1[Document Number]").Select Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _ "=COUNTIF($A$12:A12,A12)>1" Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority With Selection.FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .Color = 255 .TintAndShade = 0 End With Selection.FormatConditions(1).StopIfTrue = False Range("Table1[[#Headers],[Document Number]]").Select ActiveSheet.ListObjects("Table1").Range.AutoFilter Field:=1, Criteria1:=RGB _ (255, 255, 255), Operator:=xlFilterNoFill End Sub 

不同的解释。 请select列G和HOME>样式 – 条件格式,新规则…, 使用公式来确定要格式化哪些单元格,在此公式为真时格式化值

 =AND(E1<>"",E1<TODAY()-5,I1="") 

格式化... ,select您select的格式(不是黑色),OK,OK。

这会在五天后触发。