删除行和追加行后引用/复制数据错误

时间:2019-02-08 18:03:32

标签: google-apps-script google-form

我有以下代码从工作表“表单响应”中复制最后一行,从工作表“ 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]);
}

1 个答案:

答案 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);
}