gpt4 book ai didi

c# - 如何在 C# 中获取图表的 Excel XValue

转载 作者:太空狗 更新时间:2023-10-30 01:35:04 24 4
gpt4 key购买 nike

我正在编写一些代码来使用 C# 操作 excle 文件中的图表。关键要求之一是获取 Chart SeriesCollection 的 XValue 属性。我试图按索引访问它,但它不起作用,尽管我可以在 Visual Studio 的“监视”窗口中看到值列表。在 Watch 窗口中,我注意到 s.XValue 的类型是 dynamic{object[]},这是我以前从未见过的,而 obj.ToString() 是 System.Object[*] 。问题是如果 XValue 不支持索引,我如何从 XValue 属性中获取每个值。


对了,网上搜了下,只能找到设置excel单元格范围为XValue的方法,没有找到XValue的获取方法。如果有人可以提供建议,我将不胜感激。

Excel._Worksheet worksheet = (Excel._Worksheet)book.Worksheets[a];
Excel.ChartObject chartObj = (Excel.ChartObject)worksheet.ChartObjects(1);
if (chartObj != null)
{
Excel.Chart chart = (Excel.Chart)chartObj.Chart;
var s = (Excel.Series)chart.SeriesCollection(1);
object obj = s.XValues;
//How to get s.XValues[1], s.XValues[2], s.XValues[3]...
}

最佳答案

试试这个:

var chart = chartObj.Chart as Excel.Chart;
var s = chart.SeriesCollection(1) as Excel.Series;

var xValues = (s.XValues as object) as Array;

foreach (var xVal in xValues)
{
MessageBox.Show(xVal.ToString());
}

还有What is this `Object[*]` type I get with COM interop?

关于c# - 如何在 C# 中获取图表的 Excel XValue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27486962/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com