- Hyperlink.LINK_DOCUMENT : ลิงค์แบบอ้างอิง Sheet อื่นในไฟล์เดียวกัน
- Hyperlink.LINK_EMAIL : ลิงค์แบบส่งเมล์
- Hyperlink.LINK_FILE : ลิงค์แบบอ้างอิงไฟล์ ซึ่งไฟล์ต้องอยู่ในโฟรเดอร์เดียวกัน
- Hyperlink.LINK_URL : ลิงค์แบบอ้างอิง URL
ตัวอย่างโคด
package com.java.poi.excel;
import java.io.FileOutputStream;
import org.apache.poi.common.usermodel.Hyperlink;
import org.apache.poi.hssf.util.HSSFColor;
import org.apache.poi.ss.usermodel.CreationHelper;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFCellStyle;
import org.apache.poi.xssf.usermodel.XSSFFont;
import org.apache.poi.xssf.usermodel.XSSFHyperlink;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class LinkExcel {
public static void main(String[] args) {
try {
// สร้าง object ของ excel
XSSFWorkbook wb = new XSSFWorkbook();
// สร้าง sheet
XSSFSheet spreadsheet = wb.createSheet("Font Excel");
// สร้างแถวแรก การนับแถวเริ่มจาก 0,1,2....
XSSFRow row = spreadsheet.createRow(0);
CreationHelper createHelper = wb.getCreationHelper();
// สร้าง style
XSSFCellStyle hlinkstyle = wb.createCellStyle();
XSSFFont hlinkfont = wb.createFont();
hlinkfont.setUnderline(XSSFFont.U_SINGLE);
hlinkfont.setColor(HSSFColor.BLUE.index);
hlinkstyle.setFont(hlinkfont);
//URL Link
row = spreadsheet.createRow(1);
XSSFCell cell = row.createCell((short) 1);
cell.setCellValue("URL Link");
XSSFHyperlink link = (XSSFHyperlink)createHelper.createHyperlink(Hyperlink.LINK_URL);
link.setAddress("http://www.programminghunter.blogspot.com/" );
cell.setHyperlink((XSSFHyperlink) link);
cell.setCellStyle(hlinkstyle);
//link แบบเชื่อมไฟล์ที่อยู่ในที่เดียวกัน
row = spreadsheet.createRow(2);
cell = row.createCell((short) 1);
cell.setCellValue("File Link");
link = (XSSFHyperlink)createHelper.createHyperlink(Hyperlink.LINK_URL);
link.setAddress("CellStyleExcel.xlsx");
cell.setHyperlink(link);
cell.setCellStyle(hlinkstyle);
//e-mail link
row = spreadsheet.createRow(3);
cell = row.createCell((short) 1);
cell.setCellValue("Email Link");
link = (XSSFHyperlink)createHelper.createHyperlink(Hyperlink.LINK_EMAIL);
link.setAddress("mailto:example@email?subject=Hyperlink");
cell.setHyperlink(link);
cell.setCellStyle(hlinkstyle);
// path ของไฟล์
FileOutputStream out = new FileOutputStream("C:\\poi\\LinkExcel.xlsx");
wb.write(out);
wb.close();
out.close();
System.out.println("Excel created successfully");
} catch (Exception e) {
e.printStackTrace();
}
}
}
ไฟล์ที่ถูกสร้าง
ผลลัพธ์ที่ได้


0 comments:
Post a Comment