在C#中访问Excel图

我有一个graphics(xygraphics),在excel文件中有几条曲线。
如何在ac#应用程序中访问此图并从图中提取值?

作为一个例子,给定曲线1和一个Excel的图表上的x值,我想获得在相应的曲线上使用ac#windows应用程序的y值。 这可能吗?

您可以使用EPPlus并获取图表系列的excel范围,然后从范围中获取图表数据,如下所示:

private List<double> ExtractChartValues(FileInfo excelFile, string sheetName, int drawing, int chartSerie) { ExcelPackage ePack = new ExcelPackage(excelFile); ExcelWorksheet ws = ePack.Workbook.Worksheets[sheetName]; List<double> result = new List<double>(); ExcelChart ec = (ExcelChart)ws.Drawings[drawing]; ExcelRange dataRange = ws.Cells[ec.Series[chartSerie].Series]; foreach (ExcelRangeBase data in dataRange) { if (data.Value != null) result.Add((double)data.Value); } return result; } 

你必须创build一个macros – 与图交stream,然后创build你的csharp应用程序来与macros进行通信—你必须使用excel的互操作库。