Class Group

群组

访问和修改电子表格组。组是连续的行或列之间的一系列关联,可以作为一个单元展开或收起,以隐藏/显示行或列。每个组在组的前面或后面(具体取决于设置)的行或列上都有一个控制开关,可用于展开或收起整个组。

组的嵌套位置以及包含该组的较大组的数量。组的收起状态是指在父级组展开后,该组是应保持收起状态还是展开状态。此外,当某个组收起或展开时,组内的行或列会隐藏或设置为可见,但无论折叠状态如何,各个行或列都可以隐藏或设置为可见。

方法

方法返回类型简介
collapse()Group收起此群组。
expand()Group展开此群组。
getControlIndex()Integer返回该组的控制切换索引。
getDepth()Integer返回此组的深度。
getRange()Range返回此组所在的范围。
isCollapsed()Boolean如果该组已收起,则返回 true
remove()void从工作表中移除该组,从而将 range 的组深度减少 1 次。

详细文档

collapse()

收起此群组。

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
var range = sheet.getRange(2:3);
range.shiftRowGroupDepth(1);
var group = sheet.getRowGroup(2, 1);

// Collapses this group.
group.collapse();

弃踢回攻

Group - 此群组,用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

expand()

展开此群组。

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
var range = sheet.getRange(2:3);
range.shiftRowGroupDepth(1);
var group = sheet.getRowGroup(2, 1);

// Expands this group.
group.expand();

弃踢回攻

Group - 此群组,用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getControlIndex()

返回该组的控制切换索引。这是位于范围之前(当控制切换开关显示在组之前时)之前的索引,否则是位于范围之后紧邻范围的索引。

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
sheet.setRowGroupControlAfter(true);
var range = sheet.getRange(2:3);
range.shiftRowGroupDepth(1);
var group = sheet.getRowGroup(2, 1);

// Returns 4
var controlIndex = group.getControlIndex();

弃踢回攻

Integer - 此群组的控制切换索引

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getDepth()

返回此组的深度。

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
var range = sheet.getRange(2:3);
range.shiftRowGroupDepth(1);
var group = sheet.getRowGroup(2, 1);

// Returns 1 if the group is at depth 1.
var depth = group.getDepth();

弃踢回攻

Integer - 此群组的深度

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getRange()

返回此组所在的范围。

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
var range = sheet.getRange(2:3);
range.shiftRowGroupDepth(1);
var group = sheet.getRowGroup(1, 1);

// Returns the range 2:3 if the group is over rows 2:3
range = group.getRange();

弃踢回攻

Range - 群组所属的范围

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

isCollapsed()

如果此群组已收起,则返回 true

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
var range = sheet.getRange(2:3);
range.shiftRowGroupDepth(1);
var group = sheet.getRowGroup(2, 1);

// Returns true if the group is collapsed.
var isCollapsed = group.isCollapsed();

弃踢回攻

Boolean - 如果此群组已收起,则返回 true;否则返回 false

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

remove()

从工作表中移除该组,从而将 range 的组深度减少 1 次。这可能会修改其他群组。调用此函数后,组对象将变为无法使用。

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
var range = sheet.getRange(2:3);
range.shiftRowGroupDepth(1);
var group = sheet.getRowGroup(2, 1);

// Removes this group
var range = group.remove();

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

另请参阅