リスナーで印刷範囲が設定できない

616 views
Skip to first unread message

seki

unread,
Dec 10, 2010, 6:08:19 AM12/10/10
to excella
関です。いつもお世話になっております。

現在、シート数が複数(可変)の帳票作成を進めています。
その帳票で、印刷範囲と行のタイトルの設定が必要となった為、カスタムのリスナークラスを作成して
以下のようにpostBookParseメソッドでそれぞれ設定をしてみました。

public void postBookParse(Workbook workbook, ReportBook reportBook) {
// 行のタイトルの設定 ⇒ OK
workbook.setRepeatingRowsAndColumns(0, -1, -1, 0, 20);
// 印刷範囲の設定 ⇒ NG
workbook.setPrintArea(0, "B:I");
// 確認 ⇒
System.out.println(workbook.getPrintArea(0));
}

その結果、行のタイトルは設定できたのですが、印刷範囲の方は設定できませんでした。
("B:I"の文字列を色々変えたり、int指定のsetPrintAreaメソッドも試してみたのですが、
出力したExcelには反映されませんでした。)

ExCella Reportsリファレンスの制限事項を見ますとPOIで印刷範囲を設定することで回避可能と
記載されていますが、何か注意しなければならないことや間違いやすい箇所等ありましたら教えて
いただけないでしょうか?

ちなみに環境は以下の通りです。
・Excel2003(.xls形式)
・excella-reports-1.4.jar
・poi-3.7.jar

以上、宜しくお願い致します。

横井@bbreak

unread,
Dec 13, 2010, 12:47:56 AM12/13/10
to excella
横井です。

確かにExcelの「名前の管理」でみると「Print_Area」は設定されているのに効いていませんね。

「名前の管理」に出ていれば使い方としては正しはずですが…
引き続き調べて何か分かったら追記します。

以上、よろしくお願いします。
Reply all
Reply to author
Forward
0 new messages