การซ่อน Sheet ใน Excel ด้วย Apache POI

หากเรามีข้อมูลอยู่หลายๆ sheet ในไฟล์เดียวกัน บางครั้งเราอาจจะต้องการซ่อน sheet บาง sheet ในไฟล์ โดยผู้เขียนจะสร้างตัวอย่าง Sheet ไว้ทั้งหมด 4 sheet ด้วยกันครับ แล้วกำหนดให้ sheet ที่ 3 ซ่อน ดังนั้นเมื่อเราเปิดไฟล์ดังกล่าวขึ้นมา sheet ที่ 3 ก็จะถูกซ่อนครับ

จากโคดตัวอย่างเราจะสร้างไฟล์ .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 HideSheetExcel {
    public static void main(String[] args) {
        try {
            // สร้าง object ของ excel
            XSSFWorkbook wb = new XSSFWorkbook();
            // สร้าง sheet
            XSSFSheet sheet1 = wb.createSheet("Sheet 1");
            XSSFSheet sheet2 = wb.createSheet("Sheet 2");
            XSSFSheet sheet3 = wb.createSheet("Sheet 3");
            XSSFSheet sheet4 = wb.createSheet("Sheet 4");
            // เลือกซ่อน sheet3  การนับ Sheet เริ่มจาก 0,1,2....
            wb.setSheetHidden(2, true);
            
            // path ของไฟล์
            FileOutputStream out = new FileOutputStream("C:\\poi\\HideSheetExcel.xlsx");
            wb.write(out);
            wb.close();
            out.close();
            System.out.println("Excel created successfully");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

ไฟล์ที่ถูกสร้าง

 ผลลัพธ์ที่ได้ 

About Nop

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment

0 comments:

Post a Comment