Propiedad PivotCache.ADOConnection (Excel)

Devuelve un objeto ADO Connection si la caché de la tabla dinámica está conectada a un origen de datos OLE DB. La propiedad ADOConnection expone la conexión de Microsoft Excel con el proveedor de datos, lo que permite al usuario escribir código en el contexto de la misma sesión que Excel está utilizando con ADO (origen relacional) o ADO MD (origen OLAP). Solo lectura.

Sintaxis

expresión. Adoconnection

Expresión Variable que representa un objeto PivotCache .

Comentarios

La propiedad ADOConnection solo está disponible para sesiones con un origen de datos OLE DB. Si no existe ninguna sesión ADO, la consulta causará un error en tiempo de ejecución.

La propiedad ADOConnection se puede usar para cualquier caché basada en OLE DB con ADO. El objeto ADO Connection se puede usar con ADO MD para buscar información sobre los cubos OLAP en que se basa la caché.

Ejemplo:

En este ejemplo se establece un objeto Connection de base de datos de ADO en la propiedad ADOConnection de la caché de tabla dinámica. El ejemplo presupone que existe un informe de tabla dinámica en la hoja de cálculo activa.

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

Este ejemplo agrega un miembro calculado, suponiendo que exista un informe de tabla dinámica en la hoja de cálculo activa.

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

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.