Le graphique ne sera pas mise à jour dans Excel (2007)
J'ai un document Excel (2007) avec un graphique à Colonnes regroupées) qui obtient une Série de Données à partir de cellules contenant des valeurs calculées
Les valeurs calculées ne changent jamais directement, mais seulement comme un résultat d'autres cellules dans la feuille de changer
Quand je change de d'autres cellules dans la feuille, la Série de Données, les cellules sont recalculées, et de montrer de nouvelles valeurs - mais le Graphique basé sur cette Série de Données refuse de mettre à jour automatiquement
Je peux obtenir le Tableau de mise à jour par l'enregistrement/de fermeture, ou le basculement de l'un des paramètres (tels que l'inversion de x/axe y, et ensuite de le mettre à l'arrière), ou à la re-sélection de la Série de Données
Chaque solution que j'ai trouvé en ligne ne fonctionne pas
- Oui, j'ai de Calcul définie à
automatique - Ctrl+Alt+F9 mises à jour de tout bien, SAUF le graphique
- J'ai recréé le graphique à plusieurs reprises et sur différents ordinateurs
-
J'ai essayé de scripts VBA comme:
Application.Calculate
Application.CalculateFull
Application.CalculateFullRebuild
ActiveWorkbook.RefreshAll
DoEvents
Aucun de ces mises à jour ou actualiser le graphique
Je remarque que si je tape sur ma Série de Données, les chiffres réels au lieu de calculs, il va mettre à jour le tableau - c'est comme si Excel ne veut pas reconnaître les changements dans les calculs
Quelqu'un a vécu cela avant ou savoir ce que je pourrais faire pour résoudre le problème?
Merci
- Quel type de Graphique que vous utilisez?
- Ah oui j'ai oublié de mentionner que, de son un Cluster Graphique en Colonnes
- Appartient sur le super-Utilisateur. Pas reliés à la programmation.
- Vérifiez si votre barre d'état affiche le message "Calculer". N'oubliez pas de répondre à des commentaires préfixant par le nom d'utilisateur @
- Est-ce le même problème que j'ai décrit dans un post il y a quelques mois?: MS Excel les Graphiques Ne sont Pas Automatiquement mise à Jour Lorsque des Modifications de Données
- Cette question a été posée il y a 5 ans, et c'est pas encore été résolus dans Excel 2016. Incroyable.
Vous devez vous connecter pour publier un commentaire.
J'ai rencontré ce même problème - je ne sais pas pourquoi, et quand il arrive, le seul moyen que j'ai jamais eu le graphique pour forcer la mise à jour est de changer quelque chose dans la définition du diagramme lui-même, qui peut facilement être fait via VBA comme dans:
Il y a peut être une meilleure réponse qui est au fond du problème - mais j'ai pensé que cela pourrait aider. De travail sur la feuille, je voudrais faire un rapide Ctrl-X, Ctrl-V sur un morceau de la carte (ou le tout) pour forcer le tableau de mise à jour.
+
pour la concaténation de chaîne! Devrait utiliser&
.C'est la seule chose que j'ai trouvé de toujours mettre à jour un tableau. Il coupe la cause racine du problème (je suppose): la série de données est mise en cache dans le graphique. En forçant le graphique de réévaluer la série, nous sommes effacer le cache.
J'ai eu ce problème lors de la génération de+ de 1000 graphiques par le biais de
VBA
. J'ai généré les graphiques et affecté d'une plage de leur série. Toutefois, lorsque la feuille recalculé les graphiques ne serait pas de mise à jour comme les plages de données les valeurs modifiées.Solution --> j'ai tourné WrapText avant la Boucle For...Next qui génère les graphiques, puis se tourna à nouveau après la boucle.
et après...
- Ce une bonne solution en raison de la mise à jour de+ de 1000 graphiques à la fois sans boucle, à travers eux tous et à changer quelque chose individuellement.
Aussi, je ne suis pas vraiment sûr de savoir pourquoi cela fonctionne; je suppose que lorsque WrapText les modifications apportées à une propriété de la plage de données, il fait la mise à jour graphique, mais je n'ai aucune documentation sur ce sujet.
J'ai eu le même problème avec un simple graphique.
Aucun des macros que j'ai essayé. Rien n'a fonctionné sur
cut
,pasting
,relocating
graphique.La solution de Contournement que j'ai trouvé a été de modifier le texte du graphique, enlever les étiquettes, puis re-sélectionner les étiquettes. Une fois qu'ils ré-apparu, ils ont été mis à jour.
Data Labels = None
. EnsembleData Labels = Bottom
. Reformater le goût. (Excel 2010)C'est l'absurdité d'un bug qui est gravement entravée dans mon travail avec Excel.
Basé sur les travaux de contournement posté je suis venu à la suite d'actions que l'simplist pour aller de l'avant...
Cliquez sur le graphique que vous voulez mettre à jour - Sélectionnez CTRL-X, CTRL-V pour couper et coller le graphique dans la place... il va être forcé de mettre à jour.
Cela fonctionne très bien pour moi, il retourne axes sur toutes les cartes, puis retourne en arrière, ce qui les amène à actualiser sans changer la à tous.
C'est un bug Excel...
La meilleure et la plus rapide solution de contournement est
Columns.AutoFit
- Trick:J'ai un autre problème de refeshing graphiques. Lors de la génération des graphiques automatiquement, certains graphiques s'affichent plus et cache le texte dans la feuille. Il arrive à être un problème de rafraîchissement de la générées graphiques. Quand j'ai effectuer un zoom avant ou un zoom arrière, je peux obtenir les résultats escomptés. Donc je poste ici la solution si ça l'intérêt de quelqu'un.
Par programmation, j'ai ajouté ce après la génération de graphiques :
J'ai fait face à la même question. Le problème est dû à la restriction aucune. de calcul des formules dans votre feuille. vous pouvez résolu à l'aide de deux façons:
Manuel de la force de re-calculer:
Macro à force de re-calculer:
ajouter le code ci-dessous à la fin de la fonction qui change les données
J'ai trouvé la solution: la
À partir d'excel options assurez-vous de modifier les options de calcul comme ci-dessous. Il a changé parfois à manuel après un travail lourd dans excel.
Ce problème est ridicule! Pas une solution a fonctionné pour moi en 2010, mais j'ai basé le mien hors de tpascale de l':
Simplement redéfini la Source de la plage de Données. Si c'est une plage nommée, qui pourrait être raisonnablement propre. Je suppose que la meilleure solution pour cela est de continuer à essayer de modifier les différentes propriétés du diagramme jusqu'à ce qu'il actualise.
Ok j'ai une solution, vraiment....
J'ai trouvé que le problème avec mes cartes pas de mise à jour ont eu lieu peu de temps après que j'avais caché des données des colonnes d'alimentation de la carte, et coché "afficher les données cachées dans les lignes et les colonnes" dans le Tableau de "Sélectionner la Source de Données" msg box).
J'ai trouvé que si je suis allé de nouveau dans "Sélectionner la Source de Données" msg box et non/revérifié le "afficher les données cachées dans les lignes et les colonnes" que le tableau s'actualise.
Par programmation, j'ai inséré la ligne suivante dans une Macro que j'ai relié à un bouton, de rafraîchir l'ensemble de mes cartes assez rapide pour une solution de contournement d'un bogue connu. Ce code suppose une carte par feuille de calcul, mais d'un autre pour l'instruction pour les graphiques 1 à N pourrait être ajouté si vous le souhaitez:
J'ai eu ce problème et trouvé que c'était causé par le fait d'avoir deux applications excel en cours d'exécution au même moment. Si j'ai tout fermé et ouvert juste le fichier j'ai eu des problèmes avec les cartes dynamiques comme ils devraient l'être. Peut-être que cela aide
Nous avons trouvé une solution qui n'implique pas VBA: multiplier un élément du graphique de la plage de données par
TODAY()-TODAY()+1
.Même si la gamme a été recalculer sans cela, la nature volatile de
TODAY()
en quelque sorte, donne un coup de pouce supplémentaire qui déclenche le graphique recalcul.& T(NOW())
à la place, mais c'est le même principe. Évidemment, ce serait une très mauvaise idée si il y a beaucoup de calcs selon votre maintenant de super-volatile de la cellule, mais les résultats dans unxlsx
qui peut être envoyé à des gens qui sont paranoïaques à propos dexlsm
s et auront toujours le droit données.Cela a fonctionné pour moi, il coupe et re-colle les cartes sur la feuille de calcul active. J'ai basé cette off de Jason code et d'un post de blog j'ai trouvé dans une recherche rapide sur Google.
À partir d'Excel 2013, il est le
Chart.Refreh
méthode (https://msdn.microsoft.com/de-de/library/office/ff198180.aspx) qui a fonctionné pour moi:Viens de passer une demi-journée sur moi-même.
J'ai une macro qui modifie les valeurs qui sont les données d'un graphique. Tout a bien fonctionné dans Excel 2003, mais dans Excel 2007, le graphique semble perdre toute connexion à ses données, bien que de modifier manuellement les valeurs de données dans les deux colonnes déclenché un recalcul.
Ma solution a été de faire de toutes les cartes sur la feuille active invisible avant que le changement dans les données, puis de les rendre à nouveau visible et de l'appeler graphique d'actualisation pour faire bonne mesure. ( Il semble que pour être visible des tableaux qui ont ce problème de mise à jour ).
Cela fonctionne pour moi, et gère également à des problèmes similaires avec des graphiques ainsi que des objets de graphique. L'actualisation peut ne pas être nécessaire - des tests supplémentaires sont nécessaires.
FAIRE DE LA MACRO TRUCS QUI MODIFIE DES DONNÉES
J'ai eu le même problème que l'affiche. Fondamentalement, je suis en cours d'exécution d'un tableau de bord, et j'ai un tas de plages nommées sont remplis avec les valeurs de retour de certaines fonctions définies par l'utilisateur. Sur le tableau de bord, il y a certains diagrammes avec des séries de données liée aux cellules qui contiennent ces plages nommées (le problème se produit également si la série de données cible les cellules contiennent les fonctions définies par l'utilisateur directement, sans passer par les plages nommées).
- Je changer la valeur d'une cellule qui contient, par exemple, de la date, à la base le tableau de bord, et les plages nommées et Udf sont obligés de calculer. Cependant, les camemberts ne pas mettre à jour--pour une raison quelconque, d'autres types de graphiques ne. Et par ailleurs, ce sont les objets du diagramme, pas les feuilles de graphique. De toute façon, nous allons couper à la solution:
Je ne voulais pas visiblement modifier le titre du graphique ou de quelque autre aspect de celui-ci, et de toute façon j'ai remarqué que ce n'était pas de mettre à jour mes cartes de manière cohérente. Parfois, la première fois que j'ai déclenché le calcul des tartes à mettre à jour, mais avec la suite des calculs les tartes ne le serait pas. Je l'ai fait remarquer, toutefois, que chaque fois que je fait un changement dans le code de mon tableau de bord travaillé. Donc:
Solution:
Si vous utilisez le module Classeur (je n'étais pas dans ce cas), il suffit de créer un nouveau module et de référence à la place.
J'ai connu le même problème avec mon travail la semaine dernière quand j'ai ajouté un peu plus de calcul à ma feuille. Après cela, à l'aide de boutons radio pour sélectionner les données à être présentés sur les graphes ne pas mettre à jour les graphiques plus.
La meilleure explication que j'ai pu trouver jusqu'à présent est ceci:
http://support.microsoft.com/kb/243495
Si j'ai bien compris il est bon, si il y a plus de 65536 formules qui ont une autre cellule comme une référence dans votre fichier, Excel démarre à optimiser le calcul et, dans certains cas, les graphiques ne sont pas mis à jour correctement plus.
Si il existe une solution de contournement pour ce sans l'aide de macros VBA, je serais heureux d'entendre que (ne peut pas les utiliser comme les fichiers doivent être partagées par le biais de SharePoint sans macros VBA).
Ce qui a fonctionné pour moi a été l'aide d'une macro pour insérer/supprimer une colonne dans le tableau de données du graphique. Cela va entraîner le graphique pour mettre à jour la sélection de données.
J'ai trouvé ceci pour être le moyen le plus rapide pour le fixer.
J'ai eu le même problème pendant le travail par le biais d'un tutoriel (très frustrant quand vous suivez ces étapes et de ne pas obtenir le résultat escompté).
Le tutoriel pour créer un graphique en secteurs me voulait pour sélectionner la gamme
A3:A10
, puis sélectionnez également la non-adjacents gammeE3:E10
. Je l'ai fait. J'ai eu le graphique.Il m'a alors demandé de modifier une valeur, et montre la variation en pourcentage, puis de regarder le graphique à secteurs et de voir la mise à jour.
Il n'a pas de mise à jour.
J'ai regardé la source de données pour le graphique à secteurs, et la plage était bizarre. Il avait l'
A3:A10
gamme notés correctement, mais leE10
référence de cellule répété plusieurs fois, et il y avait de laE
cellules énumérés dans un ordre aléatoire. Il ressemblait àJ'ai changé la source de données à lire:
Le problème est résolu. C'est parfois une question de nettoyer votre code pour le calcul du processeur a moins à trier par.
J'ai du mal avec ce problème, trop. Enfin résolu par le recalcul de la feuille qui a le tableau de données APRÈS la fonction personnalisée est recalculé. Ainsi, dans la Feuille 1, j'ai une cellule qui contient
Dans le module VBA, la fonction est définie comme Volatile, pour s'assurer que ComputeScore() s'exécute après toutes les mises à jour de la feuille de calcul.
Puis, dans le VBA de la Feuille 1, ce:
Donc, la feuille nommée Tableaux de Données, qui fait référence à la fonction personnalisée de la cellule de la Feuille 1, va faire un recalcul APRÈS la ComputeScore() de la fonction de la mise à jour de la cellule de la Feuille 1, depuis Worksheet_Calculate() se déclenche après la ComputeScore() le recalcul. Cette série supplémentaire de calcul de la carte de données provoque le graphique pour mettre à jour maintenant plutôt que plus tard ou pas du tout. Le réglage de EnableEvents et xlManual garde infini recalcul des boucles et d'autres événements problèmes de se produire.
Cela peut paraître très basique, mais j'ai juste essayé de Manuel de Calcul sur la feuille de calcul où les tableaux ont été (en appuyant sur F9) et cela a fonctionné! Tha code VBA pour c'est simplement:
Calculer
😉
Que j'ai essayé à peu près TOUTES les solutions présentées et depuis aucune n'a fonctionné dans mon cas, je vais ajouter mon grain de sel ici. Espérons que cela aide quelqu'un d'autre.
Le consensus sur cette question semble être que nous avons besoin de quelque sorte forcer excel à redessiner le graphique car il n'est pas de le faire quand il le faut.
Ma solution a été de tuer l'Axe des X de données et de le remplacer par rien, avant de le changer à ce que je voulais. Voici mon code:
Mes deux cents pour ce problème, j'ai eu un problème similaire avec un graphique sur un Accès à un rapport de 2010. J'ai été dynamiquement la construction d'un objet querydef, paramètre que le contenu (rowsource) sur mon rapport et d'essayer d'en boucle dans chaque série et définissez les propriétés de chaque série. Ce que j'ai finalement eu à faire était de sortir l'objet querydef création et le paramètre de la propriété pour séparer les sous-marins. En outre, j'ai mis un
au bas de chacune des deux sous-marins.
Sur la manière de changer les valeurs de la source de données, le graphique n'était pas mis à jour en conséquence. Vient de fermer toutes les instances d'excel et redémarré, le problème a disparu.
J'ai eu un problème similaire, - les Graphiques ne semble pas de mise à jour. J'ai essayé à peu près tout sur ce fil avec pas de chance. J'ai finalement réalisé que les tableaux que j'ai été copiant et collant, sont reliés à la source de données, et c'est pourquoi ils étaient tous de montrer les mêmes résultats.
Assurez-vous de copier et coller les photos avant de vous passer à travers toutes les autres motions....
J'ai juste eu le même problème, et a également constaté que la ligne s'affiche uniquement si je l'ai mis dans de mauvaises données (caractères au lieu de nombres). Cela a provoqué la ligne à apparaître, mais de changer à nouveau des données valides causé qu'il disparaisse de nouveau.
Ce que j'ai trouvé est que si je double-clique sur la ligne (apparaissant avec les données de mauvaise qualité), il m'a montré que c'était sur l'axe SECONDAIRE pour une raison quelconque. Changer à l'axe PRINCIPAL a résolu mon problème.
J'ai eu un problème similaire aujourd'hui avec un fichier 2010 avec un grand nombre de formules et de plusieurs connexions de base de données. Le graphique axe qui n'étaient pas de mise à jour des références des gammes avec les colonnes masquées, semblable à d'autres dans cette chaîne, et les étiquettes affiche le mois et l'année "MMM-YY" de la dynamique de données. J'ai essayé toutes les solutions à l'exception de l'VBA options que je préfère résoudre sans code.
J'ai été en mesure de résoudre les problèmes en les encapsulant mes dates (les étiquettes de l'axe) dans une formule de TEXTE en tant que tel: =TEXTE(A10,"MMM-YY"). Et tout, tout de suite les mises à jour lors de la modification des valeurs. Jours heureux à nouveau!!!
De lire les autres contributeurs questions ci-dessus, j'ai commencé à penser que les Cartes ont des problèmes avec le type de données de DATE plus précisément, et donc de la conversion des valeurs de texte avec le TEXTE de la fonction résolu mon problème. J'espère que cela peut vous aider. Il suffit de changer le format de l'intérieur de guillemets doubles (deuxième argument de la fonction de TEXTE) pour répondre à vos besoins.
Il suffit d'activer la feuille où le graphique est:
et votre problème disparaît.
J'ai eu le même problème et aucune des choses que vous avez mentionnées dans la question a fonctionné pour moi jusqu'à ce que je viens d'activer la feuille. La accepté de répondre ne fonctionne pas pour moi non plus.
Sinon, vous pouvez faire:
Pour moi, la macro n'a pas de mise à jour de l'axe des x pour toutes les séries, mais seulement le premier. La solution que j'ai trouvé a été de mettre à jour l'axe des x pour toutes les séries et puis il refrehsed (aussi, j'ai eu le code pour modifier le format de l'axe des x, mais je ne pense pas que c'était le problème).
Plein macro;
Pour moi, d'abord la désactivation et la réactivation de calcul (par exemple, pour la feuille de calcul active) a résolu le problème:
Peut-être exécuter deux fois de suite.
Tous les graphiques dans la feuille de calcul mise à jour entièrement.
Pour mettre à jour un tableau il suffit de mettre un Sheets("Feuil1").Calculer dans votre sous-procédure. Si vous avez plus de cartes sur les différents onglets, puis il suffit de créer une feuille de calcul de la boucle.
Graphiques ne sont pas "sentir" les changements avec insertion directe des valeurs à la source des cellules avec la macro. Vous devez envoyer les valeurs de tableau de cellules, et après cela, utilisez un code comme ceci
Worksheets("feuil1").Range("A1:K1")=Worksheets("feuil2").Range("A4:K4").Valeur
J'ai trouvé que par la création du graphique dans une feuille de calcul distincte toutes les mises à jour s'appliqueront. HTH