我有一张带两张纸的谷歌电子表格 . 在 first sheet 上,项目列在 A 列中,其类型位于 B 列中 .
在 second sheet 上,我使用公式 =UNIQUE(Sheet1!A:A)
引用 first sheet's 列 A .
然后我想根据项目类型( 1st sheet's 列 B* )为 2nd sheet 中的项目着色 . 我尝试使用公式 =Sheet1!$B:$B="Type1"
添加条件格式,但是当我尝试保存规则时,它表示公式无效 .
这种情况的正确公式是什么?
1 回答
您不能直接在条件格式公式中引用单元格 . 此外,我不认为该公式会起作用 .
首先,您需要VLOOKUP函数来获取对象's type. Here' s使用此函数的示例 . 不同之处在于,在您的情况下,第一个参数中的相应数据将以工作表名称开头 .
看这个图像:
如您所见,
VLOOKUP
在矩阵A2:B4
中搜索D
中的项目,然后在矩阵的第二列(即B
列)中返回相应的值(同一行中的值) .因此,如果您将此公式应用于条件格式,您将拥有:
=VLOOKUP($D$2:$D;$A$2:$B$4;2)="Dragon"
VLOOKUP
的第一个参数必须是一个范围,我从D2开始它,所以它与 Headers 不匹配 . 在你的情况下,它将成为:=VLOOKUP($D$2:$D;Sheet1!$A$2:$B$4;2)="Dragon"
但由于您无法直接使用引用,因此需要使用
INDIRECT
函数 . 它以字符串形式接收单元格范围,并返回对该范围的引用 . 它与直接使用引用相同,但在这种情况下,您需要添加一个额外的步骤(转到图) . 所以公式最终成为:=VLOOKUP($D:$D;INDIRECT("$A$2:$B$4");2)="Dragon"
如果您使用的是新版本的Spreadsheets,则可以选择应用该格式的任何范围 . 例如,您可以为整行或仅一个单元格着色 .