无需代码,您可以在电子表格中执行此操作。我更喜欢的解决方案是为每个用户创建命名选项卡,将他们的名字放在工作表的单元格 A1 中,然后使用电子表格QUERY功能填充他们的工作表。像这样在单元格 A3 中,说:
=query('Form Responses'!A1:Z,"select * where B = '" &A1 & "'")
调整源以匹配您的实际情况 ( 'Form Responses'!A1:Z)。
但是如果你必须使用脚本,试试这个:
function tri()
{
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Form Responses");
var data = sheet.getDataRange().getValues();
var users = ['Daniel', 'Gilles', 'Jean Pierre'];
for (var user=0; user<users.length; user++) {
// Open sheet with user's name; create if needed
var dest = ss.getSheetByName(users[user]);
if (!dest) dest = ss.insertSheet(users[user], user+1);
var newData = [];
newData.push(data[0]); // copy headers
for (var row=1; row < data.length; row++) {
// If row is for this user, copy it
if (data[row][1] === users[user]) newData.push(data[row]);
}
// Clear user's sheet, then save collected data
dest.clearContents();
dest.getRange(1, 1, newData.length, newData[0].length).setValues(newData);
}
}