4

У меня есть документ Excel (2007) с диаграммой (Clustered Column), которая получает свой ряд данных из ячеек, содержащих вычисленные значения

Вычисленные значения никогда не изменяются напрямую, а только в результате изменения других ячеек на листе

Когда я изменяю другие ячейки на листе, ячейки Серии данных пересчитываются и показывают новые значения - но Диаграмма, основанная на этом Серии данных, отказывается обновляться автоматически

Я могу получить диаграмму для обновления, сохранив / закрыв или переключив одну из настроек (например, переворачивая ось x / y и затем вернув ее обратно), или повторно выбрав ряд данных

Каждое решение, которое я нашел в Интернете, не работает

- I have Calculation set to automatic
- Ctrl+Alt+F9 updates everything fine, EXCEPT the chart
- I have recreated the chart several times, and on different computers
- I have tried VBA scripts like:
Application.Calculate
Application.CalculateFull
Application.CalculateFullRebuild
ActiveWorkbook.RefreshAll
DoEvents

Ни один из этих обновлений или обновлений диаграммы

Я замечаю, что, если я наберу свой ряд данных, реальные цифры вместо вычислений, он обновит диаграмму - как будто Excel не хочет распознавать изменения в вычислениях

Кто-нибудь испытывал это раньше или знает, что я мог бы сделать, чтобы решить проблему? Спасибо

2 ответа2

1

У меня та же проблема, что и у оригинального автора. И я тоже уже попробовал все, что он делал, и ни одно из них не сработало. Также я теперь проверил параметры расчетов, и это было автоматически, как и должно быть. Все остальное работает и рассчитывается нормально, но эта диаграмма не обновляется при изменении данных (и данные рассчитываются с помощью специальной функции, которая отделяет разноцветные числа от другого набора данных).

Я нашел временное решение и создал макрос (и кнопку для этого), который сначала обновляет данные аналогично Ctrl+Alt+F9, а затем переключает строки моей диаграммы в столбцы, а затем снова столбцы в строки. Странно, но работает.

Я использовал это, чтобы переключить их:

ActiveChart.PlotBy = xlColumns
ActiveChart.PlotBy = xlRows

Конечно, я бы предпочел найти реальный способ исправить это, но это также сработало до сих пор ...

0

Не уверен насчет 2007 года, но есть настройки, которые отключают автоматические вычисления. Посмотрите в параметрах расчетов и посмотрите, установлен ли он на ручной режим.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .