Пожалуйста, кто-нибудь может мне помочь с этим, так как это сводит меня с ума!
Я прагматично создаю таблицу Excel с использованием C # и интерфейса COM.
Я создал диаграмму с помощью мастера диаграмм.
Я хочу добавить еще серию в этот график. Я могу добавить серию, но дополнительные данные находятся в новых столбцах, и они не создаются автоматически.
Я поступаю неправильно?
Добавить диаграмму:
public void MakeExcelChart(string startRange, string endRange, string chartTitle, string seriesName)
{
ExcelChart = (Excel.Chart)ExcelWBook.Charts.Add(Missing.Value, Missing.Value, Missing.Value, Missing.Value);
ExcelApp.Visible = true;
ExcelChart.HasTitle = true;
ExcelChart.ChartTitle.Text = chartTitle;
ExcelRange = ExcelWSheet.get_Range(startRange, endRange);
ExcelChart.ChartWizard(ExcelRange, Excel.XlChartType.xlColumnClustered, Missing.Value, Excel.XlRowCol.xlColumns, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
ExcelChart.ApplyDataLabels(Microsoft.Office.Interop.Excel.XlDataLabelsType.xlDataLabelsShowBubbleSizes, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
ExcelChart.ChartArea.Fill.OneColorGradient(Microsoft.Office.Core.MsoGradientStyle.msoGradientHorizontal, 1, 1);
GetSeriesCollection();
ExcelSeries = ExcelSeriesCollection.Item(1);
ExcelSeries.Name = seriesName;
}
И добавить серию:
public void AddSeries(string col1, string col2, string startRange, string endRange, string seriesName)
{
ExcelSeries = ExcelSeriesCollection.NewSeries();
ExcelSeries.HasDataLabels = true;
ExcelRange = ExcelWSheet.get_Range(col1+startRange, col1+endRange);
ExcelSeries.XValues = ExcelRange;
ExcelRange = ExcelWSheet.get_Range(col2+startRange, col2+endRange);
ExcelSeries.Values = ExcelRange;
ExcelChart.HasLegend = true;
ExcelSeries.Name = seriesName;
}