ADOConnection 属性 - Microsoft Excel Visual Basic 2002 参考

返回介绍

ADOConnection 属性

发布于 2019-08-07 字数 2201 浏览 895 评论 0

如果数据透视表的缓存与 OLE DB 数据源连接,就返回一个 ADO 连接对象。ADOConnection 属性表明 Microsoft Excel 与数据提供程序相连,数据提供程序允许用户在同一个会话的上下文中写入代码,该会话与 ADO(相关源)或 ADOMD(OLAP 源)一起使用。只读。

expression.ADOConnection

expression 必需。该表达式返回一个 PivotCache 对象。

说明

ADOConnection 属性只用于数据源是 OLE DB 数据源时的会话。如果没有 ADOMD 会话,查询将导致运行错误。

ADOConnection 属性可用于任意包含 ADO 的基于 OLEDB 的缓存。采用 ADOMD 的 ADO 连接对象可用于查找有关 OLAP 多维数据集的信息,缓存基于该 OLAP 多维数据集。

示例

本示例为数据透视表缓存的 ADOConnection 属性设置了一个 ADODB 连接对象。本示例假定数据透视表位于活动工作表上。

Sub UseADOConnection()
    Dim ptOne As PivotTable
    Dim cmdOne As New ADODB.Command
    Dim cfOne As CubeField
    Set ptOne = Sheet1.PivotTables(1)
    ptOne.PivotCache.MaintainConnection = True
    Set cmdOne.ActiveConnection = ptOne.PivotCache.ADOConnection
    ptOne.PivotCache.MakeConnection
    ' Create a set.
    cmdOne.CommandText = "Create Set [Warehouse].[My Set] as '{[Product].[All Products].Children}'"
    cmdOne.CommandType = adCmdUnknown
    cmdOne.Execute
    ' Add a set to the CubeField.
    Set cfOne = ptOne.CubeFields.AddSet("My Set", "My Set")
End Sub

本示例在假定数据透视表位于活动工作表的前提下,添加一个计算成员。

Sub AddMember()
    Dim cmd As New ADODB.Command
    If Not ActiveSheet.PivotTables(1).PivotCache.IsConnected Then
        ActiveSheet.PivotTables(1).PivotCache.MakeConnection
    End If
    Set cmd.ActiveConnection = ActiveSheet.PivotTables(1).PivotCache.ADOConnection
    ' Add a calculated member.
    cmd.CommandText = "CREATE MEMBER [Warehouse].[Product].[All Products].[Drink and Non-Consumable] AS '[Product].[All Products].[Drink] + [Product].[All Products].[Non-Consumable]'"
    cmd.CommandType = adCmdUnknown
    cmd.Execute
    ActiveSheet.PivotTables(1).PivotCache.Refresh
End Sub

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

目前还没有任何评论,快来抢沙发吧!