我有以下代码从工作表“表单响应”中复制最后一行,从工作表“ InvData”中删除第2行,然后将副本附加回工作表“ InvData”中,例如替换为新数据。可以
但是,运行此代码后,为某些字段引用“ InvData”的表“ Invoice”(例如= InvData!B2)会导致#REF! (引用不存在)。不知道为什么会这样,因为只是在'InvData'
中替换了数据function copyLastRow() {
var target =
SpreadsheetApp.getActiveSpreadsheet().getSheetByName('InvData');
var sheet =
SpreadsheetApp.getActiveSpreadsheet().getSheetByName("form
response");
var lastrow = sheet.getLastRow();
var sourceData = sheet.getRange(lastrow, 1, 1, 53).getValues();
target.deleteRow(2);
target.appendRow(sourceData[0]);
}
答案 0 :(得分:1)
尝试一下:
function copyLastRow() {
var target=SpreadsheetApp.getActiveSpreadsheet().getSheetByName('InvData');
var sheet=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("form response");
var lastrow=sheet.getLastRow();
var sourceData=sheet.getRange(lastrow, 1, 1, 53).getValues();
target.getRange(2,1,1,sourceData[0].length).setValues(sourceData);
}