Automatisation tableau croisé dynamique
Fermé
jacinthelafleur
Messages postés
88
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
7 octobre 2013
-
19 déc. 2012 à 13:56
Maxoo - 6 mars 2013 à 13:32
Maxoo - 6 mars 2013 à 13:32
A voir également:
- Automatisation tableau croisé dynamique
- Tableau croisé dynamique - Guide
- Tableau ascii - Guide
- Tableau word - Guide
- Le nom du champ de tableau croisé dynamique n'est pas valide - Forum Excel
- Tableau Croisé Dynamique ✓ - Forum Excel
9 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 714
Modifié par gbinforme le 26/12/2012 à 10:51
Modifié par gbinforme le 26/12/2012 à 10:51
bonjour,
Un petit exemple avec les menus concernés :
https://www.cjoint.com/?BLAkWQz8Kti
Si tu rajoutes des lignes ou des colonnes elles sont actualisées.
Toujours zen
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
Un petit exemple avec les menus concernés :
https://www.cjoint.com/?BLAkWQz8Kti
Si tu rajoutes des lignes ou des colonnes elles sont actualisées.
Toujours zen
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
jacinthelafleur
Messages postés
88
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
7 octobre 2013
1
27 déc. 2012 à 10:19
27 déc. 2012 à 10:19
mercii pour ta réponse mais je ne trouve pas le menu formule gestionnaire de nom ou se trouve t'il? Désolé de te poser des questions aussi basiques
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 714
27 déc. 2012 à 10:30
27 déc. 2012 à 10:30
Onglet "Formules" au centre "gestionnaire de noms" sur 2007/2010
Menu "insertion" "noms" puis "définir" sur version précédentes.
Menu "insertion" "noms" puis "définir" sur version précédentes.
jacinthelafleur
Messages postés
88
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
7 octobre 2013
1
27 déc. 2012 à 11:20
27 déc. 2012 à 11:20
merciii j'ai trouvé mais par contre la formule suivante =DECALER($A$1;;;NBVAL($A:$A);NBVAL($1:$1)) je dois la copier telle qu'elle ait ou la modifier selon le nombre de colonne et de ligne que j'ai? Car je n'arrive pas à l'adapter en fonction de ma base de données.
jacinthelafleur
Messages postés
88
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
7 octobre 2013
1
27 déc. 2012 à 11:27
27 déc. 2012 à 11:27
supposant que j'ai une base données avec 5 colonnes a,b,c,d,e et 7 lignes 1,2,3,4,5,6,7 dans lequel il ya des données différentes quelle est alors la formule correspondante à mon tableau à partir de la formule =DECALER($A$1;;;NBVAL($A:$A);NBVAL($1:$1)) ???? merci pour ta réponse
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 714
27 déc. 2012 à 18:34
27 déc. 2012 à 18:34
La formule part de A1 fixé en $A$1 (la cellule de départ) et crée un tableau :
- avec un nombre de lignes NBVAL($A:$A) soit le nombre de lignes renseignées sur la colonne A
- avec un nombre de colonnes NBVAL($1:$1) soit le nombre de colonnes renseignées de la ligne 1
Tu peux bien sûr avoir ton tableau situé ailleurs et il faut modifier en conséquence.
Attention, comme toute base de données, tu ne dois pas avoir de lignes vide en colonne A
Comme pour tout TCD, ta ligne titre doit avoir des noms de rubriques uniques et renseignées.
- avec un nombre de lignes NBVAL($A:$A) soit le nombre de lignes renseignées sur la colonne A
- avec un nombre de colonnes NBVAL($1:$1) soit le nombre de colonnes renseignées de la ligne 1
Tu peux bien sûr avoir ton tableau situé ailleurs et il faut modifier en conséquence.
Attention, comme toute base de données, tu ne dois pas avoir de lignes vide en colonne A
Comme pour tout TCD, ta ligne titre doit avoir des noms de rubriques uniques et renseignées.
jacinthelafleur
Messages postés
88
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
7 octobre 2013
1
28 déc. 2012 à 09:52
28 déc. 2012 à 09:52
je suis désespérée, ça ne marche pas!!!!
Tessel75
Messages postés
192
Date d'inscription
lundi 17 décembre 2012
Statut
Membre
Dernière intervention
19 janvier 2013
22
31 déc. 2012 à 03:54
31 déc. 2012 à 03:54
Bonjour,
Pour pouvoir te répondre il est indispensable d'avoir le tableau en main, car pour établir une macro telle que tu souhaites, il faudra poser des paramètres et indiquer où ils se trouvent et quoi en faire.
Dans la macro que tu envoies, on peut lire des lignes telles que :
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Sept YTD")
ou
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields(
"Variation sept/oct €")
et encore
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Oct YTD")
et plusieurs autres avec une écriture similaire.
Aussi tout cela devra être paramétré sous une forme ou une autre pour dire au code où aller chercher ces "données", ou qu'il change les appellations pour indiquer sur quelles séries de données travailler.
Mais dans l'état actuel des choses, avec de telles indications au milieu de ton code, il est normal que tes macros ne puissent pas tourner comme tu veux et te ramener des synthèses sur décembre ou la variation Novembre/Décembre. Elles ne figurent pas dans la transcription du code.
En attendant ton tableau via cjoint.com, bonne journée.
Pour pouvoir te répondre il est indispensable d'avoir le tableau en main, car pour établir une macro telle que tu souhaites, il faudra poser des paramètres et indiquer où ils se trouvent et quoi en faire.
Dans la macro que tu envoies, on peut lire des lignes telles que :
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Sept YTD")
ou
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields(
"Variation sept/oct €")
et encore
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Oct YTD")
et plusieurs autres avec une écriture similaire.
Aussi tout cela devra être paramétré sous une forme ou une autre pour dire au code où aller chercher ces "données", ou qu'il change les appellations pour indiquer sur quelles séries de données travailler.
Mais dans l'état actuel des choses, avec de telles indications au milieu de ton code, il est normal que tes macros ne puissent pas tourner comme tu veux et te ramener des synthèses sur décembre ou la variation Novembre/Décembre. Elles ne figurent pas dans la transcription du code.
En attendant ton tableau via cjoint.com, bonne journée.
jacinthelafleur
Messages postés
88
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
7 octobre 2013
1
1 janv. 2013 à 17:38
1 janv. 2013 à 17:38
Bonjour à vous,
je veux bien mettre les données via cjoint.com mais je voudrais savoir si l'accès à ces données est limitée et à qui? ou tout le monde à accès car se sont des données assez importante mais en même temps j'ai vraiment besoin de votre aide car et je n'y arrive vraiment pas et c'est vrai qu'avec le fichier joint se serait plus facile merci pour votre réponse. Bonne fin de journée.
je veux bien mettre les données via cjoint.com mais je voudrais savoir si l'accès à ces données est limitée et à qui? ou tout le monde à accès car se sont des données assez importante mais en même temps j'ai vraiment besoin de votre aide car et je n'y arrive vraiment pas et c'est vrai qu'avec le fichier joint se serait plus facile merci pour votre réponse. Bonne fin de journée.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Tessel75
Messages postés
192
Date d'inscription
lundi 17 décembre 2012
Statut
Membre
Dernière intervention
19 janvier 2013
22
1 janv. 2013 à 20:54
1 janv. 2013 à 20:54
Bonjour et Bonne Année,
La réponse est double. L'accès à cjoint.com est ouvert à toutes personnes en possession du N° d'enregistrement de la demande d'envoi, càd en l'occurrence les personnes qui viennent sur CCM et qui ouvrent cette demande ici présente et qui ouvriront ton envoi. Autant dire tout le monde.
Mais tu dois aussi te dire que, premièrement, nous sommes tous anonymes ici; pas plus toi que moi, ni aucun autre, ne savons qui est le correspondant ni même où il se trouve.
Deuxièmement, encore faudrait-il qu'on comprenne quelque chose à la teneur des données qui peuvent figurer dans tes tableaux en question, à moins qu'il ne s'agissent de noms de personnes identifiables, et qu'on s'y intéresse tant soit peu.
Enfin troisièmement, il est évident que l'aide que tu demandes est purement technique pour l'écriture d'un code d'automatisation: aussi les personnes prêtes à t'offrir celle-là n'ont absolument pas besoin de données vraies. Il suffit donc que tu prépares une "maquette" avec n'importe quelles données, tant pour les dénominations des produits, des devises, et je ne sais quoi, que pour les chiffres qui s'y rapportent. Toutes ces données peuvent être, sans inconvénient, complètement fantaisistes quant à ton activité réelle, et surtout peuvent n'être qu'un échantillon; la seule exigence étant qu'elles soient assez suffisantes pour résoudre convenablement la question posée.
Tout cela te laisse malgré tout une très importante marge de manoeuvre qui peut t'aider à choisir ce que tu veux faire.
Cordialement.
La réponse est double. L'accès à cjoint.com est ouvert à toutes personnes en possession du N° d'enregistrement de la demande d'envoi, càd en l'occurrence les personnes qui viennent sur CCM et qui ouvrent cette demande ici présente et qui ouvriront ton envoi. Autant dire tout le monde.
Mais tu dois aussi te dire que, premièrement, nous sommes tous anonymes ici; pas plus toi que moi, ni aucun autre, ne savons qui est le correspondant ni même où il se trouve.
Deuxièmement, encore faudrait-il qu'on comprenne quelque chose à la teneur des données qui peuvent figurer dans tes tableaux en question, à moins qu'il ne s'agissent de noms de personnes identifiables, et qu'on s'y intéresse tant soit peu.
Enfin troisièmement, il est évident que l'aide que tu demandes est purement technique pour l'écriture d'un code d'automatisation: aussi les personnes prêtes à t'offrir celle-là n'ont absolument pas besoin de données vraies. Il suffit donc que tu prépares une "maquette" avec n'importe quelles données, tant pour les dénominations des produits, des devises, et je ne sais quoi, que pour les chiffres qui s'y rapportent. Toutes ces données peuvent être, sans inconvénient, complètement fantaisistes quant à ton activité réelle, et surtout peuvent n'être qu'un échantillon; la seule exigence étant qu'elles soient assez suffisantes pour résoudre convenablement la question posée.
Tout cela te laisse malgré tout une très importante marge de manoeuvre qui peut t'aider à choisir ce que tu veux faire.
Cordialement.
jacinthelafleur
Messages postés
88
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
7 octobre 2013
1
1 janv. 2013 à 22:46
1 janv. 2013 à 22:46
re bonsoir et bonne année à vous, meilleur voeux!
J'ai essayé de créer un document avec un petit échantillon et des données voici le lien https://www.cjoint.com/?0AbwmOSGtT9 . J'aimerais créer une petite macro (une fois que mon tableau croisé dynamique avec 8 colonnes: types de produit, objet, devise, entité, septembre,variation septembre octobre, octobre, variation octobre, novembre, novembre etc est créer) me permettant d'automatiser la mise à jour de mon tableau croisé dynamique quand ma base de données est mise à jour( c'est à dire au fur à mesure que j'ai les données de décembre,janvier, février etc la petite macro que j'aurai créer me permettrait d'actualiser automatiquement mon tableau croisé dynamique tout en tenant compte des nouvelles données sur les mois à venir ( décembre, janvier, février, mars, etc) que j'aurai rajouté sur ma base de données de telles sorte qu'on actualisant mon TCD qu'en plus des données déjà existantes( variation septembre oct... etc) que j'ai les nouvelles données c'est à dire variation novembre décembre, décembre, variation décembre janvier, janvier etc...) Avez vous svp une idée de comment faire ma macro? Merci d'avance pour votre réponse.
J'ai essayé de créer un document avec un petit échantillon et des données voici le lien https://www.cjoint.com/?0AbwmOSGtT9 . J'aimerais créer une petite macro (une fois que mon tableau croisé dynamique avec 8 colonnes: types de produit, objet, devise, entité, septembre,variation septembre octobre, octobre, variation octobre, novembre, novembre etc est créer) me permettant d'automatiser la mise à jour de mon tableau croisé dynamique quand ma base de données est mise à jour( c'est à dire au fur à mesure que j'ai les données de décembre,janvier, février etc la petite macro que j'aurai créer me permettrait d'actualiser automatiquement mon tableau croisé dynamique tout en tenant compte des nouvelles données sur les mois à venir ( décembre, janvier, février, mars, etc) que j'aurai rajouté sur ma base de données de telles sorte qu'on actualisant mon TCD qu'en plus des données déjà existantes( variation septembre oct... etc) que j'ai les nouvelles données c'est à dire variation novembre décembre, décembre, variation décembre janvier, janvier etc...) Avez vous svp une idée de comment faire ma macro? Merci d'avance pour votre réponse.
Tessel75
Messages postés
192
Date d'inscription
lundi 17 décembre 2012
Statut
Membre
Dernière intervention
19 janvier 2013
22
2 janv. 2013 à 01:24
2 janv. 2013 à 01:24
Re-Bonsoir,
J'ai bien reçu le tableau. Après l'avoir examiné, je comprends que la difficulté qui se pose est que ce n'est pas la quantité des données qui augmente à l'intérieur d'un cadre fixe, ce à quoi répondaient tes précédents interlocuteurs, mais bien leur teneur ou leur nature, càd les items eux-même, les classes des objets à prendre en compte dans le TCD. En fait, ton tableau est déjà un tableau croisé; c'est ce qui entraine la difficulté de son traitement.
Avec ces hypothèses, j'avoue mon incompétence quant à l'élaboration d'une macro établissant des TCD variables selon les mois de l'année. D'autres sont bien plus savant.
Mais il faut savoir déjouer les pièges.
Le plus simple serait que tu construises un tableau de relevés des données sur 14 ou 15 mois qui se remplirait au fur et à mesure. Au début, les 10/12 èmes des lignes et colonnes seraient vides, mais ton tableau serait fixe pour le type des données de la base de calcul.
Une autre solution serait que tu puisse faire une extraction des données mensuelles, que tu puisses les intégrer dans un tableau intermédiaire construit de telle sorte que données d'un mois et les variations d'un mois à l'autre ne soient pas considérées comme celles de catégories supplémentaires comme de simples données, càd que tu aurais par exemple un champs, ou une série de champs "mois" et "variations" dont les contenus seraient les mois et période bi-mensuelles.
Ou bien encore, il parait nécessaire de reprendre complètement la construction de ton tableau initial pour qu'il permette la construction automatique d'un TCD. Dans son état actuel, je ne saurais pas le faire.
Bonne journée tout de même.
J'ai bien reçu le tableau. Après l'avoir examiné, je comprends que la difficulté qui se pose est que ce n'est pas la quantité des données qui augmente à l'intérieur d'un cadre fixe, ce à quoi répondaient tes précédents interlocuteurs, mais bien leur teneur ou leur nature, càd les items eux-même, les classes des objets à prendre en compte dans le TCD. En fait, ton tableau est déjà un tableau croisé; c'est ce qui entraine la difficulté de son traitement.
Avec ces hypothèses, j'avoue mon incompétence quant à l'élaboration d'une macro établissant des TCD variables selon les mois de l'année. D'autres sont bien plus savant.
Mais il faut savoir déjouer les pièges.
Le plus simple serait que tu construises un tableau de relevés des données sur 14 ou 15 mois qui se remplirait au fur et à mesure. Au début, les 10/12 èmes des lignes et colonnes seraient vides, mais ton tableau serait fixe pour le type des données de la base de calcul.
Une autre solution serait que tu puisse faire une extraction des données mensuelles, que tu puisses les intégrer dans un tableau intermédiaire construit de telle sorte que données d'un mois et les variations d'un mois à l'autre ne soient pas considérées comme celles de catégories supplémentaires comme de simples données, càd que tu aurais par exemple un champs, ou une série de champs "mois" et "variations" dont les contenus seraient les mois et période bi-mensuelles.
Ou bien encore, il parait nécessaire de reprendre complètement la construction de ton tableau initial pour qu'il permette la construction automatique d'un TCD. Dans son état actuel, je ne saurais pas le faire.
Bonne journée tout de même.
jacinthelafleur
Messages postés
88
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
7 octobre 2013
1
2 janv. 2013 à 16:07
2 janv. 2013 à 16:07
merci d'avoir pris le temps de me répondre.
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 714
19 déc. 2012 à 22:22
19 déc. 2012 à 22:22
bonjour,
J'ai bien lu ton pavé, "saisi au km", mais je n'ai pas retenu grand chose et pour relire ce n'est pas facile !
Si ta base est bien conçue, ton tableau dynamique se met à jour avec une actualisation (éventuellement automatique par macro), alors pourquoi vouloir compliquer ?
J'ai bien lu ton pavé, "saisi au km", mais je n'ai pas retenu grand chose et pour relire ce n'est pas facile !
Si ta base est bien conçue, ton tableau dynamique se met à jour avec une actualisation (éventuellement automatique par macro), alors pourquoi vouloir compliquer ?
jacinthelafleur
Messages postés
88
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
7 octobre 2013
1
20 déc. 2012 à 10:48
20 déc. 2012 à 10:48
ouiiii mais lorsque j'actualise ma base de données avec les données de decembre, et je fais tournée macro, le TCD qui se crée ne tient pas compte des nouvelles données de decembre alors que je voudrais une macro qui me permette de créer un TCD automatiquement tout en tenant compte de mes données nouvelles
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 714
20 déc. 2012 à 18:01
20 déc. 2012 à 18:01
Tu n'as pas besoin d'une macro pour qu'il tienne compte de tes nouvelles données, il suffit de créer ton TCD avec une plage nommée dynamique :
puis créer ton TCD avec la plage Tablo : si tu rajoutes des lignes ou des colonnes elles seront actualisées.
nommer Tablo (par exemple)
=DECALER($A$1;;;NBVAL($A:$A);NBVAL($1:$1))
puis créer ton TCD avec la plage Tablo : si tu rajoutes des lignes ou des colonnes elles seront actualisées.
jacinthelafleur
Messages postés
88
Date d'inscription
mercredi 19 décembre 2012
Statut
Membre
Dernière intervention
7 octobre 2013
1
26 déc. 2012 à 10:06
26 déc. 2012 à 10:06
je ne comprend pas trop désolé je suis débutante!!!! et j'ai vraiment besoin d'aide. décris moi pas à pas la procédure que ce que je dois suivre. merci d'avance