为每个google表单响应创建新文件夹



我有一个谷歌表单,我想设置一个脚本,将每个响应传输到自己的文件夹中。

触发器将是一个新的响应。当被触发时,它会在父文件夹中创建一个子文件夹,其名称基于特定的列答案。

我需要它来将响应传输到子文件夹中的谷歌文档,并将上传的任何文件传输到该子文件夹中。

目前,我已经安装了该网站的脚本https://www.labnol.org/file-uploads-folder-google-forms-201226.在脚本编辑器中运行时,它不会出错。但是,它不会创建新文件夹,也不会将上载的内容传输到该文件夹。

然而,它正在重命名提交的上传文件,以匹配提交者的名称。

您可以通过设置一个可安装的触发器来监控提交到表单来触发自动化。

一旦它被触发,它将运行您在创建触发器时指定的函数,并将事件对象传递给它。此事件对象包含有关提交的数据,包括响应。

之后,根据响应,您可以创建一个具有指定名称的文件夹,并将上传的文件移动到其中

例如,考虑一份有两个问题的工作申请表,";申请人姓名";以及";CV文件上传";。您可以为申请人创建一个文件夹,并使用以下功能将上传的文件移动到其中:

function processApplication(event) {
// Parent folder for all application
const applicationsFolder = DriveApp.getFolderById('ABC123');

// Get respondent's name and uploaded file
const response = event.response.getItemResponses();
const applicantName = response[0].getResponse();
const uploadedFileID = response[1].getResponse();
const uploadedFile = DriveApp.getFileById(uploadedFileID);
// Create applicant's folder and move uploaded file to it
const applicantFolder = applicationsFolder.createFolder(applicantName);
uploadedFile.moveTo(applicantFolder);
}

最新更新