【问题标题】:How do I change the color of a column based on the color of other column?如何根据其他列的颜色更改列的颜色?
【发布时间】:2020-03-09 15:28:01
【问题描述】:
【问题讨论】:
标签:
excel
colors
conditional-formatting
【解决方案1】:
就像我之前多次说过的:颜色不是数据。没有可以评估单元格颜色的工作表公式或条件格式规则。
手动应用颜色的原因或逻辑在人的脑海中,但无法从电子表格中的数据推导出来。
如果您想使用条件格式或工作表公式,请在电子表格中使用真实数据。
如果您想通过颜色评估单元格并将相同颜色应用于另一个单元格,则需要使用 VBA。
【解决方案2】:
除了使用vba,如果你能容忍以下:
- 每次更改
Column D 中的颜色时,手动刷新Column B 的条件格式
- 将您的工作簿保存为
.xlsm(启用宏的工作簿)并继续使用
然后尝试以下操作:
请注意,我使用了以下示例数据(从第一行开始),其中Column A 在您的问题中充当Column D:
在名称管理器中,使用以下公式设置一个名为 GetCellColour 的名称:
=GET.CELL(63,$A1)
将$A1 替换为$D2 或您实际案例中的实际单元格引用。这应该是触发B2 中条件格式的单元格。
在单元格A1 中设置浅绿色颜色,并在空白单元格中输入以下公式:C1:
=GetCellColour
在我的示例中,上述公式返回的颜色代码是35,表示浅绿色。
突出显示Column B(或Column B中您要应用条件格式规则的相关范围),单元格B1为活动单元格,转到条件格式功能进行设置设置以下格式规则:
=GetCellColour=35
如果Column A 中的相应单元格为浅绿色,则Column B 中的单元格将用浅绿色 突出显示。请注意,如果您更改了Column A 中的单元格颜色,则需要转到Data 选项卡以刷新工作表以“更新”Column B 中的条件格式。
这是一个现场演示:
关于名称管理器中GET.CELL功能的使用,可以阅读这个article。
如果您有任何问题,请告诉我。干杯:)