2015-08-03 2 views
1

Colorzing диаграммы 3D-Bar с Excel и Interop не работает:Excel Chart раскрасить 3D баров

Создание диаграммы:

chartRange = xlsSheet.Range[xlsSheet.Cells[1, 1], xlsSheet.Cells[array.GetLength(0), array.GetLength(1)]]; 
chartPage.SetSourceData(chartRange, Excel.XlRowCol.xlRows); 
chartPage.ChartType = Excel.XlChartType.xl3DColumn; 
chartPage.Location(Excel.XlChartLocation.xlLocationAsNewSheet, oOpt); 

нет Изменение цвета:

Excel.Series series = (Excel.Series)chartPage.SeriesCollection(1); 
Excel.Point pt = series.Points(2); 
pt.Format.Fill.ForeColor.RGB = (int)Excel.XlRgbColor.rgbPink; 

Проблема: Ничего изменится внутри диаграммы, но также нет ошибки. Просто показывая эти случайные цвета на барах.

ответ

0

В этом случае порядок отчетности важно:

chartRange = xlsSheet.Range[xlsSheet.Cells[1, 1], xlsSheet.Cells[array.GetLength(0), array.GetLength(1)]]; 
chartPage.SetSourceData(chartRange, Excel.XlRowCol.xlRows); 

Excel.Series series = (Excel.Series)chartPage.SeriesCollection(1); 
Excel.Point pt = series.Points(2); 
pt.Format.Fill.ForeColor.RGB = (int)Excel.XlRgbColor.rgbPink; 

chartPage.ChartType = Excel.XlChartType.xl3DColumn; 
chartPage.Location(Excel.XlChartLocation.xlLocationAsNewSheet, oOpt); 

работал для меня