访问和修改电子表格组。组是指一组连续行的间隔或一组连续列之间的关联,可作为一个单元展开或收起,以隐藏/显示相应行或列。每个组在行或列中都有一个位于该组前面或后面(具体取决于设置)的控制切换开关,可用于整体展开或收起该组。
组的深度是指组的嵌套位置以及包含该组的更大组的数量。组的收起状态是指在父级组展开后,该组应保持收起状态还是展开状态。此外,在某个组收起或展开时,该组中的行或列会隐藏或设为可见,但无论收起状态如何,都可以隐藏或设为可见个别行或列。
方法
方法 | 返回类型 | 简介 |
---|---|---|
collapse() | Group | 收起此组。 |
expand() | Group | 展开此组。 |
get | Integer | 返回此组的控件切换开关索引。 |
get | Integer | 返回此组的深度。 |
get | Range | 返回此组的存在范围。 |
is | Boolean | 如果此组处于收起状态,则返回 true 。 |
remove() | void | 从工作表中移除此组,将 range 的组深度减少 1。 |
详细文档
collapse()
收起此组。
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0]; const range = sheet.getRange('2:3'); range.shiftRowGroupDepth(1); const 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()
展开此组。
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0]; const range = sheet.getRange('2:3'); range.shiftRowGroupDepth(1); const group = sheet.getRowGroup(2, 1); // Expands this group. group.expand();
返回
Group
- 此组,用于链式调用
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
get Control Index()
返回此组的控件切换开关索引。如果控件切换开关显示在组之前,则为范围前面的编号;否则,为范围后面的编号。
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0]; sheet.setRowGroupControlAfter(true); const range = sheet.getRange('2:3'); range.shiftRowGroupDepth(1); const group = sheet.getRowGroup(2, 1); // Returns 4 const controlIndex = group.getControlIndex();
返回
Integer
- 此组的控制开关索引
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
get Depth()
返回此组的深度。
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0]; const range = sheet.getRange('2:3'); range.shiftRowGroupDepth(1); const group = sheet.getRowGroup(2, 1); // Returns 1 if the group is at depth 1. const depth = group.getDepth();
返回
Integer
- 此组的深度
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
get Range()
返回此组的存在范围。
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0]; let range = sheet.getRange('2:3'); range.shiftRowGroupDepth(1); const 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
is Collapsed()
如果此组处于收起状态,则返回 true
。
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0]; const range = sheet.getRange('2:3'); range.shiftRowGroupDepth(1); const group = sheet.getRowGroup(2, 1); // Returns true if the group is collapsed. const isCollapsed = group.isCollapsed();
返回
Boolean
- 如果此组已收起,则返回 true
;否则返回 false
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
remove()
从工作表中移除此组,将 range
的组深度减少 1。这可能会修改其他组。调用此方法后,群组对象将变为无效,无法再使用。
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0]; let range = sheet.getRange('2:3'); range.shiftRowGroupDepth(1); const group = sheet.getRowGroup(2, 1); // Removes this group range = group.remove();
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets