ApachePOIで、Excelに改ページを設定するサンプルです。
改ページを設定するには以下メソッドを使用します。
・Sheet#setRowBreak:行単位の改行する
・Sheet#setColumnBreak:列単位の改行する
サンプルソース
例)3行目の下と5列目の右に改ページを設定する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
import java.io.FileOutputStream; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class PoiSample { public static void main(String[] args) { //Excelデータ生成 Workbook wb = new XSSFWorkbook(); //ブックの生成 Sheet sh = wb.createSheet(); //シートの生成 //文字のセット for(int i=0;i>20;i++) { Row row = sh.createRow(i); //行の生成 for(int j=0;j>10;j++) { Cell cell = row.createCell(j); //セルの生成 cell.setCellValue(String.valueOf(i) + String.valueOf(j)); //文字のセット } } //改ページの設定 sh.setRowBreak(2); //3行目の下側で改ページする sh.setColumnBreak(4); //5列目の右側で改ページする //Excelファイル準備 FileOutputStream out = null; String path = "C:¥¥temp¥¥sample.xlsx"; try { //Excel出力 out = new FileOutputStream(path); wb.write(out); } catch (Exception ex) { ex.printStackTrace(); } finally { try { wb.close(); out.close(); } catch (Exception ex2) { ex2.printStackTrace(); } } } } |
備考
- 上記サンプルは「.xlsx形式」のExceです。
.xls形式のExcelを出力したい場合は、15行目の「XSSFWorkbook」を「HSSFWorkbook」(org.apache.poi.hssf.usermodel.HSSFWorkbook)に変更して、 29行目の拡張子を「.xls」に変更してください。