如果单元格以Excel开头,则为Excel条件格式

时间:2019-09-11 08:08:49

标签: excel excel-formula conditional-formatting

我正在尝试根据其中的单元格来格式化行。

我的表格从A6到K207,如果B6中的单元格以SA开头,我想用黑体突出显示行。

我测试了我的公式

=IF(LEFT(TRIM(B26),2)="SA","YES","NO") 

在另一个单元格中可以正常工作-但由于某种原因我无法使用格式...

我删除了是/否,并放入了适用于我的整个表格的条件格式设置规则,该规则不起作用。即使我仅将其应用到一行,也行不通。

我在条件格式内使用if语句吗?我在Google上查看过,在这里发现了类似的问题,但不是一个相同的问题,它们都使用了设置值/范围,但没有使用“开始于”条件。

2 个答案:

答案 0 :(得分:1)

默认情况下,条件格式为IF语句,其格式取决于公式是TRUE还是FALSE,因此不需要附加的IF语句:< / p>

=LEFT($A6,2)="SA"

这可以解决问题,并根据需要将其应用于整个范围。

它将测试列a中的所有单元格是否都以“ SA”开头并突出显示该单元格。如果将其应用于包含更多列的范围,则$符号会将列固定为A,以便测试该单元格并在此基础上突出显示每个单元格,从而有效地突出显示整个行。

您还可以使用OR语句来传递多个参数,例如:

=OR(LEFT($A6,2)="SA",LEFT($A6,2)="BO")

答案 1 :(得分:1)

欢迎来到SO。在公式中进行条件格式(CF)时,您需要应用引用。

  

Switch between relative, absolute, and mixed references

现在您的公式为=IF(LEFT(TRIM(B26),2)="SA","YES","NO")。您正在使用相对引用,因此CF规则将根据其位置进行检查。在A6中,它将检查A6的值,我想您希望规则检查B列中的始终值。

因此,您需要在公式中进行的第一个修复是(需要更多,请稍等)

=IF(LEFT(TRIM($B26),2)="SA","YES","NO") 

现在,它将始终检查B列中的值。但是我们需要修复其他问题。要基于公式制作CF,您需要制定一些公式,使其返回布尔值TrueFalse。您的值YesNO是字符串(文本),而不是布尔值,因此它们不起作用。

因此,请尝试以下公式,看看它是否有效:

=IF(LEFT(TRIM($B26),2)="SA",TRUE,FALSE) 

IF函数使您可以提出一个问题,答案必须为是/否(是/否),并且根据答案,Excel会选择一个选项。

使用基于公式的CF规则,您只需要问题本身,而无需选择一个选项。因此,正如@Plutian在他的回答中指出的,该公式的简短版本只是在做:

=LEFT(TRIM($B26),2)="SA"

尝试使其适应您的需求。