56

我试图让工作表 A 上的一个单元格检查它是 > 还是 < 工作表 B 上的单元格中的值,然后相应地更改其颜色。在我使用的自定义公式下:=A1>("SheetB!A1"),但它似乎不起作用。我为 > 使用绿色,为 < 使用红色。每次保存规则时,它将始终在工作表 A 上以红色显示 A1。

功能错了吗?还是不可能有条件格式甚至跨工作表搜索?

4

4 回答 4

98

出于某种原因(我承认我真的不知道为什么)条件格式中的自定义公式不直接支持跨表引用。

但支持跨表引用INDIRECT -ly:

=A1>INDIRECT("SheetB!A1")

或者,如果您想将 SheetA 上的 A1:B10 与 SheetB 上的 A1:B10 进行比较,请使用:

=A1>INDIRECT("SheetB!A1:B10")

=A1>INDIRECT("SheetB!"&CELL("address",A1))

应用于范围 A1:B10。

于 2014-09-09T21:33:47.520 回答
6

您可以通过引用当前工作表中的单元格和行号来执行此操作,因此当您将该条件格式拖动复制到其他行时,它将引用正确的单元格。在下面的等式中,我根据本示例中名为“otherSheetName”的其他工作表中的完全相同的单元格为单元格着色。例如,如果您想为 Sheet2 中的单元格 B2 着色,如果 otherSheetName 中的单元格 B2 包含文本“我喜欢狗”,您将转到单元格 Sheet2!B2 ,单击条件格式,从下拉列表中选择方程式并粘贴以下方程式。

=IF(INDIRECT("otherSheetName!"&ADDRESS(ROW();COLUMN()))="I Like Dogs";1;0)
于 2018-01-17T14:21:14.327 回答
2

比较条件格式规则的字符串而不是数字,您可以使用:

=EXACT(A1,(INDIRECT("Sheet2!A1")))

区分大小写。

于 2017-10-02T08:46:08.623 回答
0

有一个技巧/错误:如果您在 Sheet1 中有明确引用自身的条件格式(例如,公式是Sheet1!$C$2),您可以将条件格式复制到 Sheet2Paste special > conditional formatting并且它将“工作”......只要你不'不碰任何东西

  • 如果您尝试在 Sheet2 中编辑条件格式,则会收到“无效公式”错误。
  • 如果 Sheet1 中的列/行发生更改,从而影响条件格式(例如,行/列插入),这不会反映在 Sheet2 中(请记住,indirect@AdamL 提到的技巧也不会反映列/行更新,所以这是在这方面洗)。
于 2017-04-09T13:04:11.333 回答