编程语言
首页 > 编程语言> > javascript – getLastRow()的问题

javascript – getLastRow()的问题

作者:互联网

我遇到了getLastRow()的问题.我以为这个函数应该返回有数据的最后一行.但是由于我正在处理的工作表在填充数据的行下方有更多的空行,所以函数似乎进入并选择其执行的最后一个空行而不是选择具有数据的最后一行,这可能不是是相同的.有人可以告诉我如何解决这个异常现象.这是一个谷歌脚本错误还是我不清楚该怎么做?如果我不清楚,请提出进一步的问题.

解决方法:

表格中是否有“全列”公式?数组公式,还是一直复制的公式?即使这些公式被设计为从底部返回空白单元格,getLastRow()仍将捕获它们.

如果是这种情况,请尝试:

function getLastPopulatedRow(sheet) {
  var data = sheet.getDataRange().getValues();
  for (var i = data.length-1; i > 0; i--) {
    for (var j = 0; j < data[0].length; j++) {
      if (data[i][j]) return i+1;
    }
  }
  return 0; // or 1 depending on your needs
}

标签:javascript,google-sheets,google-apps-script
来源: https://codeday.me/bug/20191008/1874083.html