我们如何从C#设置Excel图表的位置?

时间:2010-02-03 09:44:55

标签: c# excel charts

我正在尝试从C#生成Excel图表。生成的图表只是查找但它总是出现在屏幕的中心。如何设置图表的位置?

感谢。

我的代码如下所示:

Microsoft.Office.Interop.Excel._Workbook ebook = (Microsoft.Office.Interop.Excel._Workbook)etablo.Workbooks.Add(true);

Microsoft.Office.Interop.Excel._Worksheet esheet = (Microsoft.Office.Interop.Excel._Worksheet)ebook.ActiveSheet;

_Chart grafik1 = (Chart)ebook.Charts.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);

/* Add Data From Cells here */
/* Then */
grafik1.Location(XlChartLocation.xlLocationAsObject, esheet.Name);

2 个答案:

答案 0 :(得分:10)

生成图表后,您可以将图表作为形状对象处理:

例如:

esheet.Shapes.Item("Chart 1").Top = 100;
esheet.Shapes.Item("Chart 1").Left = 250;


// or you can handle shape by index - indexes start from 1 so esheet.Shapes.Item(1).Top

我认为,您希望在相关的单元格中设置位置,例如:

esheet.Shapes.Item("Chart 1").Top = (float)(double)esheet.get_Range("A5","A6").Top;

所以...我希望这会有所帮助:)

Luboss

答案 1 :(得分:1)

添加图表时您可以使用此代码来处理它的左侧,顶部,宽度,高度。 use this link

var chartObject = charts.Add(260, 30, 300, 300);