IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Créer un TCD avec VBA excel 2016


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    etudiant
    Inscrit en
    Mai 2019
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 28
    Par défaut Créer un TCD avec VBA excel 2016
    Bonjour,

    J'ai essayé à plusieurs reprise de créer un TCD depuis mais sans succès pourriez vous m'aidez svp.
    J'aimerai pouvoir utiliser tout le tableau fichier texte que j'ai converti en excel, pouvoir le passer en TCD par VBA en appuyant sur un bouton depuis une boite de dialogue.

    et voici le code que j'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    Private Sub TCD_Click()
     
    '
    ' CREERTCD Macro
    '
    ' Sélection des données
        Sheets("21-05-2019").Select
        Columns("A:AE").Select
     
    ' Création du TCD
        ActiveWorkbook.Worksheets("21-05-2019").PivotTables("TCD").PivotCache.CreatePivotTable TableDestination:="TCD", TableName:="TCD", DefaultVersion:=xlPivotTableVersion12
     
    ' Actualiser
        Range("C9").Select
        ActiveSheet.PivotTables("TCD").PivotCache.Refresh
     
     
     
    End Sub
    Je vous remercie d'avance.
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 569
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 569
    Par défaut
    Bonjour

    S'agit-il d'une exercice (comme le laisse entendre ce fil https://www.developpez.net/forums/d1.../#post10954190
    ou bien du traitement d'un cas réel ?

    Si c'est un cas réel quelques conseils :
    de façon générale on ne crée pas de TCD par VBA
    pas plus que les graphiques
    en particulier sur des sources appelées à changer

    On crée manuellement la structure du ou des TCD, on y associe les GCD voulus

    On peut ensuite changer le contenu de la source par VBA ou éventuellement redéfinir la source des TCD.

    Ton fichier txt a deux ligne d'en-tête pour créer le titre : cela devrait être gérer en amont de son utilisation par un TCD ou un graphique

    Si l'objectif est de changer chaque jour de source, puisque tu as 2016, le mieux serait de modéliser le prétraitement du fichier dans PowerQuery.

    Il ne resterait en VBA qu'à
    • actualiser pour que TCD et graphiques soient à jour
    • enchaîner tes exports de graphique jpg
      ...

  3. #3
    Membre averti
    Homme Profil pro
    etudiant
    Inscrit en
    Mai 2019
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 28
    Par défaut
    C'est pour mon projet de fin d'étude et le fait d'avoir une interface ou je clique sur des boutons est un vrai plus au niveau visuel devant le jury sachant que aucun ne maîtrise VBA, du coup je cherche à créer mon TCD en cliquant sur le bouton correspondant à cet effet. Je suis d'accord il n'y a pas grand intérêt mais ils seront plus content comme cela.

    Du coup avec vous une solution pour moi ?

    Cordialement

  4. #4
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 569
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 569
    Par défaut
    RE

    Rien n'empêche de masquer des onglets et le clic sur le bouton, actualise puis affiche l'onglet ...

    Sinon la construction d'un TCD nécessite de définir des champs
    • d'analyse en zones en filtre et/ou lignes et/ou colonne
    • de valeurs avec le choix d'une opération pour chaque statistique souhaitée

    Utilise l'enregistreur macros pour voir le principe ainsi tu verras tous les objets à manipuler...

    L'actualisation du TCD (...PivotCache.Refresh) ne sert à rien si tu le crées puisqu'il prend les données disponibles à cet instant T

Discussions similaires

  1. [XL-2016] Conversion graphique - image jpeg
    Par pacolapin dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/05/2019, 11h10
  2. Créer un mail avec VBA en y ajoutant texte personnalisé + données Excel
    Par etoiledu88 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 15/02/2018, 10h05
  3. Créer un .exe avec VBA / Excel?
    Par rbkclg dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/03/2016, 16h00
  4. Réponses: 0
    Dernier message: 28/03/2015, 13h53
  5. [XL-2010] Créer un TCD simple sur Excel VBA
    Par awa123 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/11/2014, 19h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo