В свободное время я поддерживаю приложение Excel VBA.Я являюсь инженером производственного процесса, а не профессиональным разработчиком.
Диаграммные части приложения работали без проблем в Excel 2007. Моя компания обновляет до Excel 2010, и теперь это же приложение испытывает проблемы с взаимодействием сдиаграммы на рабочих листах.
Эта проблема связана с гистограммой.Приложение при сбросе удаляет серию из диаграммы, используя код ниже.Я сделал это так, чтобы при импорте / обработке новых данных не было времени, когда пользователю представляется диаграмма, которая не соответствует последним данным.
'select the histogram chart
Sheets(sChartSheet).Select
ActiveSheet.ChartObjects("Chart 15").Activate
Call PBarCaption("Delete Existing Histogram Series")
'remove any existing series
For i = 1 To ActiveChart.SeriesCollection.Count
ActiveChart.SeriesCollection(1).Delete
Next i
затемсоздает новую серию, поскольку новые данные для диаграммы импортируются из внешнего файла данных:
'add series for histogram
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).Values = "=HistogramData!$B$5:$B$29"
ActiveChart.SeriesCollection(1).XValues = "=HistogramData!$A$5:$A$29"
ActiveChart.SeriesCollection(1).charttype = xlColumnClustered
Проблема с 2010 состоит в том, что иногда, когда выполняется код VBA, вся гистограмма «теряется» (удалено), а не диаграмма, присутствующая без какой-либо определенной серии.
Кажется, что «потерянная» диаграмма возникает, когда последовательное выполнение базового кода выполняется через другой раздел кода VBA, который автоматически создает серию диаграмм и копирует их в PowerPoint.
Когда последовательность диаграмм выполняется вручную, она работает без проблем.Когда запускается автоматически, при генерации второй последовательности чата диаграмма удаляется.
Я надеюсь, что кто-то знаком с изменениями в диаграммах с версии Excel 2007 до 2010 и сможет помочь.
Спасибо,
Лен