Problème de formules avec Pivot Table

  • Initiateur de la discussion Thibaut
  • Date de début
T

Thibaut

Guest
Bonjour à tous,

Explication: J'ai un fichier composé de plusieurs feuilles. Sur la plupart viennent se greffer des Pivot Table dont les données viennent d'access.

La dernière feuilles est en gros un résumé avec des formules additionnant plusieurs cellules des différents Pivot Table.

Le problème: Lorsque je fais un refresh des données des pivots et qu'une ligne/colonne s'ajoute, la formule dans le tableau récapitulatif ne s'adapte pas automatiquement et les résultats sont faussés.

Question: Comment puis-je faire pour que les formules du tableau récapitulatif s'adaptent automatiquement si la cellule référencée change dans un pivot?

D'avance un grand merci. Bonne journée à vous
 

Celeda

XLDnaute Barbatruc
Bonjour,

Pas de soluce appropriée à te donner mais un échange de pensées et d'actions :

J'ai rencontré souvent ce problème et en dépit de tout ce que j'ai essayé,la formule getdatapivottable, ou les recherches v/et/ou index,je me suis repliée sur un dernier pivot table qui rassemble toutes ces données
mises à la mimine dans un tableau classique; et ensuite bien heureuse d'avoir
trouvé une macro (récupérable dans le wiki de michelxld :
https://www.excel-downloads.com/threads/ref-wiki-page-9-de-michelxld.92377/
de John Lacher) qui update le pivot table en même temps qu'elle
crée un nouveau tableau classique qui se met à jour selon les ajouts de cette mini-base de données.

Je sais cela fait un peu long comme procédure, mais je ne possède pas vba et il faudrait, pensa-t-elle sincèrement et fiévreusement la celeda,pouvoir récupérer dans un tableau fait par vba avec la fonction tablo,tous les totaux qui nous interessent et créer une nouvelle feuille récapitulative.

Pour cela, il faut définir à l'avance quels sortes de totaux aller récupérer dans chaque pivot, ce qui veut dire avoir une macro bien spécifique,bien propre à l'ensemble des pivots donc par exemple dans mon cas, ce qui irait pour un classeur X devrait être adapter au classeur Y.

Je crois dans les Tableaux VBA!!!!!!!!Et si je devais savoir uniiiiiiiiiiquement une chose en VBA c'est bien cela!!!

Sorry de ne pouvoir t'aider plus
:(

Celeda
 

Celeda

XLDnaute Barbatruc
Bonjour,

Pas de soluce appropriée à te donner mais un échange de pensées et d'actions :

J'ai rencontré souvent ce problème et en dépit de tout ce que j'ai essayé,la formule getdatapivottable, ou les recherches v/et/ou index,je me suis repliée sur un dernier pivot table qui rassemble toutes ces données
mises à la mimine dans un tableau classique; et ensuite bien heureuse d'avoir
trouvé une macro (récupérable dans le wiki de michelxld :
https://www.excel-downloads.com/threads/ref-wiki-page-9-de-michelxld.92377/
de John Lacher) qui update le pivot table en même temps qu'elle
crée un nouveau tableau classique qui se met à jour selon les ajouts de cette mini-base de données.

Je sais cela fait un peu long comme procédure, mais je ne possède pas vba et il faudrait, pensa-t-elle sincèrement et fiévreusement la celeda,pouvoir récupérer dans un tableau fait par vba avec la fonction tablo,tous les totaux qui nous interessent et créer une nouvelle feuille récapitulative.

Pour cela, il faut définir à l'avance quels sortes de totaux aller récupérer dans chaque pivot, ce qui veut dire avoir une macro bien spécifique,bien propre à l'ensemble des pivots donc par exemple dans mon cas, ce qui irait pour un classeur X devrait être adapter au classeur Y.

Je crois dans les Tableaux VBA!!!!!!!!Et si je devais savoir uniiiiiiiiiiquement une chose en VBA c'est bien cela!!!

Sorry de ne pouvoir t'aider plus
:(

Celeda
 

MichelXld

XLDnaute Barbatruc
bonjour Thibaut , bonjour chere Celeda

si j'ai bien compris la demande , ci joint quelques exemples pour extraire le resultat d'un champ dans un TCD



Private Sub CommandButton1_Click()
Dim Pvt As PivotTable
Dim Pvf As PivotField

'-----------------------------

MsgBox Sheets('Feuil4').PivotTables(1).GetData(''Somme de CA' listeClient Client02')

'-----------------------------
Set Pvt = Sheets('Feuil4').PivotTables(1)

MsgBox Sheets('Feuil4').PivotTables(1).GetData(''' & _
Pvt.DataFields(1).Name & '' listeClient Client02')

'------------------------------
Set Pvf = Pvt.PivotFields(1)

MsgBox Sheets('Feuil4').PivotTables(1).GetData(''' & _
Pvt.DataFields(1).Name & '' ' & Pvf.Name & ' Client02')

End Sub





bonne journée
MichelXld
 
T

Thibaut

Guest
Dan,

J'ai bien regardé ton fichier... et j'ai encore une petite question à ce sujet...

Dans mon cas, la base de données qui sert à créer le Tableau Dynamique est en Access... Cela marche-t-il malgré tout???
Je ne vois pas comment je peux définir des plages si les données viennent d'Access

Bonne journée à tous
 

Discussions similaires

Statistiques des forums

Discussions
312 496
Messages
2 088 982
Membres
103 997
dernier inscrit
SET2A