TCD macro

Résolu
kiki - Modifié par Whismeril le 12/05/2015 à 09:33
 kiki - 19 mai 2015 à 10:48
Bonjour,

Je suis étudiant, actuellement en stage je n'arrive pas à résoudre mon problème de "DefaultVersion:=xlPivotTableVersion12" j'ai beau cherché sur tout les sites je ne trouve aucune réponse pouvez-vous m'aider?

Voici ma macro:

 ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
        "Tableau4[#Tout]", Version:=xlPivotTableVersion12).CreatePivotTable _
        TableDestination:="avril 2015!R29C6", TableName:= _
        "Tableau croisé dynamique3", DefaultVersion:=xlPivotTableVersion12    Sheets("avril 2015").Select
    Cells(29, 6).Select
    ActiveWorkbook.ShowPivotTableFieldList = True
    With ActiveSheet.PivotTables("Tableau croisé dynamique3").PivotFields("Motif")
        .Orientation = xlRowField
        .Position = 1
    End With
    ActiveSheet.PivotTables("Tableau croisé dynamique3").AddDataField ActiveSheet. _
        PivotTables("Tableau croisé dynamique3").PivotFields("Coût des pièces "), _
        "Somme de Coût des pièces ", xlSum
    ActiveWorkbook.ShowPivotTableFieldList = False


EDIT: Ajout de la coloration syntaxique.

6 réponses

cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
18 mai 2015 à 17:08
Pour faire le tour de tes chartes, utilise un code comme ceci.
Change ActiveSheet pour le nom de la feuille si ce n'est pas elle qui est active.

   Dim Obj As ChartObject

For Each Obj In ActiveSheet.ChartObjects
MsgBox Obj.Name
Next

1
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
19 mai 2015 à 09:48
Bonjour,
hé bien ===>> boucle donc sur toutes les feuilles et imbrique dans cette boucle celle (qui t'a été montrée) traitant tes charts.
Les feuilles sont dans une collection (worksheets) et on boucle donc sur elles ainsi :
Dim sh As Worksheet
For Each sh In Worksheets
...
Next

1
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
14 mai 2015 à 14:41
Bonjour,

Quel est le problème exactement ?
Est-ce que ton fichier doit être utilisé sur plusieurs versions Office ?
Y a-t-il un message d'erreur ? si oui lequel ?
0
Bonjour,

Merci de votre réponses j'ai totalement changé de macro.
Cependant il me manque quelque détail que je n'arrive pas à modifier

1- J'aimerais agrandir et déplacer mon graphique
2- J'aimerais ajouter une étiquette de données
3- J'aimerais ajouter un titre
4- il m'arrive d'avoir des critères à 0% j'aimerais le supprimer.

1-La macro ne fonctionne pas est elle n'agit que sur un graphique et non tout les graphiques comme je l'aimerais.

Macro:

ActiveSheet.ChartObjects("Graphique 12").Activate
    ActiveChart.PlotArea.Select
    Selection.Left = 16.782
    Selection.Top = 11
    ActiveSheet.ChartObjects("Graphique 12").Activate
    ActiveChart.ChartArea.Select
    ActiveSheet.ChartObjects("Graphique 12").Activate


2-La macro fonction mais uniquement sur le graphique selectionner existe t'il une formule pour prendre en compte tout les graphiques?

Macro:

ActiveSheet.ChartObjects("Graphique 12").Activate
    ActiveChart.SeriesCollection(1).Select
    ActiveSheet.ChartObjects("Graphique 12").Activate
    ActiveChart.SeriesCollection(1).ApplyDataLabels


3- Toujours le même problème avec un seul graphique et quand le macro fonctionne le titre ce superpose au graphique et ne se met pas au dessus.

Macro:

ActiveSheet.ChartObjects("Graphique 11").Activate
    ActiveChart.SetElement (msoElementChartTitleAboveChart)
    ActiveSheet.ChartObjects("Graphique 11").Activate
    ActiveChart.ChartTitle.Text = _
        "Pièces non prévues dans le recore" & Chr(13) & "Janvier 2015" & Chr(13) & "Total XXXXXX€"
    ActiveSheet.ChartObjects("Graphique 11").Activate
    ActiveChart.ChartArea.Select
    ActiveSheet.ChartObjects("Graphique 11").Activate


4- Je n'est pas de macro en existe t'il une?

Merci beaucoup pour votre aide comme vous pouvez voir ce sont des détail mais qui on leur importance pour ma missions.

Encore merci.
0
Whismeril Messages postés 19028 Date d'inscription mardi 11 mars 2003 Statut Non membre Dernière intervention 24 avril 2024 656
18 mai 2015 à 11:02
Bonjour, merci d'utiliserla coloration syntaxique. C'est la deuxième fois que je corrige ton message.
0
D'accord je ne s'avais pas comment ça fonctionner.
Merci.
0
Ayuritenshi Messages postés 278 Date d'inscription vendredi 15 mai 2015 Statut Membre Dernière intervention 5 mai 2016
19 mai 2015 à 08:26
pourquoi tu ne passe pas par l'enregistrement d'une macro ?
tu lance l'enregistrement et tu fais tous a la mains une fois tu arrête l'enregistrement et pouf ta macro est crée ^^
0
kiki > Ayuritenshi Messages postés 278 Date d'inscription vendredi 15 mai 2015 Statut Membre Dernière intervention 5 mai 2016
19 mai 2015 à 09:02
Oui je sais c'est ce que j'ai utilisé pour toutes mes macros cependant quand je fait ma macro pour déplacer et agrandir rien ne se passe, mais la macro ne me dit pas qu'il y a une erreur. Pour le titre et l'étiquette de données j'ai réussi à faire la macro le seul Bémol c'est que je dois cliquer sur le graphique avant pour qu'elle fonctionne et donc cela fait une étape en plus.
0
Ayuritenshi Messages postés 278 Date d'inscription vendredi 15 mai 2015 Statut Membre Dernière intervention 5 mai 2016
19 mai 2015 à 10:43
aprè sje suis pas vraiment celle qui va t'aider j'y connais peut etre moins que toi je te proposer une solution car j'ai fait comme ca moi pour certaines de mes macro :/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Merci mais j'aimerais que la macro se face sur toutes les feuilles et pas juste une :/
0
Sa y est ma macro est terminer et fonctionne bien.

Merci beaucoup à vous tous pour votre aide.

Je reviendrais ici encore merci.

Bonne fin de journée à vous.
0
Rejoignez-nous