使用C#在Excel中创建图表

时间:2010-01-21 11:51:53

标签: c# excel charts

我在使用C#在Excel中创建图表时遇到了一些麻烦。我已经设法使用以下代码获得任何类型的图表:

            Excel.Range chartRange; 

            Excel.ChartObjects xlCharts = (Excel.ChartObjects)xlWorkSheet.ChartObjects(Type.Missing);
            Excel.ChartObject myChart = (Excel.ChartObject)xlCharts.Add(10, 80, 300, 250);
            Excel.Chart chartPage = myChart.Chart;

            chartRange = xlWorkSheet.get_Range("A2", "Y2");
            chartPage.SetSourceData(chartRange, misValue);
            chartPage.ChartType = Excel.XlChartType.xlColumnClustered;

不幸的是,我不确定下一步该做什么。这就是我想要做的事情:

1)应该有几行数据,但它们并不相邻(例如,A2:Y2; A4:Y4; A6:Y6;)。如何将其中的每一个添加到图表中?

2)A1:Y1具有我的图例的所有值,我如何将其添加到图例中?

3)如何更改它以便在新选项卡上创建每个图表?

谢谢!

1 个答案:

答案 0 :(得分:4)

刚刚找到问题1的答案:

chartRange = xlWorkSheet.get_Range("B137:Y137, B139:Y139, B141:Y141", Missing.Value);

现在找到问题3的答案:

chartPage.Location(Excel.XlChartLocation.xlLocationAsNewSheet, "Chart1");

最后问题2的答案是简单地添加行名作为选择的一部分,所以#2除了A而不是B.