使用google,我尝试在另一个电子表格(称为安装)上引用一个单元格。如果在名为setup的工作表上的单元格B2上的数据,该单元格将格式化。
conditionalFormatRules = spreadsheet.getActiveSheet().getConditionalFormatRules();
conditionalFormatRules.splice(conditionalFormatRules.length - 1, 1, SpreadsheetApp.newConditionalFormatRule()
.setRanges([spreadsheet.getRange('B2')])
.whenTextContains('setup!B2')
.setBackground('#B7E1CD')
.build());
spreadsheet.getActiveSheet().setConditionalFormatRules(conditionalFormatRules);
这似乎不起作用。在安装表中是否有引用单元格B2的方法(这就是我所做的.whenTextContains(' setup !B2'))
发布于 2022-08-12 23:20:41
.whenTextContains()需要一个字符串,当使用当前代码时,如果值具体为" setup ! B2 ",则格式规则将适用;如果要在sheet安装程序中使用单元格B2中的值,则需要使用不同的方法:
SpreadsheetApp.getActiveSpreadsheet().getSheetByName("setup").getRange("B2").getValue();
您可以尝试此修改:
conditionalFormatRules = spreadsheet.getActiveSheet().getConditionalFormatRules();
var newValue = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("setup").getRange("B2").getValue();
conditionalFormatRules.splice(conditionalFormatRules.length - 1, 1, SpreadsheetApp.newConditionalFormatRule()
.setRanges([spreadsheet.getRange('B2')])
.whenTextContains(newValue)
.setBackground('#B7E1CD')
.build());
spreadsheet.getActiveSheet().setConditionalFormatRules(conditionalFormatRules);
资源:
发布于 2022-08-13 02:12:01
Alternative:
function setBGonFormula() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var cell = spreadsheet.getRange('B2');
var formula = cell.getFormula();
if(formula == '=Setup!B2'){
cell.setBackground('#B7E1CD');
}
}
这是一个示例实现,如果您的目标是获得单元格公式作为设置您选择的背景颜色的条件。
参考资料:
https://stackoverflow.com/questions/73339774
复制相似问题