我试图让工作表 A 上的一个单元格检查它是 > 还是 < 工作表 B 上的单元格中的值,然后相应地更改其颜色。在我使用的自定义公式下:=A1>("SheetB!A1")
,但它似乎不起作用。我为 > 使用绿色,为 < 使用红色。每次保存规则时,它将始终在工作表 A 上以红色显示 A1。
功能错了吗?还是不可能有条件格式甚至跨工作表搜索?
我试图让工作表 A 上的一个单元格检查它是 > 还是 < 工作表 B 上的单元格中的值,然后相应地更改其颜色。在我使用的自定义公式下:=A1>("SheetB!A1")
,但它似乎不起作用。我为 > 使用绿色,为 < 使用红色。每次保存规则时,它将始终在工作表 A 上以红色显示 A1。
功能错了吗?还是不可能有条件格式甚至跨工作表搜索?
出于某种原因(我承认我真的不知道为什么)条件格式中的自定义公式不直接支持跨表引用。
但支持跨表引用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。
您可以通过引用当前工作表中的单元格和行号来执行此操作,因此当您将该条件格式拖动复制到其他行时,它将引用正确的单元格。在下面的等式中,我根据本示例中名为“otherSheetName”的其他工作表中的完全相同的单元格为单元格着色。例如,如果您想为 Sheet2 中的单元格 B2 着色,如果 otherSheetName 中的单元格 B2 包含文本“我喜欢狗”,您将转到单元格 Sheet2!B2 ,单击条件格式,从下拉列表中选择方程式并粘贴以下方程式。
=IF(INDIRECT("otherSheetName!"&ADDRESS(ROW();COLUMN()))="I Like Dogs";1;0)
比较条件格式规则的字符串而不是数字,您可以使用:
=EXACT(A1,(INDIRECT("Sheet2!A1")))
区分大小写。
有一个技巧/错误:如果您在 Sheet1 中有明确引用自身的条件格式(例如,公式是Sheet1!$C$2
),您可以将条件格式复制到 Sheet2Paste special > conditional formatting
并且它将“工作”......只要你不'不碰任何东西:
indirect
@AdamL 提到的技巧也不会反映列/行更新,所以这是在这方面洗)。