无法设置单元格值AND公式,一个覆盖另一个

时间:2018-12-03 14:13:57

标签: google-apps-script google-sheets

我有一个apps脚本,该脚本试图设置单元格的公式,但是一旦设置,单元格的值也会更改为公式。调用range.setFormula()之后,是否可以保留该值?

这是代码

//Function called when cell value changes when chosen from drop down or changed manually
function onEdit(e) {
  var r = e.range;
  var managerName = r.getValue();
  // This call to rowOfManager returns a row number in another sheet
  var row = rowOfManager(managerName);
  r.setFormula(prefix + sheet.getRange(row, 2).getValue() + suffix);
}

我省略了前缀和后缀值,因为它们本身并不重要。公式可以正确更改,但是单元格值也可以更改,我根本不希望单元格值更改。

我尝试添加

r.setValue(managerName);

在调用setFormula之前或之后,但是在调用setFormula之后,该单元格的值是正确的,该公式消失并设置为该值。

这一切都很令人沮丧,我确定我只是在某个地方缺少了一些愚蠢的东西,

非常感谢您的帮助

问候 克鲁兹

1 个答案:

答案 0 :(得分:0)

您错过了Google表格的基本工作方式

一个单元格可以包含一个值(标量值),一个值数组的成员或一个公式,如果一个单元格包含一个公式,它将显示公式结果。