Garder forme liste d'origine dans TCD
Résolu
Naririne
Messages postés
106
Date d'inscription
Statut
Membre
Dernière intervention
-
Naririne Messages postés 106 Date d'inscription Statut Membre Dernière intervention -
Naririne Messages postés 106 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaite trouver une solution au problème que je rencontre quand j'essaie de créer un TCD en reprenant des éléments à partir d'une table de données.
Dans cette dernière, par exemple, dans la colonne A, les éléments sont organisés selon des niveaux (1, 1.1, 1.2, etc.). Quand je créé un TCD, il reprend les éléments du plus petit niveau au plus grand mais pas dans l'ordre original.
Je voudrai qu'il reprenne exactement l'ordre comme dans la liste d'origine.
Ci-joint un fichier pour une meilleure visibilité.
https://www.cjoint.com/c/ECzpBfqmKYI
Merci d'avance pour votre aide.
Je souhaite trouver une solution au problème que je rencontre quand j'essaie de créer un TCD en reprenant des éléments à partir d'une table de données.
Dans cette dernière, par exemple, dans la colonne A, les éléments sont organisés selon des niveaux (1, 1.1, 1.2, etc.). Quand je créé un TCD, il reprend les éléments du plus petit niveau au plus grand mais pas dans l'ordre original.
Je voudrai qu'il reprenne exactement l'ordre comme dans la liste d'origine.
Ci-joint un fichier pour une meilleure visibilité.
https://www.cjoint.com/c/ECzpBfqmKYI
Merci d'avance pour votre aide.
A voir également:
- Conserver mise en forme tableau croisé dynamique excel
- Tableau croisé dynamique - Guide
- Mise en forme conditionnelle excel - Guide
- Mise en forme tableau word - Guide
- Trier un tableau excel - Guide
- Imprimer tableau excel sur une page - Guide
9 réponses
Bonjour à tous,
Une autre proposition plus simple dans ton cas (pas besoin de dresser une liste de tous les segments), avec un format conditionnel par MFC :
https://www.cjoint.com/c/ECAaNaKWPvV
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Une autre proposition plus simple dans ton cas (pas besoin de dresser une liste de tous les segments), avec un format conditionnel par MFC :
https://www.cjoint.com/c/ECAaNaKWPvV
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Re,
Ah ben oui, la solution plus simple n'est valable que pour ton fichier (trop...) simplifié.
Et apparemment les TCD n'acceptent pas un tri avec liste personnalisée, donc l'autre proposition ne convient pas non plus.
Une proposition par macro.
Avec 2 possibilités :
- soit sélectionner une cellule du TCD à trier et appeler la macro TriPersoTCD_CelActive
- soit utiliser le nom du TCD et créer une petite macro appelant TriPersoTCD "nom Tableau croisé dynamique" (si par exemple plusieurs TCD sur une feuille et certains devant être triés)
La macro triera les étiquettes de la 1ère colonne dans l'ordre des données sources du TCD.
https://www.cjoint.com/c/ECAv4Ib7Vll
eric
PS : théoriquement on devrait pouvoir trier sur une autre colonne que la 1ère mais pas testé.
Si tu as l'occasion de le faire merci de faire un retour.
PS2 : à posteriori on se retrouve au final avec le même TCD. A mon avis tu as encore oublié de dire qq chose. Et sûrement que ça plantera sur le besoin réel...
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Ah ben oui, la solution plus simple n'est valable que pour ton fichier (trop...) simplifié.
Et apparemment les TCD n'acceptent pas un tri avec liste personnalisée, donc l'autre proposition ne convient pas non plus.
Une proposition par macro.
Avec 2 possibilités :
- soit sélectionner une cellule du TCD à trier et appeler la macro TriPersoTCD_CelActive
- soit utiliser le nom du TCD et créer une petite macro appelant TriPersoTCD "nom Tableau croisé dynamique" (si par exemple plusieurs TCD sur une feuille et certains devant être triés)
La macro triera les étiquettes de la 1ère colonne dans l'ordre des données sources du TCD.
https://www.cjoint.com/c/ECAv4Ib7Vll
eric
PS : théoriquement on devrait pouvoir trier sur une autre colonne que la 1ère mais pas testé.
Si tu as l'occasion de le faire merci de faire un retour.
PS2 : à posteriori on se retrouve au final avec le même TCD. A mon avis tu as encore oublié de dire qq chose. Et sûrement que ça plantera sur le besoin réel...
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Bonjour,
La macro n'aimait pas ton nom de feuille avec le &, plus une autre erreur qui ne gênait pas avant.
Corrigées, et j'en ai profité pour l'améliorer.
Comme je n'aimais pas trop tes textes avec plein d'espaces comme " Europe" je t'ai mis une macro qui applique le retrait indiqué à gauche d'une plage sélectionnée. Même effet mais on a les textes corrects.
Avec le tri du TCD je récupère aussi les formats de la cellule d'origine. Alignements, couleurs et donc aussi Retrait.
Bon, dommage que je n'ai vu qu'à la fin que tes couleurs et gras étaient mis par MFC. Ca c'est un peu lourd à récupérer, pour l'instant je ne m'occupe que des formats mis manuellement.
https://www.cjoint.com/c/EDisClL8Aa2
eric
La macro n'aimait pas ton nom de feuille avec le &, plus une autre erreur qui ne gênait pas avant.
Corrigées, et j'en ai profité pour l'améliorer.
Comme je n'aimais pas trop tes textes avec plein d'espaces comme " Europe" je t'ai mis une macro qui applique le retrait indiqué à gauche d'une plage sélectionnée. Même effet mais on a les textes corrects.
Avec le tri du TCD je récupère aussi les formats de la cellule d'origine. Alignements, couleurs et donc aussi Retrait.
Bon, dommage que je n'ai vu qu'à la fin que tes couleurs et gras étaient mis par MFC. Ca c'est un peu lourd à récupérer, pour l'instant je ne m'occupe que des formats mis manuellement.
https://www.cjoint.com/c/EDisClL8Aa2
eric
Bonjour,
Il te faut créer une liste personnalisée de tri et comme l'option est cochée, cela va fonctionner.
Il te faut créer une liste personnalisée de tri et comme l'option est cochée, cela va fonctionner.
Bonsoir,
Regardes l'exemple d'Éric en colonne au lieu de lignes mais le mode opératoire est identique.
Regardes l'exemple d'Éric en colonne au lieu de lignes mais le mode opératoire est identique.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir à tous
Autre possibilité si on souhaite garder l'écriture 1.1 remettre manuellement dans le bon ordre les éléments du TCD (clic sur le triangle à droite d'étiquettes de lignes - Options de tri supplémentaires et cocher Manuel )
Cdlmnt
Autre possibilité si on souhaite garder l'écriture 1.1 remettre manuellement dans le bon ordre les éléments du TCD (clic sur le triangle à droite d'étiquettes de lignes - Options de tri supplémentaires et cocher Manuel )
Cdlmnt
Bonsoir à tous
Bravo pour la macro Eric, je plussoie !
Pour ceux qui seraient allergiques aux macros, on peut proposer un "bidouillage" avec des lignes numérotées dans le tableau de départ puis un masquage des n°s dans le TCD :
https://www.cjoint.com/?0CAxrY5FkJE
Cdlmnt
Bravo pour la macro Eric, je plussoie !
Pour ceux qui seraient allergiques aux macros, on peut proposer un "bidouillage" avec des lignes numérotées dans le tableau de départ puis un masquage des n°s dans le TCD :
https://www.cjoint.com/?0CAxrY5FkJE
Cdlmnt
Re,
C'est une bonne idée oui.
Plus largement je me posais la question de comment étaient les données sources.
Peut-être qu'en les adaptant un peu, le 2nd TCD pourrait être généré directement sur elles plutôt que de faire un TCD de TCD.
Je pense qu'une vision globale du problème pourrait ouvrir d'autres horizons.
J'imagine bien mettre un champ pour Continent, un pour Pays, Ville et Voie. Ce qui ressemblera plus à une BdD correcte pour des synthèses faciles.
eric
C'est une bonne idée oui.
Plus largement je me posais la question de comment étaient les données sources.
Peut-être qu'en les adaptant un peu, le 2nd TCD pourrait être généré directement sur elles plutôt que de faire un TCD de TCD.
Je pense qu'une vision globale du problème pourrait ouvrir d'autres horizons.
J'imagine bien mettre un champ pour Continent, un pour Pays, Ville et Voie. Ce qui ressemblera plus à une BdD correcte pour des synthèses faciles.
eric
Bonjour Naririne
Ton TCD donne des résultats faux car il ré-additionne des sommes déjà effectuées dans le tableau de base. Pour en tirer un TCD il ne faut que des données dans le tableau de base pas déjà de sommes partielles.
De plus tu as tout intérêt à réorganiser ton tableau de base avec une colonne par niveau comme le suggérait Eric
Tableau réorganisé et TCD avec somme correctes :
https://www.cjoint.com/?0DioxFeNu3s
Cdlmnt
Via
Ton TCD donne des résultats faux car il ré-additionne des sommes déjà effectuées dans le tableau de base. Pour en tirer un TCD il ne faut que des données dans le tableau de base pas déjà de sommes partielles.
De plus tu as tout intérêt à réorganiser ton tableau de base avec une colonne par niveau comme le suggérait Eric
Tableau réorganisé et TCD avec somme correctes :
https://www.cjoint.com/?0DioxFeNu3s
Cdlmnt
Via
Bonjour tout le monde,
Merci beaucoup pour vos réponses les unes aussi instructives que les autres.
Néanmoins, c'est peut-être de ma faute, je n'ai pas été bien explicite dans ma demande, elles restent limitées. Je m'explique :
@eriic
- Dans ton exemple, la démarche à faire ne concerne que 2 niveaux, quid si on en a plusieurs ?
- Et si le nom des segments changeait à chaque niveau ?
Je vous renvoie un autre fichier plus explicite.
Je vous remercie sincèrement pour votre soutien.
https://www.cjoint.com/c/ECApYOr2K6b
Merci beaucoup pour vos réponses les unes aussi instructives que les autres.
Néanmoins, c'est peut-être de ma faute, je n'ai pas été bien explicite dans ma demande, elles restent limitées. Je m'explique :
@eriic
- Dans ton exemple, la démarche à faire ne concerne que 2 niveaux, quid si on en a plusieurs ?
- Et si le nom des segments changeait à chaque niveau ?
Je vous renvoie un autre fichier plus explicite.
Je vous remercie sincèrement pour votre soutien.
https://www.cjoint.com/c/ECApYOr2K6b
Bonjour à tous.
Je m'excuse pour le retard pris pour répondre. J'ai pris du temps pour comprendre la macro et + quelques soucis :-)
Je vous remercie énormément pour toutes vos contributions.
C'est vraiment très sympa de votre part pour toute l'aide fournie.
- C'est vrai que parfois la demande peut ne pas être claire, mais étant donné que le fichier sur lequel je travaille est confidentiel, j'ai essayé de créer un exemple s'y rapprochant.
Le but à l'origine était de créer un TCD sur lequel agiront certaines manipulations : analyse de l'évolution de certains champs, création de graphiques, etc.
- @eriiic : ta macro me semble géniale mais en essayant de la comprendre et de la transposer à mon fichier d'origine, je n'y arrive pas.
- via55 : très joli le bidouillage
(On apprend beaucoup avec vous).
Si vous voulez toujours jeter un oeil au le problème, je vous joints un fichier se rapprochant à 98% de celui sur lequel je bosse. J'ai juste changé les dénominations et réduits quelques lignes (plus de mille lignes dans l'original ^^).
Mille mercis !
https://www.cjoint.com/c/EDimyCcxO0C
Je m'excuse pour le retard pris pour répondre. J'ai pris du temps pour comprendre la macro et + quelques soucis :-)
Je vous remercie énormément pour toutes vos contributions.
C'est vraiment très sympa de votre part pour toute l'aide fournie.
- C'est vrai que parfois la demande peut ne pas être claire, mais étant donné que le fichier sur lequel je travaille est confidentiel, j'ai essayé de créer un exemple s'y rapprochant.
Le but à l'origine était de créer un TCD sur lequel agiront certaines manipulations : analyse de l'évolution de certains champs, création de graphiques, etc.
- @eriiic : ta macro me semble géniale mais en essayant de la comprendre et de la transposer à mon fichier d'origine, je n'y arrive pas.
- via55 : très joli le bidouillage
(On apprend beaucoup avec vous).
Si vous voulez toujours jeter un oeil au le problème, je vous joints un fichier se rapprochant à 98% de celui sur lequel je bosse. J'ai juste changé les dénominations et réduits quelques lignes (plus de mille lignes dans l'original ^^).
Mille mercis !
https://www.cjoint.com/c/EDimyCcxO0C
Merci pour la procédure ! (si si, ça se fait !!!) ;-)
En fait avec toi, çà marche plus souvent que çà rate !
Suis bien d'accord. Encore un exemple de fonction excel explorée à fond ! Fallait la trouver !
Je te pique l'exemple eriiic -)))
Argitxu