You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Apps Script中读取共享盘Excel数据而不生成表格文件?

无需保存转换文件提取Excel数据的Google Apps Script方案

可以通过生成临时Google表格、读取数据后立即删除的方式解决这个问题,既满足数据提取需求,又不会留下冗余文件。修改后的代码如下:

var files = DriveApp.getFolderById("1AUPqh_WjYasdfasdfkiWThXxC").getFilesByName(fileName);
var excelFile = files.hasNext() ? files.next() : null;
if (!excelFile) {
  throw new Error("未找到目标Excel文件");
}

var blob = excelFile.getBlob();
var config = {
  title: "[Temp Converted] " + excelFile.getName(),
  parents: [{id: DriveApp.getRootFolder().getId()}],
  mimeType: MimeType.GOOGLE_SHEETS
};
var convertedSpreadsheet = Drive.Files.insert(config, blob, {supportsAllDrives: true});

try {
  // 读取目标工作表数据
  var sourceWsData = SpreadsheetApp.openById(convertedSpreadsheet.id)
    .getSheetByName("Export")
    .getDataRange()
    .getValues();
  
  // 后续脚本逻辑(直接使用sourceWsData即可)
  // ...

} finally {
  // 无论读取过程是否出错,都强制删除临时转换的Google表格
  Drive.Files.remove(convertedSpreadsheet.id, {supportsAllDrives: true});
}

关键说明

  • 用try...finally块保证临时文件一定会被清理,避免因脚本报错导致冗余文件残留
  • 临时文件标题添加[Temp]标识,即使意外未删除也能快速识别清理
  • 需提前在脚本编辑器的「服务」面板中添加启用Drive API,否则Drive.Files.remove方法无法正常执行

内容的提问来源于stack exchange,提问作者Schnodahipfe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 11:02:09