我有一个包含很多问题的Google表单,但我只想将一些响应记录到一个单独的精简电子表格中。这些是我想要记录的回复:
First Name
Last Name
Company
Role
这是我的脚本,触发在表单提交时执行:
function copyCondensedResponseData(e) {
var array_to_paste_in_participant_attendance_sheet = [];
array_to_paste_in_participant_attendance_sheet.push(e.namedValues["First Name"].toString());
array_to_paste_in_participant_attendance_sheet.push(e.namedValues["Last Name"].toString());
array_to_paste_in_participant_attendance_sheet.push(e.namedValues["Role"].toString());
array_to_paste_in_participant_attendance_sheet.push(e.namedValues["Company"].toString());
var participant_attendance_sheet = SpreadsheetApp.openById(/* id */).getSheets()[0];
participant_attendance_sheet.getRange(participant_attendance_sheet.getLastRow()+1,1).getValues()[0] = array_to_paste_in_participate_attendance_sheet;
}
但是没有任何内容粘贴到participant_attendance_sheet中。我知道通常通过调用getRange()和setValues()将数据从一个工作表复制到另一个工作表,但我认为只有当我想要复制的数据属于Object [] []类时。有什么想法吗?
答案 0 :(得分:0)
您仍然需要使用setValues。在这种情况下,输入是一个1乘4的多维数组。
var input = [participant_attendance_sheet];
var r = participant_attendance_sheet.getRange(participant_attendance_sheet.getLastRow()+1,1,1,4);
r.setValues(input);