谷歌表格如何上传文件,然后根据提交的值将其放置到新文件夹中 [英] Google Form how to upload files and then place it into new folder based on the value submitted
本文介绍了谷歌表格如何上传文件,然后根据提交的值将其放置到新文件夹中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
根据此问题,Google Form Upload files to specific new folder based on the value submitted
这将导致Google表单脚本编辑器的代码:
function onFormSubmit(e) {
const folderId = "1HVTDe5YxYDolXrEaGebHOoypYqG38d_fkauOGg5hCAqQfw-amW5aIazflSJEl7THNGTn-nq3"; // Please set top folder ID of the destination folders.
const form = FormApp.getActiveForm();
const formResponses = form.getResponses();
const itemResponses = formResponses[formResponses.length-1].getItemResponses();
Utilities.sleep(3000); // This line might not be required.
// Prepare the folder.
const destFolder = DriveApp.getFolderById(folderId);
const folderName = itemResponses[0].getResponse();
const subFolder = destFolder.getFoldersByName(folderName);
const folder = subFolder.hasNext() ? subFolder : destFolder.createFolder(folderName);
// Move files to the folder.
itemResponses[1].getResponse().forEach(id => DriveApp.getFileById(id).moveTo(folder));
}
我收到一个错误:TypeError: itemResponses[1].getResponse(...).forEach is not a function
要使此代码成功运行,我应该做些什么? 我在这方面完全是新手,任何形式的帮助都是非常感激的。谢谢。
编辑:谢谢@Tanaike!已经清场了。感谢您的帮助,此案例已结案。
推荐答案
修改
itemResponses[1].getResponse().forEach(id => DriveApp.getFileById(id).moveTo(folder));
收件人:
itemResponses[2].getResponse().forEach(id => DriveApp.getFileById(id).moveTo(folder));
这就是我问题的答案,归功于@Tanaike。
以下是该答案的评论链接: Google Form how to upload files and then place it into new folder based on the value submitted这篇关于谷歌表格如何上传文件,然后根据提交的值将其放置到新文件夹中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文