エクスポートするExcelファイルに印刷時の用紙サイズを設定する方法は?

文書番号 : 37827     文書種別 : 使用方法     登録日 : 2015/10/09     最終更新日 : 2017/03/24
文書を印刷する
対象製品
ActiveReports for .NET 9.0J
詳細
Excelファイルの用紙サイズを設定する方法は、出力方法によって異なります。
  1. エクスポートフィルタの場合
  2. 描画拡張機能の場合
  3. SpreadBuilderの場合


エクスポートフィルタの場合

エクスポートフィルタを使用してExcelエクスポートを行う場合には、XlsExportクラスのXlsPageSettingsクラスPaperSizeOrientationプロパティで、Excelファイルの用紙サイズや方向を、任意に指定することが可能です。

◆サンプルコード(VB.NET)
Dim rpt As New rptSample()
rpt.Run(False)

Dim xlsExport1 As New GrapeCity.ActiveReports.Export.Excel.Section.XlsExport()

' Excelファイルの用紙サイズ・方向を「A3横」に設定します。
xlsExport1.PageSettings.PaperSize _
  = GrapeCity.ActiveReports.Export.Excel.Section.PaperSizes.A3
xlsExport1.PageSettings.Orientation _
  = GrapeCity.ActiveReports.Document.Section.PageOrientation.Landscape

' レポートをExcelファイルにエクスポートします。
xlsExport1.Export(rpt.Document, "sample.xls")

