LibreOffice Calc:在每行中使用不同的最大值进行颜色刻度条件格式

LibreOffice Calc:在每行中使用不同的最大值进行颜色刻度条件格式

我有一个类似以下的数据集(只是大得多):每一行代表一个任务,列中有最大数量的可用分数B。从开始的每一列C代表一个人及其每项任务的得分。

示例数据集

现在,我想要做的是根据该任务的总可用分数的百分比为每个分数着色。也就是说,我想应用一个颜色比例,但每行的最大值都不同(它是列中的数字B)。结果应该看起来像这样。

期望的输出

有没有办法做到这一点,而不必分别为每行手动定义颜色比例?(正如我提到的,实际数据集要大得多。)


这是供您测试的示例数据集。

no max Alice Bob Claudia David
1   10     9   7       6    10
2    7     7   7       3     7
3    9     7   5       6     9
4   12    10   8      12     5
5    5     4   2       3     4
6   10     6   2       4     7

答案1

提交错误报告,我得到一个提示,有一个不同但已知的 LO 计算错误涉及,因此我只能提出一种解决方法(适用于您的测试数据):

  1. 定义单元格区域 C2:F2 的条件格式,将最小值定义为值“0”,最大值定义为公式“=INDIRECT("B" & ROW())”。INDIRECT() 函数采用表示单元格引用的字符串,在本例中,第三行的字符串为“B3”,第四行的字符串为“B4”,依此类推,这些字符串根据当前行号动态构建;INDIRECT 将评估单元格引用,得出当前行 B 列的最大值。虽然相对单元格引用“=$B2”在复制到不同行时不会进行调整,但 INDIRECT() 应该返回正确的最大值单元格。

  2. 将格式从 C2:F2 粘贴到 C3:F7,可以通过选择 C2:F2 并使用“粘贴格式”按钮,或者通过复制并使用“选择性粘贴”->“格式”。

  3. 保存文件格式为 xlsx(!) 并重新打开它。如果没有此步骤(或以 ods 格式保存时),条件格式将不会根据当前行的最大值进行更新。这就是我们必须解决的错误。

现在,基于每行的 B 值,条件格式应该适用于整个范围 B2:F7。我使用数据栏作为条件格式,因为如果使用了错误的最小/最大值,它会非常清楚地显示出来。

相关内容