如果为 True,则允许手动更改数据透视表字段中项目的位置。如果该字段中没有手动定位的项目,则返回 True。Boolean 类型,可读写。
expression.DatabaseSort
expression 必需。该表达式返回一个 PivotField 对象。
如果数据源不是联机分析处理 (OLAP) 数据源,则 DatabaseSort 属性返回 False。
如果数据源是 OLAP,并且字段中既没有应用自定义排序也没有应用自动排序,那么该属性返回 True。
对于 OLAP 数据透视表,如果将 DatabaseSort 属性设置为 True,则会删除应用于字段的所有自定义排序或自动排序(也就是说,建立连接时数据透视表恢复为默认的状态)。
如果没有应用自动排序,那么将 DatabaseSort 属性设置为 False 时,会使排序次序变为当前的项目次序。
将 DatabaseSort 属性设置为 True 或 False 都会引起更新。
对于非 OLAP 源或 OLAP 数据字段,如果将 DatabaseSort 属性设置为 True,则会导致运行错误。
本示例判断数据源是否是 OLAP 数据源,并通知用户。本示例假定 OLAP 数据透视表位于活动工作表上。
Sub UseDatabaseSort()
Dim pvtTable As PivotTable
Dim pvtField As PivotField
Set pvtTable = ActiveSheet.PivotTables(1)
Set pvtField = pvtTable.PivotFields("[Product].[Product Family]")
' Determine source type for the PivotTable report.
If pvtField.DatabaseSort = True Then
MsgBox "The source is OLAP; you can manually reorder items."
Else
MsgBox "The data source might not be OLAP."
End If
End Sub