求助:如何用Google Apps Script宏保存单个工作表至Drive文件夹
保存单个Google Sheets工作表到指定Drive文件夹的宏代码
因为DriveApp无法直接将单个工作表作为独立文件保存,我们可以通过「创建临时表格→复制目标工作表→将新表格存入指定文件夹」的流程实现需求。
以下是可直接使用的宏代码,你只需替换几个关键参数即可:
function saveSingleSheet() { // 替换为你的目标文件夹名称 const FOLDER_NAME = "NAME_OF_FOLDER"; // 替换为你要保存的工作表名称(需与表格内工作表名完全一致) const SHEET_NAME = "目标工作表名称"; // 替换为保存后的新文件名称 const NEW_FILE_NAME = "单个工作表备份"; // 获取目标文件夹 const targetFolder = DriveApp.getFoldersByName(FOLDER_NAME).next(); // 获取当前打开的电子表格 const sourceSpreadsheet = SpreadsheetApp.getActiveSpreadsheet(); // 获取要保存的目标工作表 const sourceSheet = sourceSpreadsheet.getSheetByName(SHEET_NAME); // 创建空白新表格 const newSpreadsheet = SpreadsheetApp.create(NEW_FILE_NAME); // 删除新表格默认的Sheet1(可选操作) newSpreadsheet.deleteSheet(newSpreadsheet.getSheetByName("Sheet1")); // 将目标工作表复制到新表格 sourceSheet.copyTo(newSpreadsheet); // 将新表格移动到指定文件夹 const newFile = DriveApp.getFileById(newSpreadsheet.getId()); targetFolder.addFile(newFile); // 从Drive根目录移除该文件(可选,避免文件重复显示) DriveApp.getRootFolder().removeFile(newFile); }
使用步骤:
- 打开你的Google Sheets,点击「扩展程序」→「Apps Script」
- 将上述代码粘贴到脚本编辑器中,替换参数为你的实际信息
- 保存项目名称(任意填写即可),点击运行按钮执行
saveSingleSheet函数 - 第一次运行会弹出授权提示,按照页面指引完成权限授予即可
内容的提问来源于stack exchange,提问作者crisis
相关产品推荐
相关产品推荐

