Google apps script setFormula语句产生分析错误

Google apps script setFormula语句产生分析错误,google-apps-script,Google Apps Script,我一直在尝试对继承的电子表格进行一些更改,作为谷歌脚本的新手,我正在努力。我试图在一个单元格中设置一个公式,我添加了其他行,这些行似乎工作正常,但我对这一行感到困惑 我已经设法让下面的工作,但不希望绝对参考 targetSheet.getRange(startRow + 1, 4, 1, 1).setFormula('=IF(C5 < G5, \"S\",IF(C5 > I5,\"VC\",\"C\"))'); targetSheet.getRange(startRow+1,4,1

我一直在尝试对继承的电子表格进行一些更改,作为谷歌脚本的新手,我正在努力。我试图在一个单元格中设置一个公式,我添加了其他行,这些行似乎工作正常,但我对这一行感到困惑

我已经设法让下面的工作,但不希望绝对参考

targetSheet.getRange(startRow + 1, 4, 1, 1).setFormula('=IF(C5 < G5, \"S\",IF(C5 > I5,\"VC\",\"C\"))');
targetSheet.getRange(startRow+1,4,1,1).setFormula('=IF(C5I5,\'VC\',\'C\'));
下面的代码是我希望移动到的,以便它更具动态性

targetSheet.getRange(startRow + 2, 4, 1, 1).setFormulaR1C1("=IF(R[0]C[-1] < R[0]C[+3], \"S\", IF(R[0]C[-1] > R[0]C[+5], \"VC\" , \"C\"))");
targetSheet.getRange(startRow+2,4,1,1).setFormulaR1C1(=IF(R[0]C[-1]R[0]C[+5],\“VC\”,“C\”);
但是,上述操作只会产生公式解析错误。
任何帮助都将不胜感激

使用R1C1表示法扩展图纸时,如果目标单元格的行或列值较大,则不需要多余的
+
。只需删除以下内容,即可修复此公式:

var range = targetSheet.getRange(startRow + 2, 4, 1, 1);
range.setFormulaR1C1('=IF(R[0]C[-1] < R[0]C[3], "S", IF(R[0]C[-1] > R[0]C[5], "VC" , "C"))');
var range=targetSheet.getRange(startRow+2,4,1,1);
range.setFormulaR1C1('=IF(R[0]C[-1]R[0]C[5],“VC”,“C”));

通过在
setFormulaR1C1()

中对整个公式使用单引号,还可以避免必须指定反斜杠来转义额外的双引号。当使用R1C1表示法扩展工作表时,如果目标单元格的行或列值较大,则不需要使用多余的
+
。只需删除以下内容,即可修复此公式:

var range = targetSheet.getRange(startRow + 2, 4, 1, 1);
range.setFormulaR1C1('=IF(R[0]C[-1] < R[0]C[3], "S", IF(R[0]C[-1] > R[0]C[5], "VC" , "C"))');
var range=targetSheet.getRange(startRow+2,4,1,1);
range.setFormulaR1C1('=IF(R[0]C[-1]R[0]C[5],“VC”,“C”));

通过在
setFormulaR1C1()

中对整个公式使用单引号,您还可以避免必须指定反斜杠来转义额外的双引号。比起我试图从别处复制的东西,我更喜欢它的结构。调整后效果良好!谢谢,谢谢你的洞察力。比起我试图从别处复制的东西,我更喜欢它的结构。调整后效果良好!谢谢