Google表格脚本-For循环-是否创建了其他条目?

时间:2019-06-23 11:25:22

标签: javascript google-apps-script

这将获取单元格C列中的数字值,写入A列,并在最终单元格位置添加1行。因此4变成A5,26变成A27。 但是我总是写单元格“ A1”,但我不知道它是从哪里来的。预先感谢。

function HGP() {
var sourceSheet = SpreadsheetApp.getActive();
var sourceRange = sourceSheet.getRange('C2:C126');
var sourceRangeData = sourceRange.getValues()
for(var i=0;i<sourceRangeData.length;i++){
      var XX = "A" + (Number(sourceRangeData[i]) +1);
   sourceSheet.getRange(XX)
     .setValue('OK'); 
}
}

1 个答案:

答案 0 :(得分:0)

问题/解决方案:

C2:C126某个地方有一个空单元格。 Number(sourceRangeData[i])+1变为0 + 1,因此A1被写为“ OK”。您可以filter删除空字符串:

摘要:

sourceSheet.getRangeList(
  sourceRange.getValues()
    .filter(String)
    .map(function(e,i){return 'A'+(parseInt(e[0])+1)})
).setValue('OK')

参考文献: