Creation d'un pivot

Bonjour,

Pouvez-vous m'aider car j'ai crée une macro et mon pivot ne fonctionne pas.

Je vous envoi mon fichier et dedans il y a mes demandes.

Pouvez-vous jeter un coup d'oeil et voir où est mon soucis?

Merci d'avance pour votre aide

Bonjour

J'ai regardé ton pb et démarré la création du TCD mais je voudrais avoir des infos plus précises car la partie macro enregistrée est inexplorable quand on ne connait pas la finalité du tableau:

  • des noms courts pour les champs de la base de départ
  • une maquette du TCD final

Dans l'attente

FINDRH

Bonjour,

Merci pour ton retour.

Au fait sur mon tableau initial (comme sur la pièce jointe) je devrai obtenir après la macro un tableau plus compensé avec uniquement comme résultats les colonnes en mauves (fichier Brut)

Une fois la macro lancée il me restera les colonnes en mauves, il faudrait également récuperer la variable dans mon pivot qui se crée avec la macro.. ( Besoin de l'info dans le pivot: colonne NART - DESCRIPTION - 1CW - 2CW - 3CW - 4 CW - 5 CW et le split entre DISPLAY - DP LIGHT - MSF (voir ci-dessous *))

Mon soucis est que initiallement j'ai les titres des colonnes: 1 CW 2 CW 3 CW 4 CW 5 CW (qui seront variables ) c'est parce que je dois faire une mise à jours de mon planning toutes les semaines et les 1 CW 2 CW 3 CW 4 CW 5 CW deviendront 6 CW 7 CW 8 CW 9 CW 10 CW et ainsi de suite jusqu'a 52 CW et mon soucis c'est que mon pivot une fois je change de semaine il me met en erreur.

Par contre pourrais-je te demander une petite choses si c'est possible bien évidement?

- dans l'export on pourrait rajouter dans la macro la suppression automatiques des "zéro quantités" (Total FC visible)?

* - pour la colonne montage j'aimerai bien que quand il trouve DP/DSP dans les libéllés (colonne E)=> il mettent DISPLAY et s'il y a pas DP ou DSP dans le libéllé => DP LIGHT et tout ce qui est en PACK (colonne B) le mettre sous MSF.

Voici le fichier Brute et aussi un exemple de résultat.

J'espère été plus clair

Bonjour

ci joint une proposition de construction de la base de données pour batir ensuite les TCD.

une première étape;

  • deux fichiers Extractions et résultat
  • ouvrir résultat, onglet lancer et cliquer sur le bouton
  • ouvrir extraction ( ou ton fichier récupéré avec l'onglet export)
  • le résultat est une base de données qui inclura toujours toutes les semaines et toutes les colonnes xxOP

Cela te convient il ?

Cordialement

FINDRH

4extraction.xlsx (184.46 Ko)
3resultat.xlsm (188.50 Ko)

re bonsoir

J'ai essayé d’avancer sur tes TCD

Petit pb il n'y a pas de colonne Montage dans ta base ou le nom d'une colonne existante a t il été changé ?

Cordialement

FINDRH

Bonjour,

Essaie ainsi :

Option Explicit
' Keyboard Shortcut: Ctrl+p
Public Sub Pivot_Planning2()
Dim wb As Workbook
Dim wsData As Worksheet, wsPT As Worksheet
Dim rngData As Range
Dim PTCache As PivotCache
Dim PT As PivotTable
Dim pf As PivotField

    Set wb = ActiveWorkbook
    Set wsData = wb.Worksheets("Export")
    Set rngData = wsData.Cells(1).CurrentRegion
    Set wsPT = wb.Worksheets("PIVOT")

    On Error Resume Next
    wsPT.PivotTables(1).TableRange2.Clear
    On Error GoTo 0

    Set PTCache = wb.PivotCaches.Create(xlDatabase, rngData)
    Set PT = PTCache.CreatePivotTable(wsPT.Cells(3, 1), "PT_1")

    With PT
        .ManualUpdate = True
        .AddFields RowFields:=Array("NART", "NART Description (FR) / COMPO Name")
        With .PivotFields("1 CW")
            .Orientation = xlDataField
            .Position = 1
            .Function = xlSum
            .Caption = ChrW(931) & " 1 CW"
        End With
        With .PivotFields("2 CW")
            .Orientation = xlDataField
            .Position = 2
            .Function = xlSum
            .Caption = ChrW(931) & " 2 CW"
        End With
        With .PivotFields("3 CW")
            .Orientation = xlDataField
            .Position = 3
            .Function = xlSum
            .Caption = ChrW(931) & " 3 CW"
        End With
        With .PivotFields("4 CW")
            .Orientation = xlDataField
            .Position = 4
            .Function = xlSum
            .Caption = ChrW(931) & " 4 CW"
        End With
        With .PivotFields("5 CW")
            .Orientation = xlDataField
            .Position = 5
            .Function = xlSum
            .Caption = ChrW(931) & " 5 CW"
        End With
        For Each pf In .RowFields
            pf.Subtotals(1) = True
            pf.Subtotals(1) = False
        Next pf
        .InGridDropZones = True
        .RowAxisLayout xlTabularRow
        .ManualUpdate = False
    End With

End Sub

Bonjour Jean Eric

Merci pour ce code qui me sera bien utile pour avancer.... et pas que dans ce cas. ta syntaxe simple contraste avec ce qu'on récupère en enregistrant et adaptant .....

Par contre il me faut d'abord consolider la base avec les bonnes rubriques, il y a des discordances entre la base et les résultats attendus .. colonnes absentes....

Question subsidiaire... .. si j'ai bien compris les colonnes en fin d'année iront de 1 CW à 52 CW, mais le TCD ne portera que sur 5 semaines consécutives.

Cette syntaxe fonctionnerait elle :

vcol1="2 CW" ==> vcol5 = "6 CW" pour déterminer les colonnes à suivre

==>With .PivotFields(vcol1)

Merci d'avance

Cordialement

FINDRH

Bonjour,

Si je comprends tons souci, il faudrait donc faire une boucle sur les en-têtes de colonnes comportant CW ?

Cdlt.

3ème essai d'envoi.... je me fais systématiquement jeter....

Oui j'avais prévu de faire une boucle pour créer le nom des colonnes à reprendre dans le TCD, le N° de départ étant saisi vis un formulaire ==> par ex vcol2

Dans ce cas puis je remplacer dans ma ligne de code :

With .PivotFields("2 CW")

par

With .PivotFields(vcol2)

Merci,pour ton retour

Cordialement

FINDRH

Re,

Dans l'idée, oui !...

Cdlt.

Je teste dans la journée et te tiens informé si pb

Merci pour ton aide

FINDRH

Bonjour

Ci joint une proposition avec 2 TCD sachant:

  • pour la colonne Montage il faut une liste exhaustive des intitulés pouvant exister afin de faire une table de correspondance
  • le TCD MSF nécessite des compléments d'info, a priori je n'ai pas trouvé de notion de MSF dans la base
  • Sur l'onglet Table figure déjà une de ces correspondance entre une composition au libellé long et un libellé plus court pour réduire la taille écran du TCD
  • boutons sur l'onglet Lancer, à tester avec une extraction réelle et complète

Merci à Jean Eric pour sa proc générique de création de TCD, quelles facilités de lecture, de compréhension et d’adaptation !

J''ai pu paramétrer la saisie des champs valeurs à partir des N° de colonnes à suivre avec une contrôle d'existence dans l’entête de l'onglet base Brute

A tester

Cordialement

FINDRH

1extraction.xlsx (184.46 Ko)
3resultat.xlsm (273.20 Ko)

Bonjour,

Merci pour ton retour.

J'ai mis quelques annotations dsn le fichier ci-joint dans l'onget TCS montage.

Est-ce que tu peux regader ceci.

Et j'ai une autre question est ce que c'est possible d'ouvrir le nombre de colonne (semaines) car aujourd'hui mon template est de 5 semaines mais qui sait que demain j'aurai peut-etre plus ou il y a dans la macro un nombre limité?

Merci d'avance pour ton support en tout cas

3rsultat.xlsm (602.92 Ko)

Re

Pas de pb pour les colonnes po1 et po2 qt

Pour plus de colonnes plutôt délicat, à voir

Je te tiens au courant

FINDRH

Version avec intégration po 1 et po 2

Bonne soirée

FINDRH

1resultat.xlsm (273.20 Ko)

Bonjour,

Voir procédure TcdPT modifiée.

Fichier de 14:53.

Cdlt.

3resultat.xlsm (264.21 Ko)

Bonjour FINDRH & Jean Eric,

MErci pour votre aide mais j'ai télécharger les fichiers et je ne vois pas mon pivot qui se met à jour qaund je lance la macro.

donc je n'ai pas pu voir le résultat.

Au faite j'ai déjà un template déjà tout fait pour 3 semaines et qu'il fonctionne est-ce pas plus facile de modifier celui-ci en mettant 5 semaines au lieu de trois? C'est une bête question

merci d'avance

Bonjour

1) Les boutons macro fonctionnent et dans mon exemple le TCD Montage se met à,jour....

2) Tu ne peux pas voir de changement car le TCD se fait sur une même base avec le même nb de colonnes si tu travailles sur le fichier extraction que tu nous a joint

3) Lorsque tu ckiques sur la macro Récup, ouvre une autre extraction et relance les macros de TCD, même celles dont tu n'as pas besoin pour voir si ça marche.

4) Ci joint un classeur Résultat avec un troisième bouton pour le TCD comptage ou tu dois choisir les N° de début et de fin (nr de semaine) qui correspondent aux colonnes à traiter

Cordialement

FINDRH

3resultat.xlsm (269.10 Ko)

Bonjour,

Je t'avoue que je ne comprend pas bien le principe de la macro . Je suis Lost

Est-ce que ce ne serai pas plus simple de prendre mon ancien template qui est avec trois semaines et le modifier ou prendre comme exemple pour celui en 5 semaines?

Car au faites, j'aimerai avoir comme résultat le pivot (en pièces jointe).

Si possible d'avoir un template comme celui-ci en pièce jointe également qui le faciliterai la manipulation.

Ici c'est juste un copier/coller de mon export dans le tempalte puis je lance ma macro et le pivot, ... se créé. Mais pour le nouveaux pas oublier de ma rajouter les colonne PO1 PO1 quantity, ....

Tu peux te baser sur la macro ( à l'époque je pense que c'était Jean Eric qui me l'avait fait)

Peux-tu checker stp et me dire ce qui est faisable.

merci d'avance pour ton temps

resultat pivot

Bonjour

Toute la démarche réalisée repose sur ton "template" et tes attentes.

Le modèle d’extraction est pris en compte mais comme il comporte des champs banalisés tu ne rsuqe pas de voir de changement

Sur la feuille lancer je rappelle le déroulement des étapes.

Je ne vois pas ce que tu attends de plus......

Cordialement

FINDRH

3resultatbis.xlsm (462.32 Ko)
Rechercher des sujets similaires à "creation pivot"