如何使用应用程序脚本粘贴公式?

its*_*Pav 2 google-sheets google-apps-script

现在我可以将公式从 X 行粘贴到 Y 行,但是,公式中的计算完全相同。假设第 1 行是 A1+B1,第 5 行的公式应该是 A5+B5,但我仍然得到 A1+B1。

for (var x = col; x < lastCol; x++) {
    for (var j = 2; j <= lastRow; j++) {
      var range = sheet.getRange(j,x);

      range.setFormula(formulas[0][i]);
    }
    i++;
}
Run Code Online (Sandbox Code Playgroud)

我应该使用另一个函数而不是 setFormula 还是做其他事情?我正在迭代 X 列。

Kos*_*Kos 5

您可以使用2017autoFillToNeighbor10 月推出的新方法。

例如,如果您有三列,单元格中只有一个公式C2

在此处输入图片说明

然后你可以C用一行代码自动填充其余的列:

function doTheMagic() {
  SpreadsheetApp.getActiveSheet().getRange("C2").autoFillToNeighbor(SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
}
Run Code Online (Sandbox Code Playgroud)

结果

在此处输入图片说明