จากโคดตัวอย่างเราจะสร้างไฟล์ .xlsx ดังนั้น ผู้เขียนจึงใช้ Package XSSF แต่หากใครจะสร้างไฟล์ .xls เฉยๆให้เรียกใช้ Package HSSF นะครับ
ตัวอย่างโคด
package com.java.poi.excel;
import java.io.FileOutputStream;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class SplitAndFreezeExcel {
public static void main(String[] args) {
try {
// สร้าง object ของ excel
XSSFWorkbook wb = new XSSFWorkbook();
// สร้าง sheet
XSSFSheet sheet1 = wb.createSheet("Freeze just one row");
XSSFSheet sheet2 = wb.createSheet("Freeze just one column");
XSSFSheet sheet3 = wb.createSheet("Freeze the columns and rows");
XSSFSheet sheet4 = wb.createSheet("Split Pane");
/* การแบ่งเซลล์ การล็อกแถวและคอลัมน์ ใน Excel การนับเริ่มจาก 0,1,2...
* createFreezePane(คอลัมน์ที่, แถวที่ , จำนวนคอลัมน์จากด้านซ้าย, จำนวนแถวจำกด้านบน)
*/
// การล็อกหนึ่งแถว
sheet1.createFreezePane(0, 1, 0, 1);
// การล็อกหนึ่งคอลัมน์
sheet2.createFreezePane(1, 0, 1, 0);
// การล็อกสองแถวสองคอลัมน์
sheet3.createFreezePane(2, 2);
// การแบ่งเซลล์
sheet4.createSplitPane(2000, 2000, 0, 0, XSSFSheet.PANE_LOWER_LEFT);
// path ของไฟล์
FileOutputStream out = new FileOutputStream("C:\\poi\\SplitAndFreezeExcel.xlsx");
wb.write(out);
wb.close();
out.close();
System.out.println("Excel created successfully");
} catch (Exception e) {
e.printStackTrace();
}
}
}
ไฟล์ที่ถูกสร้าง
ผลลัพธ์ที่ได้
การล็อกหนึ่งแถว
การล็อกหนึ่งคอลัมน์
การล็อกสองแถวสองคอลัมน์
การแบ่งเซลล์





0 comments:
Post a Comment