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

如何将Google Workspace Schema完整数据写入Google Sheet单个单元格

解决方案:将Google Workspace Schema完整信息写入单个单元格并转换console.log输出为变量

一、将每个Schema完整信息写入单个单元格

你遇到的字段拆分问题,是因为直接将Schema对象传入setValue时,Google Sheets会自动解析对象属性并拆分到多个单元格。解决方法是把每个Schema对象转换为格式化的JSON字符串,这样就能完整存入单个单元格,保留所有层级的字段结构。

示例代码:

function exportSchemasToSheet() {
  // 获取域内所有Schema
  const allSchemas = AdminDirectory.Schemas.list('my_customer').schemas;
  if (!allSchemas || allSchemas.length === 0) {
    console.log("未找到任何Schema");
    return;
  }

  // 定位目标工作表(可根据实际需求修改,比如指定工作表名称)
  const targetSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("你的工作表名称");
  // 起始单元格为U4,对应行号4,列号21(U是第21列)
  const startRow = 4;
  const targetColumn = 21;

  // 遍历每个Schema,写入对应单元格
  allSchemas.forEach((schema, idx) => {
    // 将Schema对象转为带缩进的JSON字符串,保留完整结构
    const schemaFullStr = JSON.stringify(schema, null, 2);
    // 计算目标单元格行号:从startRow开始,逐个往下
    const targetRow = startRow + idx;
    targetSheet.getRange(targetRow, targetColumn).setValue(schemaFullStr);
  });
}

关键说明:

  • JSON.stringify(schema, null, 2):将复杂的Schema对象转换为人类可读的JSON字符串,第三个参数2表示用2个空格缩进,方便在单元格内查看层级结构。
  • 每个Schema对应一个单元格,不会出现字段拆分的问题,完整保留所有内部字段。

二、将console.log的输出转为变量用于setValue

console.log本身只是将内容输出到控制台,无法直接反向获取其输出内容。但你可以直接把原本要打印的内容赋值给变量,再转换为和console.log输出一致的格式:

示例代码:

function logToVariableAndWrite() {
  const schema = AdminDirectory.Schemas.get('my_customer', '你的Schema名称');
  
  // 直接将Schema对象转换为和console.log输出一致的格式化字符串
  const logEquivalentStr = JSON.stringify(schema, null, 2);
  
  // 将变量写入单元格
  SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange('U4').setValue(logEquivalentStr);
}

关键说明:

  • 当你用console.log(schema)时,控制台会输出格式化后的对象结构,JSON.stringify(schema, null, 2)就能生成完全一致的字符串格式。
  • 直接把这个字符串变量传入setValue,就能将原本console.log的内容写入指定单元格。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 15:01:05