C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 25 を表示中)
■11244 / )  VSTOを使用してのExcelグラフ作成
□投稿者/ kou (6回)-(2007/12/10(Mon) 20:02:44)

分類:[C#] 

こんにちは、いつも参考にさせていただいております。

今回どうしても解決できない課題がありまして、質問させていただきます。

開発言語:C#(VisualStudio2005)

現在、C#のGUIアプリケーション上で表示している散布図を、VSTOを使用してExcelグラフとして
出力する機能を開発しております。

単純に1データ(1シリーズ)のグラフをExcelグラフとして出力するところまではできたのですが、
下記例のように、データのプロット幅?が異なる場合の出力が上手くいきません。
例)
  X軸の値  データ1(Y軸の値) データ2(Y軸の値)
     0              2                3
     1              
     2                               2
     3              3
     4                               1 
     5                              
     6              4                3

所々がデータがない歯抜け状態なのですが、このデータをデータ範囲を一括で指定し表示をすると
マーカーは表示されるのですが、データ間の線が表示されません。(ちなみにソースではget_Range
メソッドを使用して一括で範囲指定したRangeオブジェクトを取得し、SetSourceDataで範囲を設定
しております。)

〜ソース抜粋〜
xlBooks = (Excel._Workbook)xlSheet.Parent;
xlChart = (Excel._Chart)xlBooks.Charts.Add(Missing.Value, Missing.Value, Missing.Value, Missing.Value); 
xlChart.ChartType = Excel.XlChartType.xlXYScatter;
xlRang = xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[7, 3]);
xlChart.SetSourceData(xlRang, Excel.XlRowCol.xlColumns);
〜ここまで〜

そこで、各データ毎に(X軸1,データ1値)、(X軸2,データ2値)というように、系列毎に範囲を指定し
ようと考えているのですが、実現方法を見つけることができませんでした。

どなたか、ご存知の方がおられましたらご教授願います。

乱文で申し訳ありません。不足な情報がございましたらご指摘ください。

よろしくお願いいたします。

返信 編集キー/


管理者用

- Child Tree -