バージョン

印刷範囲

このトピックは、Infragistics Excel Engine における印刷範囲のサポートの概要を説明し、使い方のコード例を示します。

トピックは以下のとおりです。

はじめに

Infragistics Excel Engine では、Microsoft Excel にみられる印刷範囲機能のように、1 つ以上の四角形領域 (重ならないこと) を印刷範囲として設定できます。これらの範囲は、ワークシートの印刷時にユーザー自身のページ上に置かれます。さらに、印刷範囲に挿入される改ページは、その特定の印刷範囲にのみ適用されます。

Note

注:

印刷範囲を構成するときは、以下の要件を満たす必要があります。満たされないと例外がスローされます:

  1. ワークシート上の印刷範囲コレクションには、印刷オプションが属するワークシートからの領域のみが含まれます。

  2. 範囲は重なってはなりません。

印刷範囲の作成

概要

以下のコード例では、以下のパラメータでワークブックを使用して 2 つの印刷範囲を作成します:

  • ワークブック名: output.xls

  • ワークシート名: PrintAreas

  • 印刷範囲 1: A1:I11

  • 印刷範囲 2: A1:I11

プレビュー

以下は最終結果のプレビューです。

ExcelEngine Print Areas 01.png

図1: コード例の最終結果を示す Microsoft Excel: 印刷範囲は 2 カ所

コード例

C# の場合:

// PrintAreas というワークシートを持つワークブックを作成します
Infragistics.Documents.Excel.Workbook workbook = new Infragistics.Documents.Excel.Workbook();
Infragistics.Documents.Excel.Worksheet worksheet = workbook.Worksheets.Add("PrintAreas");
// 印刷範囲: A1: I11 を定義するワークシート領域を作成します
WorksheetRegion wsr_one = worksheet.GetRegion("A1:I11");
// 印刷範囲: A13:I23 を定義する別のワークシート領域を作成します
WorksheetRegion wsr_two = worksheet.GetRegion("A13:I23");
// 印刷範囲の領域をワークシートに追加します
worksheet.PrintOptions.PrintAreas.Add(wsr_one);
worksheet.PrintOptions.PrintAreas.Add(wsr_two);
try
{
    // 作成したワークブックを保存します
    workbook.Save("output.xls");
    // ワークブックを開いて結果を表示します
    System.Diagnostics.Process.Start("output.xls");
}
catch
{
    MessageBox.Show("If the workbook is open, please close it before saving.", "Save Error",
        MessageBoxButtons.OK, MessageBoxIcon.Stop);
}

Visual Basic の場合:

' PrintAreas というワークシートを持つワークブックを作成します
Dim workbook As New Infragistics.Documents.Excel.Workbook()
Dim worksheet As Infragistics.Documents.Excel.Worksheet = workbook.Worksheets.Add("PrintAreas")
' 印刷範囲を定義するワークシート領域を作成します: A1: I11
Dim wsr_one As WorksheetRegion = worksheet.GetRegion("A1:I11")
' 印刷範囲を定義する別のワークシート領域を作成します: A13:I23
Dim wsr_two As WorksheetRegion = worksheet.GetRegion("A13:I23")
' 印刷範囲の領域をワークシートに追加します
worksheet.PrintOptions.PrintAreas.Add(wsr_one)
worksheet.PrintOptions.PrintAreas.Add(wsr_two)
Try
    ' 作成したワークブックを保存します。
    workbook.Save("output.xls")
    ' ワークブックを開いて結果を表示します。
    System.Diagnostics.Process.Start("output.xls")
Catch
    MessageBox.Show("If the workbook is open, please close it before saving.", "Save Error", MessageBoxButtons.OK, MessageBoxIcon.[Stop])
End Try