Создать новый лист на основе новых имен в столбце - PullRequest
0 голосов
/ 16 ноября 2018

Я хотел бы иметь скрипт, который будет автоматически искать в столбце onSubmit имя человека и копировать строку в лист на основе этого имени.Если лист не существует, я хотел бы, чтобы он создавался автоматически, имена вводятся в столбец C. Единственный ответ на этот вопрос, который я могу найти в StackOverflow, - это когда вы знаете, какие имена появятся.Я не знаю, какие имена будут.Я попробовал этот код @CharlesHale, но не могу назвать его новым листом.Вот мой код:

 function onFormSubmit() {
  // onFormSubmit
  // get submitted data
  var ss = SpreadsheetApp.openById('1eCdLnyx9Y2159gS0yVUxZLRsZSHxEGw0zUp5MqdSHVw');
  var sheet = ss.getSheetByName("Form responses 1");
  var row = sheet.getLastRow();
  var Col = sheet.getLastColumn();
  var headings = sheet.getRange(1,1,1,
Col).getValues();
  var lastRow = sheet.getRange(row, 1, 1, Col);
  var name = sheet.getRange(row, Col).getValue();
  // check if username has sheet
  if(ss.getSheetByName(name)){
    var userSheet = ss.getSheetByName(name);
    // if not make
  } else {
   var userSheet = ss.insertSheet(name);
    userSheet.getRange(1,1,1,
headings[0].length).setValues(headings);
  }
  // copy submitted data to user's sheet
  userSheet.appendRow(lastRow.getValues()[0]);
  userSheet.setColumnWidth(1, 500);
  userSheet.setColumnWidth(2, 500);
  var FormatSheet = ss.getSheetByName(name);
  var FormatRange = FormatSheet.getRange(1,1);
  FormatRange.copyFormatToRange(userSheet,1,3,3,28);
}

Я приложил свои листы для справки. Форма обратной связи, ответы

Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...