使用报表中的 GroupOn 属性可以指定如何对字段中的数据或表达式中的数据,按照数据类型进行分组。例如,该属性可用于按月对“日期”字段进行分组。Integer 型,可读写。
expression.GroupOn
expression 必需。返回“Applies To”列表中的一个对象的表达式。
字段的 GroupOn 属性设置是否可用,取决于字段数据类型,如下表所示。对于表达式,所有设置都可用。所有数据类型的默认设置为“每一个值”。
| 字段数据类型 | 设置 | 记录分组方式 | Visual Basic | 
|---|---|---|---|
| 文本 | (默认值)每一个值 | 字段或表达式中的相同值。 | 0 | 
| 前缀字符 | 在字段或表达式中,前 n 个字符相同。 | 1 | |
| 日期/时间 | (默认值)每一个值 | 字段或表达式中的相同值。 | 0 | 
| 年 | 同一历法年内的日期。 | 2 | |
| 季 | 同一历法季度内的日期。 | 3 | |
| 月 | 同一月份内的日期。 | 4 | |
| 周 | 同一周内的日期。 | 5 | |
| 日 | 同一天的日期。 | 6 | |
| 时 | 同一小时内的时间。 | 7 | |
| 分 | 同一分钟内的时间。 | 8 | |
| 自动编号、货币、数字型 | (默认值)每一个值 | 字段或表达式中的相同值。 | 0 | 
| 间隔 | 在指定间隔中的值。 | 9 | 
使用 Visual Basic 可以在报表的 Open 事件过程中设置该属性。
要将 GroupOn 属性设为“每一个值”之外的值,首先需要将选定字段或表达式的 GroupHeader 或 GroupFooter 属性设置为“是”,或两者都设为“是”。
下面的示例对“各类产品”报表中的第一个分组级别的 SortOrder 属性和分组属性进行设置,以创建一个按字母排序的产品列表。
Private Sub Report_Open(Cancel As Integer)
    ' Set SortOrder property to ascending order.
    Me.GroupLevel(0).SortOrder = False
    ' Set GroupOn property.
    Me.GroupLevel(0).GroupOn = 1
    ' Set GroupInterval property to 1.
    Me.GroupLevel(0).GroupInterval = 1
    ' Set KeepTogether property to With First Detail.
    Me.GroupLevel(0).KeepTogether = 2
End Sub