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

Destination TCD

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Ken Hutchinson

XLDnaute Occasionnel
Bonjour à tous,

Voici un bout de code. Je cherche à créer un TCD et un GCD en même temps. Pour le GCD pas de problème. Par contre pour le TCD, je n'arrive pas à le mettre dans la feuille TCD... C'est dans la dernière ligne de code : il spécifie Range(A1"). Comment lui dire que c'est Range("A1") dans la feuille TCD ? J'ai bien essayé Sheets("TCD").range("A1") mais ça ne marche pas.

Code:
    Sheets("Synthèse").Select
    Sheets.Add
    Sheets("Feuil1").Select
    Sheets("Feuil1").Name = "TDB"
    Sheets("Synthèse").Select

    Range("A1").Select
    Selection.End(xlDown).Select
    ActiveCell.Offset(1, 0).Select
    Selection.EntireRow.Delete

    Range("A1").Select
    Selection.CurrentRegion.Select
    Selection.Name = "SourceTab"


    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
        "SourceTab").CreatePivotTable TableDestination:=Range("A1"), _
        TableName:="Tableau croisé dynamique1"
 
Re : Destination TCD

Merci Bruno de t'être proposé pour m'aider. Je viens de trouver la solution.

Après avoir rajouté la destination du TCD :
Code:
    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
        "SourceTab").CreatePivotTable TableDestination:=Sheets("TDB").Range("A3"), _
        TableName:="Tableau croisé dynamique1"

Il fallait rajouter :
Code:
    Sheets("TDB").Select

Sinon la suite ne fonctionne pas car la feuille active reste celle d'origine et VB ne peut pas créer le TCD dans la feuille des données...

Code:
Sub TCD_GCD()

'
' Macro12 Macro
' Macro enregistrée le 29/08/2008 par M
'

'
    Sheets("Synthèse").Select
    Sheets.Add
    Sheets("Feuil1").Select
    Sheets("Feuil1").Name = "TDB"
    Sheets("Synthèse").Select

    Range("A1").Select
    Selection.End(xlDown).Select
    ActiveCell.Offset(1, 0).Select
    Selection.EntireRow.Delete

    Range("A1").Select
    Selection.CurrentRegion.Select
    Selection.Name = "SourceTab"


    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
        "SourceTab").CreatePivotTable TableDestination:=Sheets("TDB").Range("A3"), _
        TableName:="Tableau croisé dynamique1"
    Sheets("TDB").Select
    ActiveSheet.PivotTables("Tableau croisé dynamique1").SmallGrid = False
    ActiveSheet.PivotTables("Tableau croisé dynamique1").AddFields RowFields:= _
        Array("Période", "Données"), PageFields:="Relation"
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("PAT*N")
        .Orientation = xlDataField
        .Position = 1
    End With
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

D
  • Question Question
Réponses
1
Affichages
761
M
Réponses
2
Affichages
3 K
C
Réponses
23
Affichages
4 K
Charles78
C
C
Réponses
5
Affichages
2 K
Charles78
C
Réponses
1
Affichages
2 K
Compte Supprimé 979
C
T
Réponses
1
Affichages
2 K
Tinytoons
T
V
Réponses
69
Affichages
9 K
V
Réponses
4
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…