Propriedade PivotCache.ADOConnection (Excel)
Retorna um objeto ADO Connection se o cache de tabela dinâmica estiver conectado a um fonte de dados OLE DB. A propriedade ADOConnection expõe a conexão do Microsoft Excel ao provedor de dados, permitindo que o usuário escreva código dentro do contexto da mesma sessão que o Excel está usando com ADO (fonte relacional) ou ADOMD (fonte OLAP). Somente leitura.
Sintaxe
expressão. ADOConnection
Expressão Uma variável que representa um objeto PivotCache .
Comentários
A propriedade ADOConnection está disponível apenas para sessões com uma fonte de dados OLE DB. Quando não houver sessão ADO, a consulta resultará em um erro em tempo de execução.
A propriedade ADOConnection pode ser usada para qualquer cache baseado em OLE DB com ADO. O objeto ADO Connection pode ser usado com ADO MD para encontrar informações sobre cubos OLAP nos quais o cache está baseado.
Exemplo
Este exemplo define um objeto ADO DB Connection para a propriedade ADOConnection do cache de Tabela Dinâmica. O exemplo supõe que exista um relatório de tabela dinâmica na planilha ativa.
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 exemplo adiciona um membro calculado, supondo que exista um relatório de tabela dinâmica na planilha ativa.
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
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.