Previous topicNext topic
Help > 开发指南 > Excel > API > 示例 > 组数据 >
如何:手动分组数据

您可以对行和列进行分组,以便更轻松地分析大量数据,并简化大型工作表中的导航。此功能提供了将数据拆分为单独的组并在工作表中隐藏不必要的详细信息的功能。

对行进行分组

若要对工作表中的行进行分组,请调用 RowCollection 对象的 RowCollection.Group 方法。此对象表示工作表中包含的所有行的集合,可通过 Worksheet.Rows 属性进行访问。传递要分组的第一行和最后一行的索引,以及指示应展开还是折叠新组的值。

请注意,您还可以将一组行放在另一组行中。但是嵌套组的数量是有限的:您最多可以创建七个级别的分组。下面的示例演示了 two 如何创建两个级别的分组。

Vb.Net
'从第三行开始将四行分组,然后折叠该组。
worksheet.Rows.Group(2, 5, True)

'从第九行开始将四行分组,然后展开该组。
worksheet.Rows.Group(8, 11, False)

'通过对第2行到第13行进行分组来创建外部行组。
worksheet.Rows.Group(1, 12, False)

C#
// 从第三行开始将四行分组,然后折叠该组。
worksheet.Rows.Group(2, 5, true);

// 从第九行开始将四行分组,然后展开该组。
worksheet.Rows.Group(8, 11, false);

// 通过对第2行到第13行进行分组来创建外部行组。
worksheet.Rows.Group(1, 12, false);

下图显示了结果(工作簿在 Microsoft® Excel® 中打开)。

取消对行的分组

若要取消工作表中的行的分组,请调用 Worksheet.Rows 集合的 RowCollection.UnGroup 方法。传递要取消分组的第一行和最后一行的索引,以及指示取消分组后是否应显示折叠行的值。

Vb.Net
'取消分组四行(从第三行到第六行)并显示折叠的数据。
worksheet.Rows.UnGroup(2, 5, True)

'取消对四行的分组(从第九行到第十二行)。
worksheet.Rows.UnGroup(8, 11, False)

'删除外部行组。
worksheet.Rows.UnGroup(1, 12, False)

C#
// 取消分组四行(从第三行到第六行)并显示折叠的数据。
worksheet.Rows.UnGroup(2, 5, true);

// 取消对四行的分组(从第九行到第十二行)。
worksheet.Rows.UnGroup(8, 11, false);

// 删除外部行组。
worksheet.Rows.UnGroup(1, 12, false);

组列

若要对工作表中的列进行分组,请调用 ColumnCollection 对象的 ColumnCollection.Group 方法。此对象表示工作表中包含的所有列的集合,可使用 Worksheet.Columns 属性进行访问。传递要分组的第一列和最后一列的索引,以及指示是应展开还是折叠新组的值。

请注意,您也可以将一组列放在另一组列中。但是嵌套组的数量是有限的:您最多可以创建七个级别的分组。

Vb.Net
 worksheet.Columns.Group(2, 5, False)

C#
 worksheet.Columns.Group(2, 5, false);

下图显示了结果(工作簿在 Microsoft® Excel® 中打开)。

取消列分组

若要取消工作表中的列的分组,请调用 Worksheet.Columns 集合的 ColumnCollection.UnGroup 方法。传递要取消分组的第一列和最后一列的索引,以及指示取消分组后是否应显示折叠列的值。

Vb.Net
 worksheet.Columns.UnGroup(2, 5, False)

C#
 worksheet.Columns.UnGroup(2, 5, false);