PDA

View Full Version : سوال: کمک در مورد مشکل چارت excell در c#



steven
یک شنبه 14 فروردین 1390, 23:55 عصر
سلام
در برنامه ای که نوشتم ،کد باعث می شه برنامه ی excel باز بشه , داده هایم از c# وارد محیط excel شده و بعد با کد زیر نموداری از اعدادم کشیده بشه
من در هیچ قسمت کد مشکلی ندارم فقط در قسمت ایجاد چارت
در کد زیر ابتدا داده ها انتخاب شده و بعد به خاطر اینکه نوع چارت را line قرار دادم باید نمودارم خطی بشه اما نمودار ستونی رسم می کنه ،مشکل از کجاست؟
ممنون می شم کمک کنید:

Excel._Workbook oWB;
Excel.Series oSeries;
Excel.Range oResizeRange;
Excel._Chart oChart;
//Add a Chart for the selected data.
oWB = (Excel._Workbook)oWS.Parent;
oChart = (Excel._Chart)oWB.Charts.Add(Missing.Value, Missing.Value,
Missing.Value, Missing.Value);

//Use the ChartWizard to create a new chart from the selected data.
oResizeRange = oWS.get_Range("E2:Er", Missing.Value).get_Resize(
Missing.Value, r);
oChart.ChartWizard(oResizeRange, Excel.XlChartType.xlLineMarkers, Missing.Value,
Excel.XlRowCol.xlColumns, Missing.Value, Missing.Value, Missing.Value,
Missing.Value, Missing.Value, Missing.Value, Missing.Value);
oSeries = (Excel.Series)oChart.SeriesCollection(1);
oSeries.XValues = oWS.get_Range("A2", "A6");
oChart.Location(Excel.XlChartLocation.xlLocationAs Object, oWS.Name);

//Move the chart so as not to cover your data.
oResizeRange = (Excel.Range)oWS.Rows.get_Item(10, Missing.Value);
oWS.Shapes.Item("Chart 1").Top = (float)(double)oResizeRange.Top;
oResizeRange = (Excel.Range)oWS.Columns.get_Item(2, Missing.Value);
oWS.Shapes.Item("Chart 1").Left = (float)(double)oResizeRange.Left