【发布时间】:2020-08-20 22:26:01
【问题描述】:
使用 onEdit 触发器在云端硬盘中创建文件夹。在字段中输入数据时有效,但在我粘贴数据时不会触发。更新了建议的更改,但粘贴的数据仍然不会触发。
function createSpreadsheetEditTrigger() {
const ss = SpreadsheetApp.openById('1IzR2ceVKG8SSTDHMx-N6NCuzzUHGyAOHHsykT7r-xcg');
ScriptApp.newTrigger('addFolder')
.forSpreadsheet(ss)
.onEdit()
.create();
}
function addFolder(e) {
// helps with verifying where data was entered
// in the sheet
const myNewColumn = e.range.getColumn()
const myNewRow = e.range.getRow()
const value = e.range.getValues().flat().join("");
if (myNewColumn == 1 && myNewRow > 2 && value.includes(",")) {
// capture first and last name entered
const firstName = e.value.split(", ")[1]
const lastName = e.value.split(", ")[0]
// identify the folder where
// new student folders will exist
const folder = DriveApp.getFolderById('1l_dYf74ITGiUzu10t72XCig2HWL_Q0PH')
// create student's new folder
const newFolder = folder.createFolder(`${lastName}, ${firstName} - Evidence`)
const newFolderId = newFolder.getId()
const specificNewFolder = DriveApp.getFolderById(newFolderId)
// add subfolders to student folder
const ela = newFolder.createFolder("ELA")
const math = newFolder.createFolder("Math")
const behavior = newFolder.createFolder("Behavior")
// create form
const form = FormApp.create(`${lastName}, ${firstName} Feedback Form`);
form.setTitle(`${lastName}, ${firstName}`)
.setDescription('Progress on Goal Feedback Form')
【问题讨论】:
-
代码不完整
-
谢谢,我添加了一个更完整的问题。
-
缺少
addFolder函数声明的结束},可能还缺少其他东西。
标签: javascript google-apps-script google-drive-api