◆サンプルコード(C#)
rptSample rpt = new rptSample();
rpt.Run(false);

GrapeCity.ActiveReports.Export.Excel.Section.XlsExport xlsExport1
  = new GrapeCity.ActiveReports.Export.Excel.Section.XlsExport();

// Excelファイルの用紙サイズ・方向を「A3横」に設定します。
xlsExport1.PageSettings.PaperSize
  = GrapeCity.ActiveReports.Export.Excel.Section.PaperSizes.A3;
xlsExport1.PageSettings.Orientation
  = GrapeCity.ActiveReports.Document.Section.PageOrientation.Landscape;

// レポートをExcelファイルにエクスポートします。
xlsExport1.Export(rpt.Document, "sample.xls");


なお、これらのプロパティを設定しない場合、レポートの用紙サイズ・方向がExcelファイルの印刷時の設定に反映されます。

XlsExportクラスやXlsPageSettingsクラスの詳細については、製品ヘルプの以下のトピックをご参照ください。

ActiveReportsユーザーガイド
 - 概念
  - エクスポート
   - エクスポートフィルタ
    - Excelエクスポート
    - エクスポート(エクスポートフィルタ)
 - サンプルとチュートリアル
  - チュートリアル
   - ページレポート/RDLレポートのチュートリアル
    - エクスポート
     - カスタムWebのエクスポート(ページレポート/RDLレポート)
   - セクションレポートのチュートリアル
    - カスタムWebのエクスポート
クラスライブラリリファレンス
 - GrapeCity.ActiveReports.Export.Excel.v9 アセンブリ
  - 名前空間
   - GrapeCity.ActiveReports.Export.Excel.Section 名前空間
    - クラス
     - XlsExport
      - プロパティ
       - PageSettings プロパティ
     - XlsPageSettings


描画拡張機能の場合

描画拡張機能を使用してExcelエクスポートを行う場合には、ExcelRenderingExtensionSettingsクラスのPageSettingsプロパティPaperSizeOrientationプロパティで、Excelファイルの用紙サイズや方向を、任意に指定することが可能です。

◆サンプルコード(VB.NET)
Imports GrapeCity.ActiveReports.Export.Excel.Page
...
' エクスポートするレポートを読み込み、ドキュメントオブジェクトを生成します。
Dim rpt As New GrapeCity.ActiveReports.PageReport(New System.IO.FileInfo("..¥..¥PageReport1.rdlx"))
Dim pDoc As New GrapeCity.ActiveReports.Document.PageDocument(rpt)

' 出力先のディレクトリを作成します。
Dim outputDirectory As New System.IO.DirectoryInfo("..¥..¥Output")
outputDirectory.Create()

' Excelファイルの用紙サイズ・方向を「A3横」に設定します。
Dim excelSetting As New ExcelRenderingExtensionSettings()
excelSetting.PageSettings.PaperSize = ExcelRenderingExtensionPageSettings.PaperSizes.A3
excelSetting.PageSettings.Orientation = ExcelRenderingExtensionPageSettings.PageOrientation.Landscape

' レポートをExcelファイルにエクスポートします。
Dim excelRenderingExtension As New ExcelRenderingExtension()
Dim outputProvider _
  As New GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider(outputDirectory, "sample")
pDoc.Render(excelRenderingExtension, outputProvider, excelSetting.GetSettings())

◆サンプルコード(C#)
using GrapeCity.ActiveReports.Export.Excel.Page;
...
// エクスポートするレポートを読み込み、ドキュメントオブジェクトを生成します。
var rpt = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo(@"..¥..¥PageReport1.rdlx"));
var pDoc = new GrapeCity.ActiveReports.Document.PageDocument(rpt);

// 出力先のディレクトリを作成します。
System.IO.DirectoryInfo outputDirectory = new System.IO.DirectoryInfo(@"..¥..¥Output");
outputDirectory.Create();

// Excelファイルの用紙サイズ・方向を「A3横」に設定します。
var excelSetting = new ExcelRenderingExtensionSettings();
excelSetting.PageSettings.PaperSize = ExcelRenderingExtensionPageSettings.PaperSizes.A3;
excelSetting.PageSettings.Orientation = ExcelRenderingExtensionPageSettings.PageOrientation.Landscape;

// レポートをExcelファイルにエクスポートします。
var excelRenderingExtension = new ExcelRenderingExtension();
var outputProvider
  = new GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider(outputDirectory, "sample");
pDoc.Render(excelRenderingExtension, outputProvider, excelSetting.GetSettings());


ExcelRenderingExtensionSettingsクラスの詳細については、製品ヘルプの以下のトピックをご参照ください。

ActiveReportsユーザーガイド
 - 概念
  - エクスポート
   - 描画拡張機能
    - Excelへの描画
クラスライブラリリファレンス
 - GrapeCity.ActiveReports.Export.Excel.v9 アセンブリ
  - 名前空間
   - GrapeCity.ActiveReports.Export.Excel.Page 名前空間
    - クラス
     - ExcelRenderingExtensionPageSettings
     - ExcelRenderingExtensionSettings
      - プロパティ
       - PageSettings プロパティ


SpreadBuilderの場合

SpreadBuilder機能を使用してExcelエクスポートを行う場合には、GrapeCity.SpreadBuilder.Printing名前空間のPageSetupクラスPaperSizeOrientationプロパティで、Excelファイルの用紙サイズや方向を、任意に指定することが可能です。

◆サンプルコード(VB.NET)
Dim sb As New GrapeCity.SpreadBuilder.Workbook
' 新規シートを追加します。
sb.Sheets.AddNew()

With sb.Sheets(0)
  ' 用紙サイズをA3横に設定します。
  .PageSetup.PaperSize = System.Drawing.Printing.PaperKind.A3
  .PageSetup.Orientation = _
    GrapeCity.SpreadBuilder.Printing.PagePrintOrientation.Landscape

  ' シートの余白を設定します。
  ' 各***Marginプロパティの単位は、Point(1/72インチ)です。

  .PageSetup.LeftMargin = 36
  .PageSetup.RightMargin = 36
  .PageSetup.TopMargin = 36
  .PageSetup.BottomMargin = 36
  .PageSetup.HeaderMargin = 72
  .PageSetup.FooterMargin = 72

  .Columns(0).Width = 2 * 1440
  .Cell(0, 0).SetValue("AAAA株式会社" & vbNewLine & "BBBB株式会社")
  .Cell(0, 0).FontName = "MS ゴシック"

  ' 「折り返して全体を表示する」を指定します。
  .Cell(0, 0).WrapText = True
End With

' ワークブックをExcelファイルへ保存します。
sb.Save("C:¥work¥test.xls")

◆サンプルコード(C#)
GrapeCity.SpreadBuilder.Workbook sb = new DataDynamics.SpreadBuilder.Workbook();
// 新規シートを追加します。
sb.Sheets.AddNew();

// 用紙サイズをB4縦に設定します。
sb.Sheets[0].PageSetup.PaperSize = System.Drawing.Printing.PaperKind.B4;
sb.Sheets[0].PageSetup.Orientation
    = GrapeCity.SpreadBuilder.Printing.PagePrintOrientation.Portrait;

// シートの余白を設定します。
// 各***Marginプロパティの単位は、Point(1/72インチ)です。

sb.Sheets[0].PageSetup.LeftMargin = 36;
sb.Sheets[0].PageSetup.RightMargin = 36;
sb.Sheets[0].PageSetup.TopMargin = 36;
sb.Sheets[0].PageSetup.BottomMargin = 36;
sb.Sheets[0].PageSetup.HeaderMargin = 72;
sb.Sheets[0].PageSetup.FooterMargin = 72;

sb.Sheets[0].Columns(0).Width = 2 * 1440;
sb.Sheets[0].Cell(0, 0).SetValue("AAAA株式会社¥r¥nBBBB株式会社");
sb.Sheets[0].Cell(0, 0).FontName = "MS ゴシック";

// 「折り返して全体を表示する」を指定します。
sb.Sheets[0].Cell(0, 0).WrapText = true;

// ワークブックをExcelファイルへ出力します。
sb.Save(@"C:¥work¥test.xls");


SpreadBuilder機能やPageSetupクラスの詳細については、製品ヘルプの以下のトピックをご参照ください。

ActiveReportsユーザーガイド
 - サンプルとチュートリアル
  - チュートリアル
   - 共通のチュートリアル(ページレポート、RDLレポートとセクションレポート)
    - エクスポート
     - SpreadBuilderの使用
クラスライブラリリファレンス
 - GrapeCity.ActiveReports.Export.Excel.v9 アセンブリ
  - 名前空間
   - GrapeCity.SpreadBuilder.Printing 名前空間
    - クラス
     - PageSetup
関連情報
キーワード
HowTo 印刷・プレビュー エクスポート