【发布时间】:2018-03-06 22:28:09
【问题描述】:
我正在尝试在 Google 表格中创建一个自定义脚本,以在 Google 云端硬盘中创建文本文件。
工作表名称将是文件夹名称,A 列中的值将是文本文件名,B 列中的值将是插入到文本文件中的文本。
我已成功创建它,但在扩展它以为每一行创建一个新文件并执行多张工作表时遇到问题。
当我添加新工作表或新行时,如何调整代码以创建其他文件夹和文件?
这是我目前所拥有的:
function export() {
var sheet = SpreadsheetApp.getActiveSheet();
var filename = sheet.getRange(1, 1).getValue();
var foldername = sheet.getSheetName();
Logger.log('Filename = ' + filename + ' Foldername = ' + foldername);
var pFIT = DriveApp.getRootFolder().getFoldersByName(foldername);
var parentFolder, File ;
if (pFIT.hasNext())
parentFolder= pFIT.next();
if (parentFolder==null) {
parentFolder = DriveApp.getRootFolder().createFolder(foldername);
}
var existing = parentFolder.getFilesByName(filename);
if (existing.hasNext()) {
var file = existing.next();
if (file.getName() === filename) {
file.setTrashed(true);
}
}
var values = sheet.getRange(1, 2).getValues();
var text = values.map(function (a) {return a.join('\t');}).join('\r\n');
parentFolder.createFile(filename, text, MimeType.PLAIN_TEXT);
}
这是我在运行脚本时想要完成的任务:
截图 1
截图2
截图 3
【问题讨论】:
标签: google-apps-script google-sheets google-drive-api