C#4.0 Excel生成图表和位置
我遇到了一个小问题。 我创build了一个代码,用于创build一个包含几条logging的Excel工作表并创build折线图。 但问题是我似乎无法将图表定位在指定位置。 这是我的代码:
excelApp.ActiveSheet.Shapes.AddChart.Select(); excelApp.ActiveChart.ChartType = Excel.XlChartType.xlLine; excelApp.ActiveChart.SetSourceData(Source: excelApp.Range["Sheet1!$A$1:$B$7"]); excelApp.ActiveChart.Parent.Name = "mainChartView"; excelApp.ActiveChart.Shapes.Item(excelApp.ActiveChart.Name).Top = 100; // or excelApp.ActiveChart.Shapes.Item("mainChartView").Top = 100;
两者都返回以下错误:
ArgumentExecption was unhandled (The item with the specified name wasn't found).
这是错误行:
excelApp.ActiveChart.Shapes.Item(excelApp.ActiveChart.Name).Top = 100; // or excelApp.ActiveChart.Shapes.Item("mainChartView").Top = 100;
我真的希望你们中的一个有正确的维修人员,非常感谢!
编辑:解决scheme是:
excelApp.ActiveSheet.Shapes.Item("mainChartView").Top = 20;
你应该也可以使用:
excelApp.ActiveChart.Parent.Top = 100;
我已经find了自己的安泽。
我replace了:
excelApp.ActiveChart.Shapes.Item(excelApp.ActiveChart.Name).Top = 100;
有:
excelApp.ActiveSheet.Shapes.Item("mainChartView").Top = 20;
您正在设置.Parent名称属性,不应该设置图表对象本身的名称? 你有Chart对象吗? 设置其名称属性
excelApp.ActiveSheet.Shapes.AddChart应该返回一个形状types(在你的情况图)。 设置该types的名称属性,然后尝试