【发布时间】:2016-11-25 14:13:46
【问题描述】:
这是一个将 JSON 数据提取到 Google 表格中的 Google Apps 脚本。
代码是:
function pullJSON() {
var url="https://api.myjson.com/bins/4610d"; // publicly available json
var response = UrlFetchApp.fetch(url); //
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
var dataAll = JSON.parse(response.getContentText());
var dataSet = dataAll;
var rows = [],
data;
for (i = 0; i < Object.keys(dataSet).length; i++) {
data = dataSet[Object.keys(dataSet)[i]];
rows.push([data.name]); //JSON entities here
}
dataRange = sheet.getRange(1, 1, rows.length, 1);
dataRange.setValues(rows);
}
在 Google 表格中,我通过在单元格中输入 =pullJSON() 来调用该函数。它显示错误:
“您没有权限调用 setValues(line 20)”,指的是以下行:dataRange.setValues(rows);
并在单元格 A1、A2、A3 中产生“未定义”结果。
JSON 数据源就是这样的:
{"id":1,"name":"A green door","price":12.5}
这样做的目的是为了能够将 JSON 数据转换成 google sheet 中的表格形式。
以上大部分内容都紧随此线程中的内容: "The coordinates or dimensions of the range are invalid" - Google Apps Script and JSON Data
非常感谢您对此问题的任何指导。
【问题讨论】:
标签: json google-apps-script google-sheets custom-function