首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google脚本: Google分组

Google脚本: Google分组
EN

Stack Overflow用户
提问于 2018-06-06 21:02:29
回答 1查看 2.3K关注 0票数 1

当脚本(下面)使用数据到达最后一行时,如何阻止for循环继续运行?

我如何使每一组崩溃,而不仅仅是第一组?

我不知道如何将.getLastRow()-1集成到脚本中。我需要179个numRows,因为这是我想要分组的行数,但不确定如何完成脚本。我修改了其中一个新的“记录宏”,并进行了一些反向工作。此外,第一组在分组后会按预期折叠,但其他组则不会。任何帮助都将不胜感激!

代码语言:javascript
复制
function test2() {
var spreadsheet = SpreadsheetApp.getActive();
var sheet = spreadsheet.getActiveSheet();
var currentRow = 3;
var startColumn= 1;
var numRows = 179;
var numColumns= sheet.getMaxColumns();
for (i = 0; i < numRows; i++) {
  sheet.getRange(currentRow, startColumn, numRows, numColumns).activate()
  .shiftRowGroupDepth(1);
  spreadsheet.getActiveSheet().getRowGroup(3, 1).collapse();
currentRow = currentRow+180
  }
};
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-07 01:23:24

好的,对于其他人来说,这是我发现的。我觉得必须有一个比指定我最终想要建立的组的确切数量更简单的方法,但它是有效的。

代码语言:javascript
复制
function test2() {
var spreadsheet = SpreadsheetApp.getActive();
var sheet = spreadsheet.getActiveSheet();
var currentRow = 3;
var startColumn= 1;
var numRows = 179;
var numColumns= sheet.getMaxColumns();
var numGroups = 28;

for (i = 0; i < numGroups; i++) {
  sheet.getRange(currentRow, startColumn, numRows, numColumns).activate()
  .shiftRowGroupDepth(1);
  spreadsheet.getActiveSheet().getRowGroup(currentRow, 1).collapse();
  currentRow = currentRow+180
 }
};
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50729545

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档