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 :

Comment réaliser un Tableau croisé dynamique avec des colonnes prédéfinies ? [XL-2013]


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
    Étudiant
    Inscrit en
    Août 2017
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Août 2017
    Messages : 20
    Par défaut Comment réaliser un Tableau croisé dynamique avec des colonnes prédéfinies ?
    Bonjour à tous,

    Je voudrais savoir s'il était possible de réaliser un tableau croisé dynamique avec des colonnes prédéfinies. Et si oui, comment ?

    Origine du problème :
    Je travaille sur une plateforme de gestion de documents, et j'aimerai faire un suivi de ces documents à la semaine (en utilisant une macro qui génère les tableaux).
    La base de données excel avec laquelle je veux réalisé le suivi contient la liste de tous les documents ajoutés et modifié depuis les 7 derniers jours.
    Je souhaite obtenir un tableau/TCD du nombre de documents en fonction de leur "Type"{Plan,Dessin,Note,Rapport,...} (en ligne) et de leur "Etape"{Prod, Analyse, Refuse, Valide} (en colonne).
    Dans ma base de données, j'ai donc la colonne "Etape" qui contient une des 4 étapes qu'un document peut avoir mais il se peut qu'il n'y ait aucun document qui se retrouve en "Valide" pendant une certaine semaine par exemple. Du coup, l’étape du document "Valide" n'apparait pas dans mon TCD puisqu'il n'y ait pas dans ma base de données cette semaine la. Mais je veux quand même avoir cette colonne dans mon tableau (qui afficherait donc 0 pour chaque type de documents).

    J'espère avoir été clair et compréhensible.

    Avez vous une solution à mon problème ? Ou suis-je obligé de réaliser un tableau à double entrée classique "à la main" avec des formules pour chaque case ?

    Merci de vos réponses.
    Bakamii.

  2. #2

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2017
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Août 2017
    Messages : 20
    Par défaut
    Merci dysorthographie pour ta réponse, cette classe simplifiera la création de mes TCD à l'avenir.

    Mais elle ne réponds pas à mon problème. Je cherche à savoir comment ajouter l'etape "Valide" aux colonnes de mon TCD (que j'ai déja créer),
    s'il existe une fonctionnalité qui permet de faire ça, s'il faut que je modifie ma source données (mais je vois pas trop comment) ou tout autres indices.

    Bakamii.

  4. #4
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 568
    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 568
    Par défaut
    Bonjour

    Il faut sélectionner le champ étape et dans les paramètres cocher l'affichage des éléments sans données.

    Si une valeur a existé, le cache du TCD peut la garder et donc l'afficher.

    Néanmoins il se renouvelle et si une valeur n'apparait pas pendant longtemps, elle disparaitra du cache.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2017
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Août 2017
    Messages : 20
    Par défaut
    Bonjour à toi,

    Citation Envoyé par 78chris Voir le message
    Il faut sélectionner le champ étape et dans les paramètres cocher l'affichage des éléments sans données.
    Malheureusement, je l'ai déjà coché et ça n'a pas résolu mon problème. Il manque toujours les "étapes" qui n'apparaissent pas dans la base (car aucun document ne possède cette étape pour une semaine donnée).

    Citation Envoyé par 78chris Voir le message
    Si une valeur a existé, le cache du TCD peut la garder et donc l'afficher.
    Néanmoins il se renouvelle et si une valeur n'apparait pas pendant longtemps, elle disparaitra du cache.
    Les valeurs n'existent pas dans le fichier excel (pour chaque semaine, un fichier excel). Et le TCD ne va pas les inventer...

    Ce qui m'a amené à penser à une solution qui consisterait à ajouter des documents (une ligne dans mes données sources) du nombre de mes étapes (pour chaque étape, un document qui est à cette étape) qui sert de "modèle" pour le TCD. Il utilisera ces lignes pour créer toutes les colonnes "étapes" existantes. Je peux aussi mettre ces documents dans un "Type" nommé "modele" (ou quelque chose comme ça) que je filtrerai sur mon TCD pour qu'il ne s'affiche pas. (A voir si j'y arrive dans la pratique )

    Pour moi, ça reste du bricolage donc si vous avez une autre solution ou une autre approche, n'hésitez pas à me les partager.

    Bakamii.

  6. #6
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 568
    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 568
    Par défaut
    Bonjour

    Si je comprends bien tu refais un TCD à chaque fois ?

    Ce n'est pas le bonne méthode : le TCD doit être fait une fois pour toutes et si la source évolue on l'actualise.

    Dans la majorité des cas on utilise les TCD pour du reporting où il y a plusieurs TCD et diverses analyse avec des indicateurs : tout refaire n'est pas logique.

    Il faut avoir une approche base de données : les données évoluent mais le paramétrage des restitutions est stable.

    Si les sources sont des extractions régulières le mieux est soit de lier le TCD à un fichier externe dont le contenu évolue au fil du temps, soit de reparamétrer la source du cache des TCD par VBA mais pas de tout rebâtir.

    Sinon le seul moyen d'ajouter une colonne correspondant à des valeurs manquantes est d'ajouter à la sources quelques lignes sans données numériques mais avec ces valeurs, soit dans la source elle-même, soit en construisant une requête union entre la source et ces lignes de référence et en basant le cache des TCD sur cette requête.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/11/2010, 17h42
  2. Tableau croisé dynamique : forme des graphiques
    Par onejock dans le forum Excel
    Réponses: 6
    Dernier message: 12/08/2008, 14h44
  3. Tableau croisé dynamique avec critère
    Par gege87270 dans le forum Macros et VBA Excel
    Réponses: 35
    Dernier message: 12/06/2008, 14h22
  4. Réponses: 3
    Dernier message: 22/11/2007, 13h44
  5. Réponses: 6
    Dernier message: 20/02/2007, 10h42

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