如何从 google sheet 中的范围创建 javascript 数组?

How can I create a javascript array froma range in a google sheet?

我想从 Google 电子表格中获取一个范围,创建一个 javascript 数组,然后将形成范围的每个项目传递到数组中。

范围 (A5: A10) 中的值例如是比特币现金、莱特币、以太坊、门罗币、dash、quantstamp。

我的代码如下:

function appendCoins() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
  var r = sheet.getRange('A5:A10').getValues();
  var coins = [];
  for (var i=0;i < r.length-1;i++) {
     coins.push(r[0][i]);
    }
    Logger.log(coins)
}

记录器向我展示了这个:

[18-01-10 18:09:07:218 GMT] [bitcoin-cash, null, null, null, null, null]

所以第一个是正确的,它循环了正确的次数,但所有其他值都是未定义的。

这是为什么?它应该是直截了当的。有人可以帮忙吗?谢谢你。

getValues returns 按行索引的范围,然后是列。您的范围 A5:A10 有五行一列。您将其视为只有一行和五列。在您的代码中交换 0i

function appendCoins() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
  var r = sheet.getRange('A5:A10').getValues();
  var coins = [];
  for (var i=0;i < r.length-1;i++) {
     coins.push(r[i][0]);
  }
  Logger.log(coins)
}