Excel 按列值突出显示整行
Excel Highlight Entire Row by Column Vaule
我正在尝试根据列值为 excel 中的整行着色,并使其符合类似于本示例中列出的条件格式。为单个列着色似乎很容易,但我不知道如何根据单个列为整行着色。看过一些可以做单色的帖子,但是没见过基于渐变的。
我找不到根据动态渐变值为整行着色的方法。但是,使用自定义渐变可以实现类似的效果。
我们可以 hard-code 阈值来定义一行何时应该变成某种颜色,但由于显而易见的原因,这并不理想。或者,我们可以使用百分位数来帮助定义行何时应该更改颜色。百分位数将基于此示例中的 Average
列(即 D 列)。
让我们首先讨论具有以下百分位数属性的自定义渐变:
- 0-20% 绿色
- 20-40% 淡绿色
- 40-60% 黄色
- 60-80% 橙色
- 80-100% 阅读
我们现在可以创建规则,以有条件地为这些百分位数内的平均值行着色。
首先,我创建了您提供的 table 的简化版本,包括第 Threads
至 Median
列和第 1 至第 6 行。
接下来,我在 Excel 的 条件格式 部分下创建了新规则。 确保规则适用于 sheet 中的所有 non-header 个单元格。还要确保选中 Stop if true
,这样规则就不会互相覆盖。
对于规则本身,您需要使用 经典 样式以及 使用公式确定要设置格式的单元格选项。将 Format with 设置为 Custom Format... 并为每个规则选择合适的颜色。我们将为每种颜色制作一个规则,因此在本例中总共有 5 个。
对于每个规则,您可以使用以下公式进行匹配:
绿色:=$D2<PERCENTILE($D:$D,0.20)
浅绿色:=$D2<PERCENTILE($D:$D,0.40)
黄色:=$D2<PERCENTILE($D:$D,0.60)
橙色:=$D2<PERCENTILE($D:$D,0.80)
红色:=$D2<=PERCENTILE($D:$D,1.00)
请注意,根据上述定义,所有行都将明显匹配红色,这就是使用 Stop if true
规则选项很重要的原因。同样重要的是 $D2
是对每一行中 Average
列值的相对引用,而 $D:$D
是对所有 D 行 2 到 6 的绝对引用。如果你有更多超过 6 行,您应该相应地调整它,以便适当地调整百分位数。从我的测试来看,包含超出实际行数的范围似乎不会对百分位生成产生负面影响,因此可能有一种更通用的方法来包含所有行。
完成后,您应该会看到如下内容:
如果应用于传播中的所有数据单元格sheet,您应该会看到规则生效:
这是一个几乎肯定可以优化的解决方案,但如果您想根据列的值有条件地为整行着色,它应该会让您走上正轨。还值得注意的是,技术上的百分位数是基于中位数(换句话说,50 个百分位数与中位数相同),因此引用 Median
列可能比 Average
列更合适] 列。
我正在尝试根据列值为 excel 中的整行着色,并使其符合类似于本示例中列出的条件格式。为单个列着色似乎很容易,但我不知道如何根据单个列为整行着色。看过一些可以做单色的帖子,但是没见过基于渐变的。
我找不到根据动态渐变值为整行着色的方法。但是,使用自定义渐变可以实现类似的效果。
我们可以 hard-code 阈值来定义一行何时应该变成某种颜色,但由于显而易见的原因,这并不理想。或者,我们可以使用百分位数来帮助定义行何时应该更改颜色。百分位数将基于此示例中的 Average
列(即 D 列)。
让我们首先讨论具有以下百分位数属性的自定义渐变:
- 0-20% 绿色
- 20-40% 淡绿色
- 40-60% 黄色
- 60-80% 橙色
- 80-100% 阅读
我们现在可以创建规则,以有条件地为这些百分位数内的平均值行着色。
首先,我创建了您提供的 table 的简化版本,包括第 Threads
至 Median
列和第 1 至第 6 行。
接下来,我在 Excel 的 条件格式 部分下创建了新规则。 确保规则适用于 sheet 中的所有 non-header 个单元格。还要确保选中 Stop if true
,这样规则就不会互相覆盖。
对于规则本身,您需要使用 经典 样式以及 使用公式确定要设置格式的单元格选项。将 Format with 设置为 Custom Format... 并为每个规则选择合适的颜色。我们将为每种颜色制作一个规则,因此在本例中总共有 5 个。
对于每个规则,您可以使用以下公式进行匹配:
绿色:=$D2<PERCENTILE($D:$D,0.20)
浅绿色:=$D2<PERCENTILE($D:$D,0.40)
黄色:=$D2<PERCENTILE($D:$D,0.60)
橙色:=$D2<PERCENTILE($D:$D,0.80)
红色:=$D2<=PERCENTILE($D:$D,1.00)
请注意,根据上述定义,所有行都将明显匹配红色,这就是使用 Stop if true
规则选项很重要的原因。同样重要的是 $D2
是对每一行中 Average
列值的相对引用,而 $D:$D
是对所有 D 行 2 到 6 的绝对引用。如果你有更多超过 6 行,您应该相应地调整它,以便适当地调整百分位数。从我的测试来看,包含超出实际行数的范围似乎不会对百分位生成产生负面影响,因此可能有一种更通用的方法来包含所有行。
完成后,您应该会看到如下内容:
如果应用于传播中的所有数据单元格sheet,您应该会看到规则生效:
这是一个几乎肯定可以优化的解决方案,但如果您想根据列的值有条件地为整行着色,它应该会让您走上正轨。还值得注意的是,技术上的百分位数是基于中位数(换句话说,50 个百分位数与中位数相同),因此引用 Median
列可能比 Average
列更合适] 列。