Category / Section
How to set position for a chart in Excel worksheet?
WinForms Excel Worksheet helps to position a chart as required, with the help of four properties, TopRow, BottomRow, LeftColumn and RightColumn. Row and column indexes should be assigned to these properties, respectively. The following code sample illustrates how to position a chart in a worksheet.
C#
using (ExcelEngine excelEngine = new ExcelEngine())
{
// Create a worksheet
IApplication application = excelEngine.Excel;
application.DefaultVersion = ExcelVersion.Xlsx;
IWorkbook workbook = application.Workbooks.Create(1);
IWorksheet sheet = workbook.Worksheets[0];
sheet.Range["A1"].Text = "Student ID";
sheet.Range["B1"].Text = "Student Name";
sheet.Range["C1"].Text = "Mark(Out of 100)";
sheet.Range["A1:C1"].AutofitColumns();
sheet.Range["A2"].Number = 1;
sheet.Range["A3"].Number = 2;
sheet.Range["A4"].Number = 3;
sheet.Range["A5"].Number = 4;
sheet.Range["A6"].Number = 5;
sheet.Range["B2"].Text = "Andrew";
sheet.Range["B3"].Text = "Marson";
sheet.Range["B4"].Text = "Jack";
sheet.Range["B5"].Text = "Sam";
sheet.Range["B6"].Text = "Breto";
sheet.Range["C2"].Number = 77;
sheet.Range["C3"].Number = 45;
sheet.Range["C4"].Number = 92;
sheet.Range["C5"].Number = 39;
sheet.Range["C6"].Number = 55;
// Create a chart
IChartShape chart = sheet.Charts.Add();
chart.Name = "Student Sample Chart";
chart.ChartType = ExcelChartType.Column_Clustered_3D;
chart.DataRange = sheet.Range["B2:C6"];
// set the top row of the chart
chart.TopRow = 5;
chart.BottomRow = 20;
chart.LeftColumn = 5;
chart.RightColumn = 13;
workbook.SaveAs("Charts.xlsx");
}