DioDocs for Excel
DioDocs for Excel
チャートシート
機能 > チャート > チャートシート

データとチャートを1 ページに収めて表示するのが難しい場合があります。

DioDocs for Excelでは、チャートを別のシートに追加することが可能です。本機能は、「チャートシート」と呼ばれます。ワークシートとは異なり、チャートシートにチャートのみが含まれます。これにより、同じワークシートに通常のデータと埋め込みチャートが雑然となることを回避できます。また、チャートシートを使用すると、チャートを詳しく参照する、および印刷する時にページの向きを変更することが可能です。

IWorksheets.Add(SheetType.Chart)メソッドを使用して、ワークブックにチャートシートを作成できます。チャートシートにチャートを追加するには、IShapes.AddChartメソッドを使用します。また、チャートシートにチャートが存在しないと、ファイルを保存する時にエラーが発生することに注意してください。

以下のテーブルに、チャートシートに関連付けられているメソッドとプロパティについて説明します。

メソッドとプロパティ 説明
Add(SheetType.Chart) IWorksheetsインタフェースのAddメソッドには、SheetTypeのオーバーロードがあります。だから、チャートシートを追加するには、SheetType.Chartを使用する必要があります。
AddChart

IShapesインタフェースのAddChartメソッドは、チャートシートにグラフを追加します。

メモ:各チャートシートにチャートが存在しない場合は、ファイルを保存する時にエラーが発生します。
AddShape IChartインタフェースのAddShapeメソッドは、チャートシートに複数の図形を追加します。サポートされる図形は、チャート、画像、コネクタなどです。また、最初のチャートがメインチャートであり、他の図形がファイルを保存するときに破棄されます。
SheetType IWorksheetインタフェースのSheetTypeプロパティは、アクティブシートのタイプ(ワークシートまたはチャートシート)を取得します。
Delete IShapeインタフェースのDeleteメソッドは、チャートシートからチャートを、またはチャートから図形を削除します。
Copy IWorksheetインタフェースのCopyメソッドは、新しいチャートシートをコピーします。
Move IWorksheetインタフェースのMoveメソッドは、チャートシートを現在のワークブックの新しい場所または新しいワークブックに移動します。

チャートシートの操作については、以下のセクションを参照してください。

チャートシートの追加

チャートシートを追加する方法については、次のサンプルコードを参照してください。

C#
コードのコピー
public Workbook AddChartSheet()
{
    Workbook workbook = new Workbook();
    IWorksheet worksheet = workbook.Worksheets[0];

    worksheet.Range["A1:E5"].Value = new object[,]
    {
        {"Region", "Q1", "Q2","Q3","Q4"},
        {"North", 100, 300, 200, 600},
        {"East", 400, 200, 500, 800},
        {"South", 300, 500, 100, 400},
        {"West", 400, 200, 600, 100},
    };

    // チャートシートを追加します
    IWorksheet chartSheet = workbook.Worksheets.Add(SheetType.Chart);

    // チャートシートにメインチャートを追加します
    IShape mainChart = chartSheet.Shapes.AddChart(ChartType.ColumnClustered, 100, 100, 200, 200);
    mainChart.Chart.ChartTitle.Text = "Sales 2018-2019";
    mainChart.Chart.SeriesCollection.Add(worksheet.Range["A1:E5"]);

    // メインチャートに図形を追加します
    IShape shape = mainChart.Chart.AddShape(AutoShapeType.Rectangle, 50, 20, 100, 100);
    shape.TextFrame.TextRange.Add("This chart displays the regional quarterly sales for the year 2018-2019");

    // ワークブックを保存します
    workbook.Save("Chartsheet.xlsx");

    return workbook;
}

チャートシートのコピーまたは移動

チャートシートをコピーまたは移動する方法については、次のサンプルコードを参照してください。

C#
コードのコピー
public void CopyMoveChartSheet()
{
    Workbook workbook = AddChartSheet();

    // 新規ワークシートを追加します
    workbook.Worksheets.Add(SheetType.Worksheet);
    workbook.Worksheets.Add(SheetType.Worksheet);

    // チャートシートにアクセスします
    IWorksheet chartSheet = workbook.Worksheets[1];

    // チャートシートをワークブックの末尾に追加して保存します
    chartSheet.Copy();
    workbook.Save("CopyChartsheet.xlsx");

    // チャートシートをワークブックの末尾に移動します
    chartSheet.Move();
    workbook.Save("MoveChartsheet.xlsx");
}

チャートシートの削除

チャートシートを削除する方法については、次のサンプルコードを参照してください。

C#
コードのコピー
public void DeleteChartSheet()
{
    Workbook workbook = AddChartSheet();

    // チャートシートにアクセスします
    IWorksheet chartSheet = workbook.Worksheets[1];

    // チャートシートを削除します
    chartSheet.Delete();

    // ワークブックを保存します
    workbook.Save("NoChartsheet.xlsx");
}