グローバルオプションによるセルサイズの維持
さて、概ね「使える」レベルの帳票となりましたが、もう少し細かいところを詰めていきましょう。次の表をご覧ください。
よく見ると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を指定します。実行結果は以下の通りです。
すべての行が同じ高さになっているのが見て取れます。
なおこのオプションの利用は慎重に行う必要があります。たとえば製品名が長くなった場合、改行して表示したいといった場合には不都合なケースがあるかもしれません。オプションは現時点でグローバルに一括で適用され、個別に設定できるわけではないようなので注意してください。