2007年11月29日木曜日

Excelによる円グラフの描画

先ほどアップしたスクリプトは円グラフのサンプルとしては分かりづらかったので、よりシンプルなものを作成しました。

なお棒グラフの描画はHSP-NEXTさんにサンプルがあります。
// 参考
// ・日経ソフトウェア 2008年1月号
// ・HSP-NEXT HSPサンプル蔵(COMオブジェクト編)
//      http://hspnext.com/hspkura/hspkura11.htm

    newcom xlApp, "Excel.Application"
    xlApp("Visible") = 1            // ウィンドウを表示
    xlApp("DisplayAlerts") = 0      // 警告メッセージを表示させない
    xlBooks = xlApp("Workbooks")    // Workbooks コレクション取得
    xlBook = xlBooks("Add")         // ワークブックを追加
    xlSheet = xlBook("Worksheets""sheet1")    // シート取得

    // データの書き込み
    repeat 5
        xlRange = xlSheet("Range""A" + (cnt + 1))     // 代入先セルの指定
        xlRange("Value") = rnd(70) + 30                 // 値の代入
    loop

    // グラフの作成
    xlCharts = xlApp("Charts")
    xlChart = xlCharts("Add")
    xlChart("ChartType") = 5                // 円グラフ(xlPie = 5)
    xlRange = xlSheet("Range""A1:A5")     // データの範囲
    xlChart -> "SetSourceData" xlRange, 2   // グラフの元データを指定
    xlChart -> "Location" 2"sheet1"       // グラフの位置(既存のシートに貼り付け)

    // COMオブジェクト型変数の破棄
    delcom xlRange  : delcom xlChart
    delcom xlCharts : delcom xlSheet
    delcom xlBook   : delcom xlBooks
    delcom xlApp

    stop

0 件のコメント: