Google 表格中的条件格式使您可以轻松突出显示符合特定条件的特定单元格。例如,如果单元格值小于某个数字,您可以将单元格的背景颜色更改为黄色。或者,如果满足某些条件,您可以选择突出显示整行或整列。
突出显示单个单元格
对于这个例子,我们有一个销售图表,其中列出了销售人员的姓名、他们的州和总销售目标。如果销售人员来自加利福尼亚,我们希望突出显示State
列中的各个单元格。
转到格式菜单,选择Conditional Formatting
,然后单击Add Condition
。在这里,选择范围为B2:B
,格式条件为Text is Exactly
。然后,在文本框中输入文本CA
,选择自定义背景颜色并单击Done
。
突出显示整行
对于同一个销售图表,我们现在要突出显示销售目标超过 8,000 美元的整行。
在格式化规则中,将范围设置为A2:C
,因为我们希望将格式化应用于整个表格。接下来,为格式化规则条件选择Custom Formula is
并将条件设置为=$C2>8000
。
如果您想突出显示销售目标在某个范围内的行,例如在 $5000 和 $7000 之间,您可以在条件框中添加=ISBETWEEN($C2, 5000,7000)
公式。
$
$C2
中的 $ 将公式应用于整个C
列,而数字2
前面缺少的$
允许它增加。
如果要突出显示销售目标高于平均销售目标的行,可以使用=IF(AVERAGE($C2:C)<$C2,1)
或=$C2>average($C2:C)
标准框中的公式。
如果您希望突出显示包含销售额最大值的行,您可以在条件框中使用=MAX()
公式。
=$C:$C=max($C:$C)
另请参阅:突出显示 Google 表格中的重复行
基于两个单元格的格式
在同一个销售表中,我们想突出显示负责特定州(例如“CA”)并且销售目标超过 5,000 美元的销售人员。
我们可以通过使用AND
函数应用多个条件来实现这一点,如下所示:
=AND(C2>5000, B2="CA")
基于日期的条件格式
我们的表格有发票清单和发票到期日期。我们将使用条件格式突出显示逾期超过 30 天的发票,并向其发送电子邮件提醒。
=DAYS(TODAY(),$B:$B)>=30
在另一个例子中,我们有一个学生列表和他们的出生日期。我们可以使用Date 函数,例如突出显示 16 岁以上且出生日期在当月的学生。
=AND(YEAR(TODAY())-YEAR($B2)>=16,MONTH($B2)=MONTH(TODAY()))
热图 – 按色阶格式化单元格
我们的下一个工作簿包含美国城市列表及其各个月份的平均气温。我们可以使用色标轻松了解各个城市的温度趋势。温度值越高,颜色越红,温度值越低,颜色越绿。
标记包含值之一的行
借助 Google 表格中的条件格式,您可以轻松突出显示包含特定值的行。例如,您可以突出显示State
列中包含值CA
的所有行。
但是,如果要突出显示包含多个值之一的行,则可以使用OR
函数,或者更好的是,将正则表达式与自定义公式一起使用。
此公式将突出显示State
列中包含CA
、 NY
或FL
的所有行。
=REGEXMATCH(UPPER($B:$B), "^(CA|NY|FL)$")
或者,您可以在另一张表中列出状态列表,并使用MATCH
和INDIRECT
突出显示包含其中一个状态的行。
=MATCH($B1, INDIRECT("'List of States'!A1:A"),0)
将条件格式应用于整列
到目前为止,我们已经探索了在满足某些条件时突出显示单个单元格或整行的示例。但是,您可以使用条件格式来突出显示 Google 表格的整个列。
在此示例中,我们有每个地理区域不同年份的销售额。当用户在单元格 A9 中输入年份时,销售表中的相应列会突出显示。自定义公式将为=B$1=$A$9
。请注意, $
与单元格引用中的数字一起使用,因为仅在第一行进行检查。
使用 Google Apps 脚本进行条件格式设置
如果您要一次性将相同的条件规则应用于多个 Google 电子表格,建议您自动化Google Apps 脚本,否则手动应用格式将花费更多时间。
const applyConditionalFormatting = ( ) => { const sheet = SpreadsheetApp . getActiveSheet ( ) ; const color = SpreadsheetApp . newColor ( ) . setThemeColor ( SpreadsheetApp . ThemeColorType . BACKGROUND ) . build ( ) ; const rule1 = SpreadsheetApp . newConditionalFormatRule ( ) . setRanges ( [ sheet . getRange ( 'B:B' ) ] ) . whenTextEqualTo ( 'CA' ) . setUnderline ( true ) . setBold ( true ) . setBackground ( color ) . build ( ) ; const rule2 = SpreadsheetApp . newConditionalFormatRule ( ) . setRanges ( [ sheet . getRange ( 'A1:C15' ) ] ) . whenFormulaSatisfied ( '=$C1>5000' ) . setBackground ( 'green' ) . setFontColor ( '#00FF00' ) . build ( ) ; const conditionalFormatRules = sheet . getConditionalFormatRules ( ) ; conditionalFormatRules . push ( rule1 ) ; conditionalFormatRules . push ( rule2 ) ; sheet . setConditionalFormatRules ( conditionalFormatRules ) ; } ;
请查看ConditionalFormatRuleBuilder的文档以获取更多详细信息。这也将帮助您将条件格式规则从一个电子表格复制到另一个电子表格。
原文: https://www.labnol.org/conditional-formatting-google-sheets-220415