|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 13 ![]() |
Bonjour à tous,
Quelqu'un connaîtrait-il la ligne de code VBA qui permet de corriger la plage de données source d'un tableau croisé dynamique ? C'est pour une macro qui corrige une table, ajoute et enlève des colonnes, à la fin il faudrait re- paramétrer la source de données du tableau croisé qui va chercher dans cette table. Merci beaucoup par avance à toutes les réponses |
|
|
00
|
|
|
#2 |
|
Membre régulier
![]() Developpeur Inscription : novembre 2011 Messages : 83 ![]() |
Salut OoooO,
Si j'ai bien compris tu souhaite simplement supprimer des lignes et des colonnes (qui restent toujours les mêmes) et ensuite reactualiser les données liées à ton TCD? |
|
|
00
|
|
|
#3 |
|
Office & Excel ![]() ![]() ![]() |
Salut.
Travaille avec un outil Tableau... Tu n'auras pas besoin de VBA.
Le TCD s'adaptera à tout ajout ou suppression de lignes ou de colonnes au tableau lors de l'actualisation du tableau (clic droit dans le tableau > Actualiser). Pour ajouter une ligne/colonne au tableau, il suffit de la coller à la suite (en bas ou à droite) de la dernière ligne/colonne.
__________________
"Plus les hommes seront éclairés, plus ils seront libres" (Voltaire) --------------- Ma nouvelle vidéo: comparer des listes via une MFC - Mes articles sur DVP Vous souhaitez rédiger pour DVP? Contactez-moi Amoureux de la langue française? Venez corriger nos ressources VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA... N'oubliez pas de VOTER (en bas à droite d'un message) --------------- |
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 13 ![]() |
Bonjour,
Oui c'est cela, nous utilisons des extractions SAP qui n'ont pas toutes l'info dont nous avons besoin. Ensuite nous créons des colonnes avec des RECHERCHEV() qui complètent l'info manquante et nous les figeons par un copier / coller spécial valeurs. Ensuite nous rendons les données lisibles à l'aide d'un tableau croisé dynamique. Nous utilisons tous les mois les mêmes fichiers, nous ne faisons qu'actualiser les données en faisant une nouvelle extraction de SAP, et ensuite nous utilisons une macro qui refait les colonnes avec les RECHERCHEV, en plus d'autres traitements. Le truc c'est qu'à la fin la plage en mémoire dans le tableau croisée est décalée, si un novice l'actualise cela perd des champs, il faut reconstruire le tableau à chaque fois. Je pensais qu'il existerait une ligne VBA permettant de corriger la plage de données du tableau croisé, mais peut-être cela n'existe pas ? Cdt |
|
|
00
|
|
|
#5 |
|
Office & Excel ![]() ![]() ![]() |
Cela est possible avec VBA.
Mais si tu procèdes comme je l'ai expliqué, tu n'auras pas besoin de VBA.
__________________
"Plus les hommes seront éclairés, plus ils seront libres" (Voltaire) --------------- Ma nouvelle vidéo: comparer des listes via une MFC - Mes articles sur DVP Vous souhaitez rédiger pour DVP? Contactez-moi Amoureux de la langue française? Venez corriger nos ressources VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA... N'oubliez pas de VOTER (en bas à droite d'un message) --------------- |
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 13 ![]() |
Bonjour,
Ben comme dit dans un premier message, il s'agit de corriger à la fin d'une macro. Pour l'instant nous corrigeons manuellement après l'exécution de la macro. Par contre ton astuce que tu m'as donnée est super, je m'en servirai dans d'autres cas. |
|
|
00
|
|
|
#7 | |
|
Office & Excel ![]() ![]() ![]() |
Citation:
Sinon, tu n'as effectivement pas d'autre choix que de "recalculer" la plage et de modifier la source du TCD, avec les risques de pertes ou de décalage de données que tu cites toi-même.
__________________
"Plus les hommes seront éclairés, plus ils seront libres" (Voltaire) --------------- Ma nouvelle vidéo: comparer des listes via une MFC - Mes articles sur DVP Vous souhaitez rédiger pour DVP? Contactez-moi Amoureux de la langue française? Venez corriger nos ressources VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA... N'oubliez pas de VOTER (en bas à droite d'un message) --------------- |
|
|
00
|
|
|
#8 |
![]() ![]() Didier GONARDFormateur Développeur Office - indépendant Inscription : février 2008 Messages : 2 353 ![]() |
Bonjour,
Ce que te dis Pierre est d'utiliser comme source un nom de plage et non pas des coordonnées absolues. A partir de là, tu peux créer une plage nommée dynamique et non statique cf image jointe (là les colonnes sont fixes), c'est ce que fais Excel de façon automatique depuis 2007 avec les tableaux intelligents. Cordialement, Ps : si le côté technique de la réponse = OK ou pas => pensez à cliquer sur les pouces et quand question résolue à la taguer résolue, et chaque action vous rapporte des points Didier
__________________
Didier Gonard Ps : Pour noter positivement ou négativement un post, vous pouvez cliquer sur les pouces en bas à droite ! Tutoriels : Voir la liste de mes tutoriels et mon site pro sur ma Page DVP N'oubliez pas de mettre : ..quand c'est le cas !
|
|
|
10
|
Copyright © 2000-2012 - www.developpez.com