簡體   English   中英

將范圍從最后一行復制到新工作表

[英]Copy a range from last row to new sheet

我想從Google表單中獲取最新回復,然后將其復制到另一張紙上的相同范圍內。

第二張紙在A和B列(登錄名和密碼)中有一些數據,我想在完成填寫注冊表時分配給他們。

我希望從表單響應表中的B列到H的數據在收到響應時被復制到包含登錄名/密碼列的表的C列到I列。

我知道我缺少從最后一行獲取該范圍的代碼,但我完全不知道編碼,而我當前的腳本是根據我在網絡上找到的內容和參考資料編譯而成的。

任何建議將不勝感激。

function onEdit(e) {


  var spreadsheet = SpreadsheetApp.openById("sheetid");
  var sheet = spreadsheet.getSheets()[0];


  var lastrow = sheet.getLastRow();
  var range = sheet.getRange(2,2,1,7);
  values = range.getValues();

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var SSsheet = ss.getSheets()[1];


  var ssRange = SSsheet.getRange(2,3,1,7);
  ssRange.setValues(values);

  }

嘗試使用copyTo(destination) 它將數據從一個單元格區域復制到另一個單元格區域。 值和格式均被復制。

 // The code below will copy the first 5 columns over to the 6th column.
 var sheet = SpreadsheetApp.getActiveSheet();
 var rangeToCopy = sheet.getRange(1, 1, sheet.getMaxRows(), 5);
 rangeToCopy.copyTo(sheet.getRange(1, 6));
 }

您也可以嘗試使用copyValuesToRangecopyValuesToRange

有關其他代碼示例,您也可以參考此論壇

function onEdit(e) {

var spreadsheet = SpreadsheetApp.openById("ID");
var sheet = spreadsheet.getSheets()[0];
var lastRow = sheet.getLastRow();
var range = sheet.getRange("A"+(lastRow)+":G"+(lastRow));
var values = range.getValues();


var ss = SpreadsheetApp.getActiveSpreadsheet();
var SSsheet = ss.getSheets()[1];
var getRow = SSsheet.getLastRow() + 1;
var ssRange = SSsheet.getRange(getRow, 1, values.length, values[0].length);
ssRange.setValues(values);

嘗試使用此代碼,此代碼將從特定范圍復制所需的最后一個值,並將其粘貼到另一張紙的最后一個可用行中。
它的代碼僅在要復制的地方相同,將其指定為我要復制的大小。 希望對您有幫助:D

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM