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

如何使用Google Apps Script提取Google Drive中JSON数据导入Google Sheets表格

实现代码与操作说明

你已经完成了JSON文件读取的核心逻辑,只需要补充表格写入逻辑即可,以下是可直接复用的完整代码:

function jsonToGoogleSheet() {
  // 1. 读取Drive中的Reminders.json文件
  const fileName = "Reminders.json";
  const files = DriveApp.getFilesByName(fileName);
  if (!files.hasNext()) {
    throw new Error("未找到指定的Reminders.json文件,请检查文件名与存储位置");
  }
  const file = files.next();
  const content = file.getBlob().getDataAsString();
  const json = JSON.parse(content);
  const reminderList = json.reminders;

  // 2. 构造写入表格的二维数组,第一行为表头
  const outputData = [
    ["所属列表", "任务内容", "截止日期"]
  ];
  // 遍历所有提醒项,逐行插入数据
  reminderList.forEach(reminder => {
    outputData.push([
      reminder.list,
      reminder.task,
      reminder.date
    ]);
  });

  // 3. 写入目标Google Sheets
  // 替换下方的表格ID与工作表名称
  const targetSpreadsheet = SpreadsheetApp.openById("替换为你的Google Sheets文档ID");
  const targetSheet = targetSpreadsheet.getSheetByName("替换为目标工作表名称,例如Sheet1");
  
  // 清空工作表原有内容,不需要可删除此行
  targetSheet.clearContents();
  // 批量写入数据,批量操作比逐行写入效率更高
  targetSheet.getRange(1, 1, outputData.length, outputData[0].length).setValues(outputData);
}

注意事项

  • 第一次运行脚本时会触发权限校验,按照弹窗提示完成授权即可,授权范围仅包含你自己的Google Drive与表格资源
  • 若不需要覆盖原有表格内容,仅追加新的提醒数据,可以删除clearContents行,同时将写入起始行修改为targetSheet.getLastRow() + 1,对应写入代码调整为:
    targetSheet.getRange(targetSheet.getLastRow() + 1, 1, outputData.length - 1, outputData[0].length).setValues(outputData.slice(1));
    
  • 后续你可以基于已写入的表格数据添加条件格式、数据看板,完成提醒事项的直观展示需求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 13:09:04