Actualisation automatique

Bonjour,

J'ai crée un fichier en excel 2007 : un onglet comportant une base avec un lien ODBC d'une application extérieure, et des onglets avec des Tableaux Croisés Dynamques reliés à cette première base.

Sur la base et les différents onglets, j'ai coché l'option "Actualiser à l'ouverture du fichier", mais rien ne se passe. La base, et donc les TCD ne se mettent pas à jour. Je suis obligé d'actualiser manuellement feuille par feuille.

Quelqu'un a-t-il déjà rencontré le problème ?

Je souhaiterai que tous les tableaux se mettent à jour à l'ouverture du fichier.

Merci d'avance pour votre aide.

Bonjour,

Ta méthode est bonne et simple. Toutefois, tu dois cocher la case pour chaque TCD que tu as fait.

Donc, clique sur chaque TCD puis vas dans les options du TCD et coche la case en question.

Sinon on peut aussi le faire par code mais pourquoi le faire si tu as cette option disponible en excel.

Amicalement

Dan

PS : Si ton pb est terminé, pense à mettre RESOLU sur le fil. Explication ici --> https://forum.excel-pratique.com/viewtopic.php?t=13

Merci de ta participation.

Merci de vous intéressez à mon problème. Je suis nouvelle sur le forum.

Mais votre réponse ne me satisfait pas complètement : j'ai bien coché dans ma Base, dans le menu Données - Propriétés - "Actualiser les données lors de l'ouverture du fichier", ainsi que dans l'ensemble de mes TCD.

Mais je n'ai aucune actualisation qui se fait...

J'ai essayé de faire une modif au niveau du REGEDIT (QuerySecurity = 2) mais ça ne change rien.

Est-ce que j'ai oublié une option évidente ???

re,

Pourquoi aller chipoter dans la base des registres de ton ordinateur ?? Tu risques de planter ton ordi purement et simplement.

L'actualisation dont tu parles est consécutive à un changement dans ta base de données ou non ?

Cette question parce que si tu n'as pas prévu l'agrandissement de ta base de données dans la plage considérée par le TCD, celui-ci ne reprendra que celle que tu as définie à l'étape 1 de l'assistant TCD.

Si c'est le cas, donne moi ton fichier ou au moins la plage reprise à l'étape 1 de l'assistant TCD, je t'indiquerai quoi faire.

A te relire

Dan

Re,

Pour info, ce n'est pas suite à un changement de base ou de lien odbc. Par contre l'actualisation a été décocher temporairement par un de mes collègues, et depuis, impossible de la remettre en automatique.

Le fichier dépasse la taille maximale autorisée. De plus, vu que la base ne se met pas à jour non plus, et que tu ne pourras pas la mettre à jour car tu n'auras pas les données sources du lien ODBC, je ne sais pas si ça vaut le coup de l'envoyer.

Bonjour

As-tu compressé ton fichier ?

Si une fois compressé :

- Il ne dépasse pas 100 ko, tu passes par Ici

- Il ne dépasse pas 200 ko, tu passes par

- Il ne dépasse pas 500 ko, c'est De ce côté

Amicalement

Nad

Re,

Merci de ton fichier.

Comme je n'ai pas le pilote ODBC, j'aimerais que tu m'expliques comment la mise à jour de la base est effectuée. En fait ce que je voudrais savoir c'est si ce sont les données dans la feuille BASE qui sont remplacées par les nouvelles et si le TCD est bien réalisé à partir de cette base ou non.

Merci de tes infos

A te relire

Dan

Re,

La mise à jour de la base est réalisée par lien odbc vers une application de facturation externe. C'est à dire que lorsqu'on ouvre le fichier excel, il se connecte à l'application et va chercher les dernières infos saisies (comme la mise à jour automatique ne marche pas pour le moment, je me positionne dans l'onglet BASE et je cliquer sur Actualiser les données)

Ensuite, tous les TCD sont reliés à cette même BASE, et se réactualisent par la même option. (Actuellement, je suis obligée de passer onglet par onglet pour la réactualisation)

Par contre, dans le fichier tel que je l'ai mis en ligne, les tableaux sont bien à jour par rapport à la Base, mais la Base n'est pas à jour par rapport à l'appli externe.

Je ne sais pas si je suis bien claire...

re,

Merci de tes précisions.

Mets le code ci-après dans ton fichier. IL s'excutera lors de l'ouverture du fichier. Fais quelques tests car je ne suis par sûr de l'ordre dans lequel cela sera effectué en ce sens qu'il faut voir si la mise à jour s'effectue avant la macro qui sera déclenchée à l'ouverture du fichier.

Vérifie que tes macros sont activées par OUTILS / MACRO / SECURITE DES MACROS et mets le niveau sur MOYEN (le plus sûr)

Pour le placer :

  • ALT + F11 sur ton clavier
  • Gauche tu verras une fenêtre avec THISWORKBOOK dans VBA Project
  • Double clique sur THISWORKBOOK
  • Dans la fenêtre de droite, mets le code ci-dessous
  • Enregistre ton fichier et ferme le
Private Sub Workbook_Open()
'Macro Dan
ThisWorkbook.RefreshAll
End Sub

Si pb, on verra une autre solution

Amicalement

Dan

Re,

C'est un bon début : ma base se réactualise bien, par contre en ce qui concerne les TCD, il faut que je continue de les actualiser manuellement.

Aurais-tu une solution à tester ?

Amicalement,

re,

Remplace code que je t'ai proposé par celui-ci dessous :

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
' Macro Dan le 10/04/08
Dim pvttable As PivotTable
Select Case Sh.Name
Case Is = "Sommaire", "BASE FACT"
End
Case Else
With Application
    .ScreenUpdating = False
    .CommandBars("PivotTable").Visible = False
End With
Set pvttable = ActiveSheet.Range("A5").PivotTable
pvttable.RefreshTable
End Select
End Sub

Veille à ce que ton TCD sur la feuille "Relevé Fournisseur 200" soit bien sur la cellule A5 car là, il démarre en A6.

Amicalement

Dan

Re,

Merci pour cette réponse qui fonctionne très bien.

Rechercher des sujets similaires à "actualisation automatique"