Class Group

群组

访问和修改电子表格群组。组是一组连续的时间间隔之间的关联 可以作为一个单元展开或收起的行或列,以隐藏/显示行或列。 每个组内紧挨着该组的行或列上都有一个控制切换开关 (具体取决于设置)。

组的深度指的是组的嵌套位置,以及相应组的嵌套位置, 包含该组。群组的收起状态是指该群组是否 在父组展开后应保持收起或展开状态。此外,在 某个组收起或展开时,该组中的行或列会隐藏或隐藏 将个别行或列设置为可见,但无论 折叠状态。

方法

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

详细文档

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 的组深度减少 一个。这可能会修改其他群组。调用后,群组对象就会失效,无法使用。

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

另请参阅