【问题标题】:Find the next empty row within a range查找范围内的下一个空行
【发布时间】:2021-05-17 14:56:46
【问题描述】:

App Script 中是否有一种简单的方法来查找范围内的下一个空行,例如我想要以下内容:

    A   B   C   D   E
1|CODE RM1 RM2 RM3 NAME
2| 021  x       x  Pete
3| 531      x   x  Mike
4| 141             John
5| 155  x   x      Paul

返回 B2:D 范围内的下一行空白行 所以它会返回第 4 行

其他行(如上例中的 A 行和 E 行)将包含数据,因此应忽略。

我正在尝试从另一个工作表(或选项卡)写入下一个空白行,该工作表有一个输入区域供用户输入数据并点击按钮,然后数据将添加到目标页面上的空白行(第一行DATA!B2:D)

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    尝试使用电子表格公式来做到这一点:

    =+filter(row(B2:D), not(len(B2:B & C2:C & D2:D)))

    如果您不想要行号,而想要列 A 中的值,请将 row(B2:D) 替换为 A2:A

    要在 Apps 脚本中执行此操作,请尝试以下模式:

    const range = SpreadsheetApp.getActive().getRange('Sheet1!B2:D');
    const firstBlankRow = range.getValues().findIndex(row => !row.join('')) + 1;
    

    【讨论】:

    • 抱歉,我忘了提到我需要它在 Google Apps 脚本中返回,当用户将值输入一行时,我正试图从另一个页面写入该行。我将编辑问题。
    • 编辑答案以添加 Apps 脚本代码。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多