javascript - Google Apps 脚本 - 查找电子表格中列的最后一个空行

标签 javascript google-apps-script google-sheets

我目前有一个像这样的脚本:(它将每分钟运行一次并获取任何值)

  // function 01
  sheet2.getRange(sheet2.getLastRow() + 1, 1, 1, 6).setValues(values);

  // function 02
  sheet2.getRange(sheet2.getLastRow() + 1, 10, 1, 6).setValues(values);

它找到最后一行并设置下一行中的值。两者都有不同的功能。但目前它输出的是这样的。

当前输出:不好

// function 1 output here       // function 2 output here
------------------------------------------------------------
|   A    |     B    |   C     ||         |         |        |
------------------------------------------------------------
|        |          |         ||   D     |    E    |   F    |
------------------------------------------------------------
|        |          |         ||   G     |    H    |   I    |
------------------------------------------------------------
|   J    |    K     |   L     ||         |         |        |
------------------------------------------------------------

我希望像这样显示:

预期结果

------------------------------------------------------------
|   A    |     B    |   C     ||   D     |    E    |   F    |
------------------------------------------------------------
|   J    |     K    |    L    ||   G     |    H    |   I    |
------------------------------------------------------------
|        |          |         ||         |         |        |
------------------------------------------------------------

希望我说得清楚。

最佳答案

尝试以下函数,稍加修改以传递 Mogsdad 于 2014 年 11 月 27 日为响应线程 Faster way to find the first empty row 为新工作表提供的解决方案中的列。

// Don's array approach - checks first column only
// With added stopping condition & correct result.
// From answer https://stackoverflow.com/a/9102463/1677912
// Added the passing of myColumn which needs to be a column range
// example use: var emptyRow = getFirstEmptyRowByColumnArray('B:B');
function getFirstEmptyRowByColumnArray(myColumn) {
  var spr = SpreadsheetApp.getActiveSpreadsheet();
  var column = spr.getRange(myColumn);
  var values = column.getValues(); // get all data in one call
  var ct = 0;
  while ( values[ct] && values[ct][0] != "" ) {
    ct++;
  }
  return (ct+1);
}

当然,如果您愿意,也可以将其编写为仅传递列并创建范围。

关于javascript - Google Apps 脚本 - 查找电子表格中列的最后一个空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39859113/

相关文章:

mysql - 如何查询我的数据库并将其输出到 Google 表格,以便有人可以编辑此数据,然后将其反射(reflect)回 MySQL?

javascript - 基本的 Javascript if/else 语句问题

javascript - 使用 jquery 显示简单的 carousal 描述

javascript - node-webkit Windows 文件系统分隔符?

javascript - 如何从我的外部 javascript 文件访问 php 变量

javascript - 在谷歌应用程序脚本中使用 isBlank() 来标记列

api - Google Apps 脚本和外部 API 授权在 header 中失败

html - 更改行中间的 GMail 文本颜色

google-apps-script - 列自动增加

if-statement - 尝试在条件格式公式中使用 IF VLOOKUP 并获得无效公式