グローバルオプションによるセルサイズの維持
さて、概ね「使える」レベルの帳票となりましたが、もう少し細かいところを詰めていきましょう。次の表をご覧ください。
よく見ると5~6行目や10~12行目の行の高さが他と異なります。これはExcelテンプレートの元の位置のセルサイズに依存しているからと思われます。下のExcelの「ご請求額」のある行をご覧ください。
恐らく、その行の高さが反映されているものと思われます。
そこで、新たに挿入されるセルの高さや幅を、元のサイズを維持するようグローバルオプションの「KeepLineSize」を利用して指定します。
C#のプログラムに以下の通り新しいグローバルオプションを追加してください。
//Init template global settings
workbook.Names.Add("TemplateOptions.InsertMode", "EntireRowColumn");
workbook.Names.Add("TemplateOptions.KeepLineSize", "true");
workbook.ProcessTemplate();
「TemplateOptions.KeepLineSize」にtrueを指定します。実行結果は以下の通りです。
すべての行が同じ高さになっているのが見て取れます。
なおこのオプションの利用は慎重に行う必要があります。たとえば製品名が長くなった場合、改行して表示したいといった場合には不都合なケースがあるかもしれません。オプションは現時点でグローバルに一括で適用され、個別に設定できるわけではないようなので注意してください。
この記事は参考になりましたか?
- クラウド時代にマッチする、ドキュメント生成・更新APIライブラリ「DioDocs(ディオドック)」連載記事一覧
- この記事の著者
-
中村 充志(リコージャパン株式会社)(ナカムラ アツシ)
Microsoft MVP for Visual Studio and Development Technologies リコージャパン株式会社 金融事業部 金融ソリューション開発部所属。 エンタープライズ領域での業務システム開発におけるアプリケーション アーキテクト・プログラマおよび中間管理職。 業務ではWPFおよびASP.NETを用いた業務システム開発が中心。 SI案件において、テスト・保守容易性を担保した、アーキテクチャ構築を得意としている。 GitHub:https://github.com/nuitsjp Twitter:@nuits_jp 著書 『Essential Xamarin ネイティブからクロスプラットフォームまで モバイル.NETの世界』(共著) 『Extensive Xamarin ─ひろがるXamarinの世界─』(共著)
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社
この記事は参考になりましたか?
この記事をシェア
