У меня есть книга Excel 2007 с несколькими диаграммами на одном листе (гистограмма с накоплением и одна серия в виде (невидимой) строки для итогов). В зависимости от ячейки, выбранной пользователем, гистограммы должны иметь разъемы или нет.
Для этого у меня есть небольшая подпрограмма VBa, запускаемая событием Worksheet_Change
которое зацикливается на графиках и устанавливает соединители с помощью objChart.SetElement msoElementLineSeriesLine
или objChart.SetElement msoElementLineNone
соответственно.
Это обычно работает в 90% случаев. Однако иногда - на некоторых, меняющихся графиках, objChart.SetElement
приводит к ошибке -2147467259 The specified dimension is not valid for the current chart type.
- и разбивает график, так что это выглядит так:
Чтобы исправить это после возникновения ошибки, нужно открыть файл - даже если он был сохранен после возникновения ошибки. Поэтому кажется, что это какая-то проблема с дисплеем.