ApachePOIで罫線を引く方法です。
サンプルソース
例)B2セルに罫線を設定する
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.BorderStyle; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellStyle; 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(0); //シートの生成 Row row = sh.createRow(1); //行の生成(2行目) Cell cell= row.createCell(1); //セルの生成(B列目) cell.setCellValue("罫線"); //文字のセット //罫線を引く CellStyle cellstyle = wb.createCellStyle(); cellstyle.setBorderLeft(BorderStyle.MEDIUM); //左罫線(通常線) cellstyle.setBorderRight(BorderStyle.DASHED); //右罫線(破線) cellstyle.setBorderTop(BorderStyle.DOTTED); //上罫線(点線) cellstyle.setBorderBottom(BorderStyle.DOUBLE); //下罫線(二重線) cell.setCellStyle(cellstyle); //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(); } } } } |
罫線についてのメソッドや種類については以下をご覧ください。
罫線に関するメソッドと定数
罫線を引くメソッド
.setBorderLeft() | セルの左側の罫線 |
.setBorderRight() | セルの右側の罫線 |
.setBorderTop() | セルの上側の罫線 |
.setBorderBottom() | セルの下側の罫線 |
罫線の種類を表す定数
DASH_DOT | 長点線 |
DASH_DOT_DOT | 長点点線 |
DASHED | 破線 |
DOTTED | 点線 |
DOUBLE | 二重線 |
HAIR | 点線? |
MEDIUM | 中太線 |
MEDIUM_DASH_DOT | 長点線(中太線) |
MEDIUM_DASH_DOT_DOT | 長点点線(中太線) |
MEDIUM_DASHED | 破線(中太線) |
NONE | なし |
SLANTED_DASH_DOT | 斜長点線 |
THICK | 太線 |
THIN | 細線 |
備考
- 罫線の見た目のサンプルはExcelにてご確認ください。