创建具有给定名称的工作表,然后将值复制到新工作表

时间:2016-08-26 19:05:54

标签: google-apps-script google-sheets

我被困在这里。我想在我的主表中创建一个具有给定单元名称的表单(此部分可用)。然后,我想将单元格G4:I26中的值复制到刚刚创建的新工作表中(不工作)。以下是我到目前为止的情况:

function newSheetLast() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheetName = ss.getRange("J1").getDisplayValue();
  ss.insertSheet(sheetName, ss.getSheets().length);
  var source = ss.getRange('G4:I26'); 
  source.copyTo(sheetName.getRange('A1'), {contentsOnly: true});
  source.clear();

1 个答案:

答案 0 :(得分:2)

尝试以下脚本代码:

function newSheetLast() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName('Sheet1');
  var newSheetName = ss.getRange('J1').getDisplayValue();
  var newSheet = ss.insertSheet(newSheetName, ss.getSheets().length);
  var source = sheet.getRange('G4:I26'); 
  source.copyTo(newSheet.getRange('A1'), {contentsOnly: true});
  source.clearContent();
};


更改工作表名称" Sheet1"在上面的代码中,您可以使用表单中的单元格" J1"包含新表的名称。