【问题标题】:How do I change the color of a column based on the color of other column?如何根据其他列的颜色更改列的颜色?
【发布时间】:2020-03-09 15:28:01
【问题描述】:

我在为列中的单元格着色时遇到问题(如果单元格 D2 为浅绿色,则 B2 为浅绿色)。 我尝试过使用条件格式,并查看了Changing Color of a column based on other column in put

但是,我不知道在公式中输入什么来表示单元格 D2 为浅绿色。 如果我在这里违反了任何规则,请告诉我,我会改正的。

【问题讨论】:

  • 所以 D2 是手动染成浅绿色的?
  • @BigBen 是的,手动染成浅绿色。

标签: 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

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

    【讨论】:

    • Get.Cell 有一些缺点。现代设备或网络不支持它,因为它是一个古老的宏命令,它只能识别 Excel 现在可以使用的数百万种颜色中的 56 种,因此这种方法可能会导致错误。见stackoverflow.com/questions/24382561/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-16
    • 1970-01-01
    • 2022-01-02
    • 2021-12-26
    • 2015-09-02
    相关资源
    最近更新 更多