CodeZine(コードジン)

特集ページ一覧

【DioDocs帳票生成ハンズオン】強力な新機能「テンプレート構文」を使ってみる

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

目次

グローバルオプションによるセルサイズの維持

 さて、概ね「使える」レベルの帳票となりましたが、もう少し細かいところを詰めていきましょう。次の表をご覧ください。

一部の行の高さが異なる
一部の行の高さが異なる

 よく見ると5~6行目や10~12行目の行の高さが他と異なります。これはExcelテンプレートの元の位置のセルサイズに依存しているからと思われます。下のExcelの「ご請求額」のある行をご覧ください。

18行目の高さが違う
18行目の高さが違う

 恐らく、その行の高さが反映されているものと思われます。

 そこで、新たに挿入されるセルの高さや幅を、元のサイズを維持するようグローバルオプションの「KeepLineSize」を利用して指定します。

 C#のプログラムに以下の通り新しいグローバルオプションを追加してください。

//Init template global settings
workbook.Names.Add("TemplateOptions.InsertMode", "EntireRowColumn");
workbook.Names.Add("TemplateOptions.KeepLineSize", "true");

workbook.ProcessTemplate();

 「TemplateOptions.KeepLineSize」にtrueを指定します。実行結果は以下の通りです。

すべての行が同じ高さに
すべての行が同じ高さに

 すべての行が同じ高さになっているのが見て取れます。

 なおこのオプションの利用は慎重に行う必要があります。たとえば製品名が長くなった場合、改行して表示したいといった場合には不都合なケースがあるかもしれません。オプションは現時点でグローバルに一括で適用され、個別に設定できるわけではないようなので注意してください。


  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

バックナンバー

連載:クラウド時代にマッチする、ドキュメント生成・更新APIライブラリ「DioDocs(ディオドック)」
All contents copyright © 2005-2020 Shoeisha Co., Ltd. All rights reserved. ver.1.5