基于另一个单元格的值的条件格式


490

我将Google表格用作日常仪表板。我需要根据另一个单元格C5的值更改单元格B5的背景颜色。如果C5大于80%,则背景色为绿色,但如果低于C5,则为琥珀色/红色。

Google表格功能可以使用此功能吗?还是需要插入脚本?


4
直到您移动到新的床单,适应从脚本之一这个答案使用onEdit触发器或这个答案这不。
Mogsdad

Answers:


535

注意:在下面的说明中说“ B5”时,实际上是“ B {current_row}”,因此对于C5是B5,对于C6是B6,依此类推。除非您指定$ B $ 5-否则您引用一个特定的单元格。


自2015年起,Google表格支持此功能:https : //support.google.com/drive/answer/78413#formulas

在您的情况下,您将需要在B5上设置条件格式。

  • 使用“ 自定义公式为 ”选项并将其设置为=B5>0.8*C5
  • 将“ 范围 ”选项设置为B5
  • 设置所需的颜色

您可以重复此过程以为背景或文本或色标添加更多颜色。

更好的是,使用“ Range ”中的范围,使一条规则适用于所有行。假设第一行是标题的示例:

  • 在B2条件格式上,将“ 自定义公式为 ”设置为=B2>0.8*C2
  • 将“ 范围 ”选项设置为B2:B
  • 设置所需的颜色

与上一个示例类似,但它适用于所有行,而不仅限于行5。

还可以在“自定义公式为”中使用范围,因此您可以根据行的列值为整个行着色。


1
感谢Zig通知我。它很有用,但是除非我将旧的电子表格版本的内容复制到新的内容,否则不能使用它。谢谢哥们
马克·麦加洛纳2013年

19
我想通了,您需要使用绝对引用。例如,论坛中的“ = B5:B10 = C $ 5”,范围中的B5:B10。

1
@本非常感谢。我不知道有人
会怎么想的

29
要引用另一张纸上的单元格,请执行以下操作=B2>0.8*indirect("Sheet1!C2"):(
josephdpurcell

1
@Zig Mandel可以正常工作,除了格式化为货币的单元格外,我只是试图隐藏(前/背景白色)单元格范围,其中一些是货币单元格。任何想法如何?欢呼声
Tino Mclaren

197

再举一个例子:

如果您具有从A到D的列,并且需要突出显示整行(例如,从A到D)(如果B为“完成”),则可以执行以下操作:

"Custom formula is":  =$B:$B="Completed" 
Background Color:     red 
Range:                A:D

当然,如果您有更多列,可以将范围更改为A:T。

如果B包含“完成”,请按以下方式使用搜索:

"Custom formula is":  =search("Completed",$B:$B) 
Background Color:     red 
Range:                A:D

2
正是我想要的。谢谢!
RDT2'2

8
除非您$在“自定义公式为”字段中提供,否则这似乎不起作用。即做$B$2:$B与不做B2:B
tdk 2015年

2
只是为了增加lucky1928的答案-如果将范围从A:D更改为A:T,您将添加更多的列,而不是行/行。如果您只希望有限的行数,则希望条件格式起作用,那么这可能有助于指定行,例如,如果您有标题行,则指定A2:D13。否则,如果您要匹配的内容为空白或不等于特定值,则可能会为工作表中存在的所有行添加颜色,这可能不是您想要的。
汤姆·布什

我无法告诉您我一直在寻找这种解决方案有多长时间,尤其是标准是文本值时。谢谢!
Frances Cherman

4
请注意,公式开头的“ =” 非常重要
vy32

18

我在最近的文件中使用了一种有趣的条件格式,并认为它对其他人也很有用。因此,此答案是为了完整说明先前的答案。

它应该证明此惊人功能的功能,尤其是$东西的工作方式。

示例表

简单的Google表格表

从D到G的颜色取决于A,B和C列中的值。但是该公式需要检查水平固定的值(用户,开始,结束)和垂直固定的值(第1行中的日期)。那就是美元符号变得有用的地方。

表中有2个用户,每个用户都有定义的颜色,分别为foo(蓝色)和bar(黄色)。
我们必须使用以下条件格式设置规则,并将它们都应用于相同的范围(D2:G3):

  1. =AND($A2="foo", D$1>=$B2, D$1<=$C2)
  2. =AND($A2="bar", D$1>=$B2, D$1<=$C2)

在英语中,条件表示:
用户为name,当前单元格的日期为start之前和之后end

注意,在两个公式之间唯一改变的是用户名。这使得与其他许多用户重用确实非常容易!

说明

重要提示:可变的行和列相对于范围的开始。但是固定值不受影响。

很容易混淆相对位置。在此示例中,如果我们使用range D1:G3而不是D2:G3,则颜色格式将上移1行。
为避免这种情况,请记住变量行和列的值应对应于包含范围的开始

在此示例中,包含颜色的范围是D2:G3,因此开始是D2

Userstartend具有行变化
- >固定的列ABC,可变行开始在2: ,,$A2$B2$C2

Dates随列而异
->从D开始的可变列,固定行1:D$1


这是天才!
快乐鸟

这可能需要一个单独的帖子,但是是否可以将条件样式本身基于另一个单元格?例如,如果您有一个单独的查找表供“ foo”和“ bar”使用,可以将条件格式配置为在规则中应用该单元格的fg-color和bg-color吗?我经常需要这一点,即一行的“状态”指示器,其中颜色和状态选项易于配置,而无需手动重新设置条件格式设置规则。
Memetican'2

您也许可以使用脚本来做到这一点。我认为我从未见过通过正常用法选择特定颜色或现有格式的动态方法。编辑:要开始编写脚本,请转到工具>脚本编辑器并开始编码。但这是使用工作表的全新水平;-)
罗曼·文森特

6

基本上,您需要做的就是在列字母和行号的前面加上$作为前缀。请看下面的图片

在此处输入图片说明


1
谢谢您的截屏,它对解释很有帮助。
B.Adler

3

根据另一个单元格C5的值更改单元格B5的背景颜色。如果C5大于80%,则背景色为绿色,但如果低于C5,则为琥珀色/红色。

没有提到B5包含任何值,因此假设80%.8格式设置为不带小数的百分比,空白计数为“以下”:

选择B5,用标准填充颜色为“琥珀色/红色”,然后选择格式-条件格式...,自定义公式为:

=C5>0.8

用绿色填充和Done

CF规则示例


2

我很失望花了多长时间来解决这个问题。

我想查看我范围内的哪些值超出标准偏差。

  1. 将标准差计算添加到某处的单元格 =STDEV(L3:L32)*2
  2. 选择要突出显示的范围,右键单击,条件格式
  3. 选择格式单元格(如果大于)
  4. 在“ 值”或“公式”框中,键入=$L$32(stdev所在的任何单元格)

我不知道如何将STDEv内联。我尝试了很多事情,结果出乎意料。


介意解释下降投票吗?我喜欢在这里记录自己的经历。我不止一次忘记,
谷歌

1
感谢您的回答,这使我能够做我想做的事情:)
Ollie
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.