Garder forme liste d'origine dans TCD

Résolu/Fermé
Naririne Messages postés 106 Date d'inscription vendredi 9 août 2013 Statut Membre Dernière intervention 9 février 2022 - 25 mars 2015 à 15:15
Naririne Messages postés 106 Date d'inscription vendredi 9 août 2013 Statut Membre Dernière intervention 9 février 2022 - 15 avril 2015 à 15:58
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.
A voir également:

9 réponses

eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
Modifié par eriiic le 26/03/2015 à 00:28
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
4
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
26 mars 2015 à 07:56
Salut Éric,

Merci pour la procédure ! (si si, ça se fait !!!) ;-)
En fait avec toi, çà marche plus souvent que çà rate !
0
Argitxu Messages postés 4831 Date d'inscription dimanche 22 juillet 2007 Statut Contributeur Dernière intervention 3 mars 2024 4 724 > gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020
26 mars 2015 à 11:59
Bonjour à tous :)

Suis bien d'accord. Encore un exemple de fonction excel explorée à fond ! Fallait la trouver !
Je te pique l'exemple eriiic -)))
Argitxu
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
Modifié par eriiic le 26/03/2015 à 22:32
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
3
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
8 avril 2015 à 18:15
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
2
Naririne Messages postés 106 Date d'inscription vendredi 9 août 2013 Statut Membre Dernière intervention 9 février 2022 12
15 avril 2015 à 15:58
Merci eriic
ça marche comme il faut :-)
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
25 mars 2015 à 18:41
Bonjour,

Il te faut créer une liste personnalisée de tri et comme l'option est cochée, cela va fonctionner.
1
Naririne Messages postés 106 Date d'inscription vendredi 9 août 2013 Statut Membre Dernière intervention 9 février 2022 12
25 mars 2015 à 20:27
Merci gbinforme !

Par contre, je ne comprends ce qu'il faut faire, une liste personnalisée de tri ?

Bonne soirée !
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
25 mars 2015 à 21:27
Bonsoir,

Regardes l'exemple d'Éric en colonne au lieu de lignes mais le mode opératoire est identique.
0

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

Posez votre question
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
26 mars 2015 à 00:46
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
1
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
26 mars 2015 à 23:05
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
1
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
Modifié par eriiic le 26/03/2015 à 23:29
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
0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703 > eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024
27 mars 2015 à 00:30
Re

Tout à fait d'accord avec toi il est plus logique et plus pratique d'avoir des champs différenciés
Bonne nuit !

Via
0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
8 avril 2015 à 14:13
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
1
Naririne Messages postés 106 Date d'inscription vendredi 9 août 2013 Statut Membre Dernière intervention 9 février 2022 12
8 avril 2015 à 14:36
Merci Via55.
Je n'ai pas le droit de toucher à la source du TCD.
C'est un fichier commun.
Bref, je crois que je vais laisser tomber cette idée. Elle m'a l'air plus compliquée que ce que je ne pensais.

Bonne après-midi à vous tous !

Peace !
0
Naririne Messages postés 106 Date d'inscription vendredi 9 août 2013 Statut Membre Dernière intervention 9 février 2022 12
26 mars 2015 à 15:48
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

0
Naririne Messages postés 106 Date d'inscription vendredi 9 août 2013 Statut Membre Dernière intervention 9 février 2022 12
8 avril 2015 à 12:12
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
0