#google-apps-script #google-sheets #conditional-formatting
#google-apps-script #google-таблицы #условное форматирование
Вопрос:
согласно документам: https://developers.google.com/apps-script/reference/spreadsheet/conditional-format-rule-builder
var sheet = SpreadsheetApp.getActiveSheet();
Но я только хочу, чтобы это было в специальном листе под названием Resultat.
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("resultat");
Но с этим именем листа я получаю :
TypeError: ThisSheet.newConditionalFormatRule is not a function
код для вызова:
var ThisSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("resultat");
var range = ThisSheet.getRange("C:D") // only want it to select C element.
ThisSheet.clearConditionalFormatRules();
var rule1 = ThisSheet.newConditionalFormatRule()
.whenTextContains("NO")
.setBackground("#b3cfb0")
.setRanges([range])
.build();
var rules = ThisSheet.getConditionalFormatRules();
rules.push(rule1);
ThisSheet.setConditionalFormatRules(rules);
Комментарии:
1. Это что, опечатка? вы хотели
sheet
вместоThisSheet
этого ? гдеThisSheet
определено?2. ты прав @marios
3. @maria jsfiddle.net/q8fcsL05 (не связанные)
Ответ №1:
Точки изменения:
- Из вашего сценария я не могу понять
ThisSheet
. ЕслиThisSheet
естьsheet
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("resultat");
,newConditionalFormatRule()
это метод класса SpreadsheetApp . При этом возникает ошибка.
Когда ThisSheet
sheet
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("resultat");
, как насчет следующего изменения?
Модифицированный сценарий:
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("resultat");
var range = sheet.getRange("C:D") // only want it to select C element.
sheet.clearConditionalFormatRules();
var rule1 = SpreadsheetApp.newConditionalFormatRule()
.whenTextContains("NO")
.setBackground("#b3cfb0")
.setRanges([range])
.build();
var rules = sheet.getConditionalFormatRules();
rules.push(rule1);
sheet.setConditionalFormatRules(rules);
- С помощью измененного выше сценария правило условного форматирования устанавливается в диапазоне «C: D».
- Если вы хотите установить правило условного форматирования для столбца «C», пожалуйста, измените
var range = sheet.getRange("C:D")
наvar range = sheet.getRange("C:C")
.
Ссылка:
Комментарии:
1. как вы упомянули, этот лист соответствует переменной листа.
2. @maria Спасибо за ответ. Я рад, что ваша проблема была решена.