VBA - excel - Tableau croisé dynamique - grouper... - VB/VBA/VBS - Programmation
Marsh Posté le 09-09-2009 à 11:54:57
Tu peux ajouter une colonne avec une formule du genre
Code :
|
Puis mettre un filtre automatique mais je suis pas sur que ce soit ce que tu cherches.
En fait le mieux ça serait que tu postes un exemple de tes sources et du résultat attendu afin de me faire une idée précise de ce que tu veux.
Marsh Posté le 09-09-2009 à 13:19:10
Je vais essayer d'être plus clair sur le problème (et surtout, l'environnement).
en gros, il y a un fichier excel qui est rempli par plein de personnes (et qui dit plein de personnes dit : les données ne sont pas formattées de la même façon en fonction de qui remplit ce fichier).
Donc, j'ai un fichier excel (dans lequel est la macro) qui extrait le fichier précédent, et remplit un onglet avec ces données. Après, ma macro fait un traitement (pour rendre les données cohérentes entre autre), et cet onglet est mis à jour.
Maintenant, dans les onglets suivant de mon fichier excel, j'ai le tableau dynamique (j'en ai plusieurs en fait, mais on s'en fout, ça revient au même). Donc, les données de ce tableau sont extraites automatiquement de l'onglet principal.
Ce tableau dynamique représente le retard de 3 entités. (42 étant le retard acceptable). Donc, je veux pour chaque entités voir le nombre de fois qu'ils ont été en retard/à l'heure/en avance.
Donc, je pourrais effectivement faire une macro à l'arrache (je suis plus à ça près ) pour comptabiliser les retards de chaque entité. Mais s'il y a des évolutions, il faudra aussi modifier cette macro (alors que là, tout est paramétrable). Et surtout, je pense qu'il y a moyen de faire ce que je veux avec un tableau dynamique ... mais je sais pas comment ...
C'est plus clair ? Si t'as besoin de plus d'info ...
Marsh Posté le 09-09-2009 à 14:03:34
C'est jamais évident de se représenter ce que son interlocuteur a en tête sur un forum mais voilà ce que j'ai compris.
Tu as un tableau avec 3 entités et les retards associés du type :
entité | retard
a | 25
b | 42
c | 42
a | 61
b | 23
c | 36
etc.
Et tu veux te retrouver avec un tableau du genre :
entité | <42 | 42 | >42
a 1 0 1
b 1 1 0
c 1 1 0
Pour ça il faut te créer une colonne catégorie dans le premier tableau qui prendra comme valeur <42, 42 ou >42 selon la valeur de la colonne retard.
Ensuite créer un TCD sur l'ensemble de tes données en mettant tes entités en ligne et la catégorie en colonne et le "nb catégories" en données.
Je te mets le fichier que j'ai créé selon ce que j'ai compris : http://cjoint.com/?jjn2WWTP2k
Marsh Posté le 17-09-2009 à 10:27:53
En fait, c'est exactement ce que je ne voulais pas faire (rajouter une colonne)
Disons que rajouter une colonne fait qu'on est obligé de la prendre en compte dans tous les TCD, et moi je voulais que ce soit automatique.
Donc, j'en ai eu marre, j'ai refait mon tableau croisé dynamique à la main (comprendre : un gros tableau avec toutes les données qui m'intéressent, et je générerai les graphes).
Merci en tout cas de ta réponse.
Marsh Posté le 09-09-2009 à 11:31:45
Bonjour.
Je veux grouper des données dans un tableau croisé dynamique. En gros, dans ce tableau, j'ai le nombre d'occurrences d'une valeur, et je voudrais faire trois groupes : < 42, = 42, > 42.
Sauf que je ne veux pas faire le groupement à la main : je voudrais que ce soit automatique.
Déjà, j'ai cherché avec google, et je n'ai pas trouvé comment grouper manuellement (je voulais voir si c'était possible manuellement avant de le faire automatiquement ...). Enfin si, mais ça ne donne pas du tout le résultat escompté ...
Any idea?
---------------
L'amour c'est comme un bilboquet, ça fini toujours par rentrer - La théorie des Ballz