Excel帳票を作成する
DioDocs for ExcelはMicrosoft Excel®で作成した帳票テンプレートを読み込み、アプリケーションで使用する入力フォームや参照するデータベースからデータを追加して、請求書・販売報告書・領収書・出荷ラベル・注文書などの包括的なExcel帳票を作成できます。
Excel帳票とは?
Excelで帳票テンプレート(帳票レイアウトとも呼ばれます)を作成して、そのテンプレートにデータを追加して作成する帳票やレポートのことを「Excel帳票」と呼んでいます。
Excel帳票のメリット
Excel帳票のデメリット
C#やVB.NETでExcel帳票を作成する方法
C#やVB.NETでExcel帳票を作成する場合には、一般的に以下のようなライブラリの利用を検討されるケースが多いかと思います。
- Microsoft.Office.Interop.Excel(Microsoft Officeのプライマリ相互運用機能アセンブリ)
- Open XML SDK
- ClosedXML
- NPOI
- EPPlus
DioDocs for ExcelでExcel帳票を作成するメリットとは?
DioDocs for ExcelでExcel帳票を作成するメリットは以下です。
- 開発環境と実行環境にMicrosoft Excel®のインストールが必要ありません
- VBAやVSTOを利用していた開発者には使い慣れたExcelのオブジェクトモデルを採用しており、学習コストが高くなく移行が難しくありません
- .NET Framework、 .NET Core、 .NET 6で動作するアプリケーションで利用できます。開発するプラットフォームごとにライブラリを切り替えたり、別途追加で購入する必要はありません
- サーバーサイドやクラウドで動作するアプリケーションでも利用できるので、Excel帳票作成のシステム化が容易です
- 作成したExcel帳票をExcelファイルだけでなくPDFファイルとして出力することもできます。上記にリストアップした他のライブラリでは別途PDF出力する方法を検討する必要があります
- セル、テーブル、シートに対してデータバインドできます。外部のデータソースと連携が容易です
- 上記にリストアップした他のライブラリよりも軽量・高速に動作します。処理速度やメモリ使用率でよりよいパフォーマンスを示します
DioDocs for ExcelでExcel帳票を作成する方法
DioDocs for Excelでは、以下の2つの方法でC#およびVB.NETのコードからExcel帳票を作成できます。
1. DioDocs for Excelの「API」を利用してExcel帳票を作成
DioDocs for Excelの「API」を使用して、使い慣れたExcelで作成した帳票テンプレートを読み込み、帳票テンプレートへデータを追加してExcel帳票を作成できます。罫線や書式、計算式などは、あらかじめ帳票テンプレートで設定しておけばコーディングの必要はありません。
- Excelで帳票テンプレートを作成
- 「発行日」に日付フォーマットを設定
- 「単価」、「金額」に通貨フォーマットを設定
- 「金額」に単価×数量を求める計算式を設定
- 「税抜」に金額の合計を求める関数を設定
- 「消費税」に税抜から消費税を求める計算式を設定
- 「総額」に税抜と消費税の合計を求める計算式を設定
作成した帳票テンプレートを読み込む
// テンプレートを読み込む
workbook.Open("excel-template.xlsx");データを追加
// 発行元情報をセルに設定
worksheet.Range["I3"].Value = data.publisher.representative; // 担当者
worksheet.Range["G8"].Value = data.publisher.companyname; // 発行元
worksheet.Range["G9"].Value = "〒" + data.publisher.postalcode; // 郵便番号
worksheet.Range["G10"].Value = data.publisher.address1; // 住所1
worksheet.Range["G11"].Value = data.publisher.address2; // 住所2
worksheet.Range["H12"].Value = data.publisher.tel; // 電話番号
worksheet.Range["G13"].Value = data.publisher.bankname; // 銀行名
worksheet.Range["H13"].Value = data.publisher.bankblanch; // 支店名
worksheet.Range["H14"].Value = data.publisher.account; // 口座番号
/* 他にも顧客情報や商品情報などをセルに設定 */ExcelやPDFファイルに保存
// Excelファイルに保存
workbook.Save("result.xlsx");
// PDFファイルに保存
workbook.Save("result.pdf", SaveFileFormat.Pdf);
2. DioDocs for Excelの「テンプレート構文」を利用してExcel帳票を作成
DioDocs for Excelの「テンプレート構文」機能を使えば、APIを利用した各セルにデータを追加するコードを書く必要はありません。帳票テンプレートに追加した「テンプレート構文」を、DioDocs for Excelが処理して適切にデータを追加します。非常に少ないコードでExcel帳票を作成できます。
- Excelで帳票テンプレートを作成
- 「顧客情報」、「発行元情報」、「商品情報」にテンプレート構文を設定
- 「金額」にテンプレート構文を設定
- 「税抜」にテンプレート構文を設定
- 「消費税」にテンプレート構文を設定
- 「総額」にテンプレート構文を設定
作成した帳票テンプレートを読み込む
// テンプレートを読み込む
workbook.Open("excel-template-with-syntax.xlsx");データを追加
// データソースを追加
workbook.AddDataSource("ds", data);テンプレート構文の処理を実行
// テンプレート処理を呼び出し
workbook.ProcessTemplate();ExcelやPDFファイルに保存
// Excelファイルに保存
workbook.Save("result-syntax.xlsx");
// PDFファイルに保存
workbook.Save("result-syntax.pdf", SaveFileFormat.Pdf);
スタートガイドでExcel帳票の作成方法を知る
DioDocs for ExcelでExcel帳票を作成する手順を詳しく紹介したスタートガイドです。
ダウンロードする(PDF形式)ヘルプでExcel帳票の作成方法を知る
DioDocs for ExcelでExcel帳票を作成する機能を詳しく紹介したドキュメントです。
ヘルプを見る