分组和交替条件格式

时间:2019-10-22 03:02:19

标签: excel conditional-formatting

我有3个站点,每个站点都处理了一些我正在审查的票证。我想为每个组在两种颜色的两种阴影之间交替:站点1将在浅绿色和深绿色之间交替,站点2将在两种红色阴影之间交替,而站点3与蓝色相同。但是,我不想每隔一行,而是每隔一张票。票证可能具有与之分组的数量可变的行。参见我手动应用格式设置示例的屏幕截图(这些不是最终颜色,之所以使用这些颜色是因为在图像上传后看不到原始颜色)。

以下是带有示例格式的图像:

enter image description here 我相当确定这里需要一个辅助列,而我相当擅长使用excel和条件格式,这一点超出了我的范围。

1 个答案:

答案 0 :(得分:1)

我将仅使用您示例中的Site列和Ticket列来演示我的解决方案。假设Site列位于Column A中,而Ticket列位于Column B中,我将以以下方式使用Column C作为帮助者列假定第一行用于不需要格式化的标题:

  1. 在单元格C2中输入数字1,此值是硬编码/静态的;
  2. 在单元格C3中,输入以下公式并将其向下拖动到表格的末尾:

    =MOD(IF(LEN($B3)=0,$C2,IF($B3=$B2,$C2,$C2+1)),2)

然后,您应该有一个根据票证号显示10的帮助列。

使用单元格A1(即不包括标题的范围的第一个单元格)作为活动单元格突出显示表,一一设置以下条件格式设置规则:

| Conditional Formatting Rules: | Format      |
|-------------------------------|-------------|
| =(MAX($A$2:$A2)*10+$C2)=11    | Light Green |
| =(MAX($A$2:$A2)*10+$C2)=10    | Dark Green  |
| =(MAX($A$2:$A2)*10+$C2)=21    | Light Red   |
| =(MAX($A$2:$A2)*10+$C2)=20    | Dard Red    |
| =(MAX($A$2:$A2)*10+$C2)=31    | Light Blue  |
| =(MAX($A$2:$A2)*10+$C2)=30    | Dark Blue   |

那么您应该具有以下内容:

Demo

  

请注意,列D Rule仅用于演示,在实际表中没有必要。它向您展示了我的公式如何根据SiteTicket区分每一行。

编辑#2

鉴于Site ID实际上是文本而不是数字,这是一种替代方法,该方法仍使用原始解决方案中所示的helper列,但是条件格式设置规则将更改为:< / p>

| Conditional Formatting Rules:                                                               | Format      |
|---------------------------------------------------------------------------------------------|-------------|
| =(INDEX($A$2:$A2,AGGREGATE(14,7,ROW($A$1:$A1)/ISTEXT($A$2:$A2),1))&"#"&$C2)="Site Name 1#1" | Light Green |
| =(INDEX($A$2:$A2,AGGREGATE(14,7,ROW($A$1:$A1)/ISTEXT($A$2:$A2),1))&"#"&$C2)="Site Name 1#0" | Dark Green  |
| =(INDEX($A$2:$A2,AGGREGATE(14,7,ROW($A$1:$A1)/ISTEXT($A$2:$A2),1))&"#"&$C2)="Site Name 2#1" | Light Red   |
| =(INDEX($A$2:$A2,AGGREGATE(14,7,ROW($A$1:$A1)/ISTEXT($A$2:$A2),1))&"#"&$C2)="Site Name 2#0" | Dard Red    |
| =(INDEX($A$2:$A2,AGGREGATE(14,7,ROW($A$1:$A1)/ISTEXT($A$2:$A2),1))&"#"&$C2)="Site Name 3#1" | Light Blue  |
| =(INDEX($A$2:$A2,AGGREGATE(14,7,ROW($A$1:$A1)/ISTEXT($A$2:$A2),1))&"#"&$C2)="Site Name 3#0" | Dark Blue   |

以下是屏幕截图:

Demo2.0

如果您有任何疑问,请告诉我。干杯:)