繁体   English   中英

读取VSTO Excel加载项的图表信息

[英]Reading Chart information for VSTO Excel Add-in

我试图用C#编写Excel 2007的VSTO加载项,但从以前生成的图表中读取值时遇到问题。 加载项会复制大型数据集的一部分,然后使用相同的属性但不同的工作表和源数据重新绘制数据。 当我尝试从原始工作表中获取图表标题(和其他属性)时,会导致异常。 我试图使用Globals.ThisAddIn.Application.Charts的几种变体作为起点,但是我一直没有成功。 我的假设是我没有正确参考旧图表。

任何帮助,将不胜感激。

谢谢。

经过一些挖掘,我意识到我应该已经从图表的SeriesCollection中读取属性。 类似以下工作

片段Excel.ChartObjects xlCharts =(Excel.ChartObjects)newWorkSheet.ChartObjects(Type.Missing);

 Excel.ChartObject myChart = (Excel.ChartObject)xlCharts.Add(10, 60, 720, 432);
 Excel.Chart chart = myChart.Chart;
 Excel.ChartObject oldchartObject = (Excel.ChartObject)VstoWorksheet.ChartObjects(1);
 Excel.Chart oldchart = oldchartObject.Chart;
 Excel.SeriesCollection seriesCollection = (Excel.SeriesCollection)chart.SeriesCollection(Type.Missing);
 Excel.SeriesCollection oldSeriesCollection = (Excel.SeriesCollection)oldchart.SeriesCollection(Type.Missing);
 Excel.Series oSeries;
 for (int i = 1; i <= (ColumnCount - 2); i++)
 {
     oSeries = seriesCollection.NewSeries();
     Excel.Series oOldSeries = oldSeriesCollection.Item(i);
     oOldSeries = (Excel.Series)oldchart.SeriesCollection(i);
     oSeries.MarkerStyle = oOldSeries.MarkerStyle;
     oSeries.Name = oOldSeries.Name;
 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM