Google apps script 将.XLSX转换为Google工作表并移动转换文件的脚本
我知道可以使用脚本和驱动API将excel文件转换为Google工作表,但我正在寻找脚本来转换excel工作表并将转换后的文件移动到其他文件夹 因此,所需步骤如下:Google apps script 将.XLSX转换为Google工作表并移动转换文件的脚本,google-apps-script,google-sheets,google-drive-api,delete-file,file-conversion,Google Apps Script,Google Sheets,Google Drive Api,Delete File,File Conversion,我知道可以使用脚本和驱动API将excel文件转换为Google工作表,但我正在寻找脚本来转换excel工作表并将转换后的文件移动到其他文件夹 因此,所需步骤如下: 将excel(.xls/.xlsx)从FolderA转换为Google工作表 将转换后的文件从FoldarA移动到FolderB 从FolderA中删除原始excel文件 希望第3步可以避免这种情况,但避免复制已转换的文件 excel文件正在粘贴到一个本地文件夹中,该文件夹正在同步到google drive,文件大小不超过3mb。当
function importXLS(){
var files = DriveApp.getFolderById('1hjvNIPgKhp2ZKIC7K2kxvJjfIeEYw4BP').searchFiles('title != "nothing"');
while(files.hasNext()){
var xFile = files.next();
var name = xFile.getName();
if (name.indexOf('.xlsx')>-1){
var ID = xFile.getId();
var xBlob = xFile.getBlob();
var newFile = { title : name+'_converted',
key : ID
}
file = Drive.Files.insert(newFile, xBlob, {
convert: true
});
}
}
}
- 您想将转换后的Google电子表格文件创建为“FolderB”
- 您希望在转换文件后删除“FolderA”中的XLSX文件
- 您希望使用谷歌应用程序脚本实现上述功能
- 您可以使用请求正文中的
属性直接将文件创建到特定文件夹parents
- 您可以使用
删除该文件Drive.Files.remove(fileId)
- 如果XLSX文件的数量很大,则执行时间可能超过6分钟
- 关于
//Drive.Files.remove(ID)代码>,运行此脚本时,请小心。因为在运行脚本时,原始XLSX文件将被完全删除。所以我评论了这个。首先,请使用示例文件测试脚本。
function importXLS(){
var folderBId = "###"; // Added // Please set the folder ID of "FolderB".
var files = DriveApp.getFolderById('1hjvNIPgKhp2ZKIC7K2kxvJjfIeEYw4BP').searchFiles('title != "nothing"');
while(files.hasNext()){
var xFile = files.next();
var name = xFile.getName();
if (name.indexOf('.xlsx')>-1){
var ID = xFile.getId();
var xBlob = xFile.getBlob();
var newFile = {
title : name+'_converted',
parents: [{id: folderBId}] // Added
};
file = Drive.Files.insert(newFile, xBlob, {
convert: true
});
// Drive.Files.remove(ID); // Added // If this line is run, the original XLSX file is removed. So please be careful this.
}
}
}