2017-10-13 9 views
1

現在、Excel Interopを使用してレポートを作成するProgrammで作業しています。したがって、私は以下のように折れ線グラフを作成するつもり:c#を使用したチャートの行/列の切り替え

desired Output

1がここで見ることができるように、私はマイルストーンとの関係でnumとdenomの明確な開発を持っています。 ExcelでchartRangeとして自分の値を選択すると、この図が表示されます。ただし、プログラムでそれを行うとき、私はこれを取得する(正確に同じ範囲を選択):

current output

さて、あなたは、選択したデータを見ることができます。 Excel(または私が知りません)は、マイルストーン行を軸として認識できません。ダイアグラムを右クリック - >データを選択 - >行/列を変更すると、私の右のグラフが表示されます。

これらの行/列を切り替えるための命令や、各軸の範囲を定義するための何らかの方法を誰かが知っていますか? https://www.codeproject.com/questions/870177/csharp-excel-chart-x-axis-category-labels

:原因私が偶然見つけました。この記事に私はそれを解決し

答えて

0

アンディ

自分を事前に

 Excel.Application myExcelApplication; 
     Excel.Workbook myExcelWorkbook; 

     object misValue = System.Reflection.Missing.Value; 

     myExcelApplication = null; 
     myExcelApplication = new Excel.Application(); 
     myExcelApplication.Visible = true; 
     myExcelApplication.ScreenUpdating = true; 

     myExcelWorkbook = (Excel.Workbook)(myExcelApplication.Workbooks.Add(misValue)); 

Excel.Worksheet newWorksheet; 
      newWorksheet = (Excel.Worksheet)myExcelApplication.Worksheets.Add(); 
      newWorksheet.Name = requestedVehicles[m]; 
      newWorksheet = (Excel.Worksheet)myExcelWorkbook.ActiveSheet; 

      Excel.Range chartRange = myExcelApplication.get_Range("B2", endrange + 4); 

      Excel.ChartObjects xlCharts = (Excel.ChartObjects)newWorksheet.ChartObjects(Type.Missing); 
      Excel.ChartObject myChart = (Excel.ChartObject)xlCharts.Add(100, 20, 500, 400); 
      Excel.Chart chartPage = myChart.Chart; 
      chartPage.HasTitle = true; 
      chartPage.ChartTitle.Text = "num/denom"; 
      chartPage.SetSourceData(chartRange, Excel.XlRowCol.xlColumns); 
      chartPage.ChartType = Excel.XlChartType.xlXYScatterLines; 

おかげで、 :

私はここに私のコードの関連部分を添付しました

問題は、定義された範囲の左上のセルが空ではないことを示しています。Excelはそれがデータ系列であると想定していたと想定していました。

関連する問題