Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

TCD sur plusieurs feuilles

docjo

XLDnaute Nouveau
Bonjour

J'ai fais un Tableau croisé dynamique sur plusieurs feuilles mais je voudrai pouvoir changer les noms des feuilles. aussi j'aimerai faire un code du type:

Code:
Sub Decompte()

        Sheets("Décompte").Select
    ActiveWorkbook.PivotCaches.Add(SourceType:=xlConsolidation, SourceData:= _
        Array(Array(Sheets(5).Range("A80:M109"), "Élément1"), Array( _
        Sheets(6).Range("A80:M109"), "Élément2"), Array(Sheets(7).Range("A80:M109") _
        , "Élément3"), Array(Sheets(8).Range("A80:M109"), "Élément4"), Array( _
        Sheets(9).Range("A80:M109"), "Élément5"), Array(Sheets(10).Range("A80:M109") _
        , "Élément6"), Array(Sheets(11).Range("A80:M109"), "Élément7"), Array( _
        Sheets(12).Range("A80:M109"), "Élément8"), Array(Sheets(13).Range("A80:M109") _
        , "Élément9"), Array(Sheets(14).Range("A80:M109"), "Élément10"), Array( _
        Sheets(15).Range("A80:M109"), "Élément11"), Array( _
        Sheets(16).Range("A80:M109"), "Élément12"), Array( _
        Sheets(17).Range("A80:M109"), "Élément13"), Array( _
        Sheets(18).Range("A80:M109"), "Élément14"), Array( _
        Sheets(19).Range("A80:M109"), "Élément15"), Array( _
        Sheets(20).Range("A80:M109"), "Élément16"))).CreatePivotTable _
        TableDestination:="'[répartition globale.xls]Décompte'!R3C1", TableName:= _
        "Tableau croisé dynamique2", DefaultVersion:=xlPivotTableVersion10
    ActiveSheet.PivotTables("Tableau croisé dynamique2").DataPivotField.PivotItems( _
        "Somme de Valeur").Position = 1
    ActiveWorkbook.ShowPivotTableFieldList = False
End Sub

Mais j'ai une erreur "incompatibilité de type". Je me demande aussi s'il n'y a pas un moyen de l'écrire plus simplement avec une boucle for to ?

Merci pour vos conseils.
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…