Google脚本.setFormula错误,字符串值

时间:2020-08-21 06:59:13

标签: javascript google-apps-script google-sheets google-sheets-formula

我对此并不陌生,因此请原谅简单的问题。我正在尝试将以下公式插入Google表格L2_R1最终产品的单元格E18中:

=if(D17="Poor",0,if(D17="Acceptable",1,if(D17="Excellent",2,)))

我通过以下方式进行处理:

var sheet4= SpreadsheetApp.getActiveSpreadsheet().getSheetByName("L2_R1 Final Product");

var r2_fpr1_1 = sheet4.getRange("E18");
r2_fpr1_1.setFormula("=if(D18="Poor",0,if(D18="Acceptable",1,if(D18="Excellent",2,)))");

这会在参数列表(第108行,文件“ Code.gs”)之后产生错误:SyntaxError:missing) 尽管我认为我实际上并没有错过)

浏览其他帖子后,我尝试了以下操作:

var r2_fpr1_1 = sheet4.getRange("E18");
r2_fpr1_1.setFormula("=if(D18=\""+Poor+"\",0,if(D18=\""+Acceptable+"\",1,if(D18=\""+Excellent+"\",2,)))");

var r2_fpr1_1 = sheet4.getRange("E18”) 
r2_fpr1_2.setFormula(`=if(D18="${Poor}",0,if(D18="${Acceptable}",1,if(D18="${Excellent}",2,)))`);

这些都给我一个错误:ReferenceError:未定义差(第108行,文件“代码”)

那我想念什么?

1 个答案:

答案 0 :(得分:1)

您也可以改用setValue()

var r2_fpr1_1 = sheet4.getRange('E18');
r2_fpr1_1 .setValue(`=if(D17="Poor",0,if(D17="Acceptable",1,if(D17="Excellent",2,)))`)

但是setFormula()也可以正常工作:

var r2_fpr1_1 = sheet4.getRange('E18');
r2_fpr1_1.setFormula(`=if(D17="Poor",0,if(D17="Acceptable",1,if(D17="Excellent",2,)))`)

参考:

Template literals