我想拥有一个脚本,该脚本会自动在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);
}
我附上了床单供参考。 Feedback form responses
谢谢!