OVH Cloud OVH Cloud

Actualisation automatique de tableaux croisés

6 réponses
Avatar
Damien Charrier
Re-bonjour à tous,

je suis untout récent sur votre super forum et bien sûr toutes les questions
Excel qui me trotent dans la tête depuis un moment se bousculent au
portillon.

Peut-on rendre automatique l'actualisation d'un tableau croisé dès lors que
l'on modifie ou intègre une nouvelle donnée dans la source.

Sur excel Labo j'ai trouvé une macro complémentaire mais l'actualisation
prend énormèment de temps pour un tout petit TCD alors je n'imagine pas ce
que ça peut donner pour mes TCD gigantesques.

DC.

6 réponses

Avatar
AV
S'il s'agit simplement de la maj du TCD sans s'occuper dela mise en forme :
Dans le module de la feuille contenant la BD (à adapter) :

Private Sub Worksheet_Change(ByVal zz As Range)
Sheets("Feuil2").PivotTables("monTCD").RefreshTable
End Sub

AV
Avatar
Patrice
Salut,

Par exemple une base de données dans l'onglet A, le TCD
dans l'onglet B...
-> tu te mets en mode enregistrement et tu actualises ton
TCD, et tu mets le code obtenu en "Private Sub
Worksheet_Activate() de l'onglet B.
A chaque fois que tu accèderas au TCD, il s'actualiseras
en fonction de la base.
ça te convient ?
Il faudra faire attention aux référence du TCD quand à la
base de données, sinon, tes nouvelles lignes risquent de
ne pas être intégrées.

Patrice.


-----Message d'origine-----
Re-bonjour à tous,

je suis untout récent sur votre super forum et bien sûr
toutes les questions

Excel qui me trotent dans la tête depuis un moment se
bousculent au

portillon.

Peut-on rendre automatique l'actualisation d'un tableau
croisé dès lors que

l'on modifie ou intègre une nouvelle donnée dans la
source.


Sur excel Labo j'ai trouvé une macro complémentaire mais
l'actualisation

prend énormèment de temps pour un tout petit TCD alors je
n'imagine pas ce

que ça peut donner pour mes TCD gigantesques.

DC.


.



Avatar
patrice
Bonjour,
oui, on ne peut pas écrire plus simple, je me suis
embarqué dans un cours...inutile.

"la connaissance, c'est comme la confiture, moins on en a,
plus on l'étale..." :))

je retourne me coucher.

Bonne après midi

Patrice.

-----Message d'origine-----
S'il s'agit simplement de la maj du TCD sans s'occuper
dela mise en forme :

Dans le module de la feuille contenant la BD (à adapter) :

Private Sub Worksheet_Change(ByVal zz As Range)
Sheets("Feuil2").PivotTables("monTCD").RefreshTable
End Sub

AV


.



Avatar
Damien Charrier
Mais si mon TCD n'est pas sur une feuille contenant une macro, puis-je
ouvrir VBA ?

"AV" a écrit dans le message de
news:%23Fjk%
S'il s'agit simplement de la maj du TCD sans s'occuper dela mise en forme
:

Dans le module de la feuille contenant la BD (à adapter) :

Private Sub Worksheet_Change(ByVal zz As Range)
Sheets("Feuil2").PivotTables("monTCD").RefreshTable
End Sub

AV




Avatar
Damien Charrier
ça me va .

Merci beaucoup

"Patrice" a écrit dans le message de
news:81e201c4ce3f$14cdce30$
Salut,

Par exemple une base de données dans l'onglet A, le TCD
dans l'onglet B...
-> tu te mets en mode enregistrement et tu actualises ton
TCD, et tu mets le code obtenu en "Private Sub
Worksheet_Activate() de l'onglet B.
A chaque fois que tu accèderas au TCD, il s'actualiseras
en fonction de la base.
ça te convient ?
Il faudra faire attention aux référence du TCD quand à la
base de données, sinon, tes nouvelles lignes risquent de
ne pas être intégrées.

Patrice.


-----Message d'origine-----
Re-bonjour à tous,

je suis untout récent sur votre super forum et bien sûr
toutes les questions

Excel qui me trotent dans la tête depuis un moment se
bousculent au

portillon.

Peut-on rendre automatique l'actualisation d'un tableau
croisé dès lors que

l'on modifie ou intègre une nouvelle donnée dans la
source.


Sur excel Labo j'ai trouvé une macro complémentaire mais
l'actualisation

prend énormèment de temps pour un tout petit TCD alors je
n'imagine pas ce

que ça peut donner pour mes TCD gigantesques.

DC.


.



Avatar
AV
Mais si mon TCD n'est pas sur une feuille contenant une macro, puis-je
ouvrir VBA ?


Heu.... c'est à dire ?
La macro fournie est à mettre dans le module de la feuille contenant les données
Il te suffit d'adapter le code fourni -->

Sheets("Feuil2").PivotTables("monTCD").RefreshTable

"Feuil2" est la feuille sur laquelle est le TCD et "monTcd" est le nom du TCD

Que dire de plus....

AV