清除数据时锁定的公式会移动 - Google脚本

时间:2014-09-02 02:43:39

标签: google-apps-script google-sheets

我有一个脚本可以清除电子表格中sheet2的旧数据。在sheet1上有一个公式=sumif(Sheet2!$D$2:$D$286,A4,Sheet2!$G$2:$G$286),只要连接的表单与新数据一起提交,就会将$D$2移动到$D$3,依此类推。如何在清除和添加新数据后停止更改锁定的公式?

以下是我的脚本中重置sheet2的代码。

function reset(sheet, data) {
    var newData = new Array();         
    newData.push(data[0]);
    var lastRow = sheet.getLastRow();
    sheet.deleteRows(2, lastRow);
}

1 个答案:

答案 0 :(得分:0)

尝试使用INDIRECT引用。

=SUMIF(INDIRECT("Sheet2!$D$2:$D$286"),A4,INDIRECT("Sheet2!$G$2:$G$286"))

或者,您可能可以使用整列引用(取决于其他行中的内容):

=SUMIF(Sheet2!D:D,A4,Sheet2!G:G)