2.0在Google Apps脚本

时间:2016-03-18 20:11:14

标签: google-apps-script

我试图在Google电子表格上运行脚本。以下是代码段:

var startRow = 2;
var data = dataRange.getValues();
for (i in data) {
   sheet.getRange( startRow + i, 4).setValue("EMAIL_SENT");
}

我希望" EMAIL_SENT"从第2行出现。但是,相反,它出现在第20行。当我使用Logger写出startRow时,它显示为2.0而不是2.我猜测2.0因为我住在芬兰而被识别为20,其中逗号而不是点用作小数点。话虽如此,我的语言设置是用日语设置的,其中dot用作小数点。所以,这种解释并不合乎逻辑,但这是我能想到的唯一解释。我用的时候

Math.round( startRow )

这也没有帮助。有人可以建议解决方案吗?谢谢!

1 个答案:

答案 0 :(得分:0)

我不知道为什么,但由于某种原因,这种类型的循环不会创建编号索引(i)。因此,您的脚本内容为startRow + i,就像说2和i,而不是2加i

你没有看到数字20,你看到数字2的索引为0。

要更改此设置,您可以使用此类型的循环。

for(var i=0;i<data.length;i++){
    sheet.getRange( startRow + i, 4).setValue("EMAIL_SENT");
  }

或者您只需将Number()添加到i

即可
sheet.getRange( startRow + Number(i), 4).setValue("EMAIL_SENT");