TCD pivotTable ADODB Access

Bonjour à tous,

Dans un premier module j'ai

Public Const ADODB_PROVIDER = "OLEDB;Provider=Microsoft.ACE.OLEDB.12.0;"
Public Const PATH_DB = "E:\BkUpData\Projets\Access\test.accdb"

Dans un module j'ai cette fonction qui crée une connexion. Petite particularité le commandText et CmdType sont déjà renseignés

Public Function fWkBookCnxAdd()

    Dim objWBConnect As WorkbookConnection

    Set objWBConnect = ThisWorkbook.Connections.Add( _
    Name:="tcd", Description:="", _
    ConnectionString:=ADODB_PROVIDER & _
    "Data Source=" & PATH_DB, _
    CommandText:="SELECT * FROM qryFactureSumMonthYear", _
    lCmdtype:=xlCmdSql)

End Function

Dans un onglet j'ai ajouté un bouton et sur l'événement click, j'ai une erreur sur

Set oPtTable = oPivotCache.CreatePivotTable

Private Sub cmdTcd_Click()

    Dim oPivotCache As PivotCache
    Dim oPtTable As PivotTable

    ActiveSheet.Range("A3").CurrentRegion.Clear ' --> suppression du TCD

    ' Create a PivotTable cache
    Set oPivotCache = ActiveWorkbook.PivotCaches.Add(SourceType:=xlExternal,  _
    SourceData:=ThisWorkbook.Connections("tcd"))  ' ---> Pas d'erreur 

    ' Create a tcd.
    Set oPtTable = oPivotCache.CreatePivotTable( _
    TableDestination:=Range("A3"), _
    TableName:="tcd") ' ---> Erreur  d'exécution 1004 - Erreur définie par l'application ou par l'objet

    With ActiveSheet.PivotTables("tcd")
        .SmallGrid = False

        .AddFields _
        RowFields:="idfacture", _
        RowFields:="libelle", _
        ColumnFields:="PeriodemontYear"

        .adddatafields _
        Field:=oPtTable.PivotFields("montant")
     End With

End Sub

Merci pour votre aide

Rechercher des sujets similaires à "tcd pivottable adodb access"