在 google 个工作表中使用 setConditionalFormatRules() 来突出显示一行

Using setConditionalFormatRules() in google sheets to highlighte a row

我使用 "whenTextEqualTo" 大小写应用了条件格式。这工作正常,满足此条件的单元格会根据需要突出显示。 但是,我希望突出显示该单元格所在的行。

因此,sheet FinData 的数据位于 A2G500。我正在检查的值在 F 列中(值应为 == "CDI")。满足此条件时,单元格会突出显示。 如何做同样的事情,但行被突出显示,即 col B 到 col G。 我已经检查过这个 post 但无法将其合并到我的下面:

function formatCDI() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var finDataSheet = ss.getSheetByName("FinData");
  var range = finDataSheet.getRange("A2:G500");
  finDataSheet.clearConditionalFormatRules();

  var rule = SpreadsheetApp.newConditionalFormatRule()

    .whenTextEqualTo("CDI")
    .setBackground("#86D3FF")
    .setRanges([range])
    .build();
  var rules = finDataSheet.getConditionalFormatRules();
  rules.push(rule);
  finDataSheet.setConditionalFormatRules(rules);
};

在此方面如有任何帮助,我们将不胜感激。 谢谢,

  • 当列 "F" 的值为 CDI 时,您想使用条件格式为从 "B" 到 "G" 的列应用突出显示。

如果我的理解是正确的,用whenFormulaSatisfied()代替whenTextEqualTo()怎么样?在您的情况下,作为公式,使用 =$F2="CDI"

修改后的脚本:

请修改如下

发件人:

var range = finDataSheet.getRange("A2:G500");

.whenTextEqualTo("CDI")

收件人:

var range = finDataSheet.getRange("B2:G500");

.whenFormulaSatisfied('=$F2="CDI"')

参考:

如果我误解了你的问题,请告诉我。我想修改一下。