Hisham
Hisham

Reputation: 11

Editing legend name on an excel chart using C#

I want to edit the name of the legends given on my excel chart. Right now I have 5 Series on a chart and the legend displays the names "Series 1", "Series 2", "Series 3", "Series 4", "Series 5". I need to change them to "DS1", "DS2" etc. I am using Microsoft.Office.Interop.Excel for my program. Can someone please help me out? thanks in advance!

Upvotes: 1

Views: 6378

Answers (2)

Sachin Patil
Sachin Patil

Reputation: 11

For that you need to change the range as from start. e.g. you can set the range from A1 to C3 i.e. where your column name starts As your excel sheet having A column with "DS1", "DS2" etc.

Upvotes: 1

Joe Erickson
Joe Erickson

Reputation: 7217

Using SpreadsheetGear for .NET you would do it like this:

        SpreadsheetGear.IWorkbook workbook = SpreadsheetGear.Factory.GetWorkbook(@"C:\Chart.xlsx");
        SpreadsheetGear.Charts.IChart chart = workbook.Worksheets["Sheet1"].Shapes["Chart 1"].Chart;
        chart.SeriesCollection[0].Name = "My Series Name";
        workbook.Save();

Since the SpreadsheetGear API is similar to the Excel API, you should be able to figure out how to do it in Excel from this SpreadsheetGear code. Note that SpreadsheetGear does use zero based indexes, so chart.SeriesCollection[0] in SpreadsheetGear would be chart.SeriesCollection[1] in Excel (or maybe chart.SeriesCollection.Item(1) since indexers don't always work as expected when using Excel via COM Interop).

Upvotes: 1

Related Questions