我想从Google电子表格中获取一个范围,创建一个javascript数组,然后将每个项目(范围)传递到数组中。
范围(A5:A10)中的值例如是比特币现金,litecoin,以太坊,monero,破折号,量子赌注。
我的代码如下:
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]
所以第一个是正确的,它循环正确的次数,但所有其他值都是未定义的。
这是为什么?它应该是直截了当的。有人可以帮忙吗?谢谢。
答案 0 :(得分:2)
getValues
返回由row,然后是column索引的范围。您的范围A5:A10有五行一列。您将其视为有一行五列。在代码中交换0
和i
:
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)
}