Диаграмма Excel не обновляется на основе вычисленных ячеек

Диаграмма Excel не обновляется на основе вычисленных ячеек

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

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

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

Я могу обновить диаграмму, сохранив/закрыв ее или изменив одну из настроек (например, поменяв местами оси 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 не хочет распознавать изменения в вычислениях.

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

решение1

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

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

Я использовал это, чтобы поменять их местами:

ActiveChart.PlotBy = xlColumns
ActiveChart.PlotBy = xlRows

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

решение2

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

решение3

Проверьте, установлено ли свойство ForceFullCalculation в свойствах ThisWorkbook на True. Я заметил, что диаграммы больше не обновляются автоматически, если указанное свойство установлено на True, я думаю, это побочный эффект. Если вы установите его обратно на False, все вернется к норме.

Связанный контент