public PPT.Series GetChartSeriesByName(PPT.Chart chart, string seriesName)
        {
            var sc = (PPT.SeriesCollection)chart.SeriesCollection();
            PPT.Series seriesToReturn = null;

            int counter = 1;
            int total = sc.Count + 1;

            do
            {
                var series = sc.Item((counter));
                if (series.Name == seriesName)
                {
                    seriesToReturn = series;
                }
                counter++;
            }
            while (counter != total);

            return seriesToReturn;
        }
 public PPT.SeriesCollection GetAllChartSeries(PPT.Chart chart)
 {
     return (PPT.SeriesCollection)chart.SeriesCollection();
 }
        public void AddSeriesToExistingChart(PPT.Chart chart, ChartSeries series)
        {
            var workbook = (EXCEL.Workbook)chart.ChartData.Workbook;
            workbook.Windows.Application.Visible = false;
            var cellNumber = 1;

            var dataSheet = (EXCEL.Worksheet)workbook.Worksheets[1];

            var sc = (PPT.SeriesCollection)chart.SeriesCollection();
            var seriesCount = sc.Count;
            var letter = IntToLetters((seriesCount + 2));

            foreach (var value in series.seriesData)
            {
                var cellPosition = letter + cellNumber.ToString();
                dataSheet.Cells.Range[cellPosition].Value2 = value;
                cellNumber++;
                chart.Refresh();
            }

            // we have to populate the sheet with new values, now we need to create a series for it!
            var columnsRange = dataSheet.UsedRange.Columns;
            var rowsRange = dataSheet.UsedRange.Rows;

            var columnCount = columnsRange.Columns.Count;
            var rowCount = rowsRange.Rows.Count;
            var lastColumnLetter = IntToLetters(columnCount);

            var newSeries = sc.NewSeries();
            newSeries.Name = series.name;
            newSeries.XValues = "'Sheet1'!$A$1:$A$" + rowCount;
            newSeries.Values = "'Sheet1'!$" + lastColumnLetter + "$1:$" + lastColumnLetter + "$" + rowCount;
            newSeries.ChartType = series.seriesType;

            chart.Refresh();
        }