我真的在这个问题上摸不着头脑。一切似乎都表明我可以使用这种结构,但Google表格不能识别它,如果该函数应该将其解析为A1表示法,则不是。
假设一个电子表格包含一行和两列,1到10之间的数字在第1列。
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var theCell = sheet.getRange(1,2,1,1);
theCell.setFormulaR1C1('=IF(R[0]C[-1]>=10, "Hooray!", "Boo!")');
这成功地将单元格的值设置为'= IF(R [0] C [-1]> = 10,“Hooray!”,“Boo!”)',但这不解析(#ERROR! )。手动输入像'= R [0] C [-1]这样简单的东西也不起作用。所以我很困惑。 R1C1表示法是否有效?
我甚至无法让谷歌自己的例子工作。
参考: https://developers.google.com/apps-script/reference/spreadsheet/range#setFormulasR1C1(String)
编辑: 解决方法是将公式中的coma更改为分号。谢谢AdamJ。