Javascript 如何将一个范围从一张图纸复制到另一张图纸中的一个范围,然后重复复制到下一行

Javascript 如何将一个范围从一张图纸复制到另一张图纸中的一个范围,然后重复复制到下一行,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我正在寻找一个谷歌应用程序脚本,将一个工作表中的单元格区域复制到另一个工作表中,然后当用户更改第一个区域值时,将相同的区域(新值)复制到第一个区域的下一行。以下是我到目前为止的情况: function copyToDatasheet() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var s1 = ss.getSheetByName('Mobile Form'); var s2 = ss.getSheetBy

我正在寻找一个谷歌应用程序脚本,将一个工作表中的单元格区域复制到另一个工作表中,然后当用户更改第一个区域值时,将相同的区域(新值)复制到第一个区域的下一行。以下是我到目前为止的情况:

function copyToDatasheet() {

     var ss = SpreadsheetApp.getActiveSpreadsheet();
     var s1 = ss.getSheetByName('Mobile Form');
     var s2 = ss.getSheetByName('Data'); 

     s1.getRange('B2').copyTo(s2.getRange('P6'), {contentsOnly:true})
     s1.getRange('B4').copyTo(s2.getRange('Q6'), {contentsOnly:true})
     s1.getRange('B6').copyTo(s2.getRange('R6'), {contentsOnly:true})
     s1.getRange('B8').copyTo(s2.getRange('S6'), {contentsOnly:true})
     s1.getRange('B10').copyTo(s2.getRange('O6'), {contentsOnly:true})
}
所有这些都是从第6行开始将s1范围复制到s2范围,这是我希望它开始的方式,但在下一个条目中,我希望它向下移动到第7行,依此类推。重置s1范围并输入新值,将其复制到下一行的s2,使其在下一次运行时动态向下移动。希望这是有意义的,我对应用程序脚本没有太多的了解,所以如果可能的话,解释一些函数的作用会很有帮助。感谢任何人提供的帮助。

在对工作表进行编辑时获得相同的数据范围1。然后,所有这些数据将被追加到图纸2

function getMultipleValues(){

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName('Sheet1');

  var range = sheet.getRange(2,1,4,2); //getRange(starting row, starting column, ending row, ending column)
  var data = range.getValues();
  putMultipleValues(data)
}

function putMultipleValues(data){

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName('Sheet2');
  data.forEach(function(i){
    SpreadsheetApp.flush();
    sheet.appendRow(i)
  })
}
别忘了设置触发器。在菜单=>Edit=>CurrentProject的触发器中