ワークシートにハイパーリンクを挿入する
Contents
[
Hide
]
Aspose.Cells - ワークシートにハイパーリンクを挿入する
同一ファイル内のセルにリンクを追加する
セルにハイパーリンクを追加するには、HyperlinkコレクションのAddメソッドを呼び出します。Addメソッドは、内部および外部の両方のハイパーリンクに対して機能します。
Java
//Obtaining the reference of the first worksheet.
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet sheet = worksheets.get(0);
HyperlinkCollection hyperlinks = sheet.getHyperlinks();
//Adding a hyperlink to a URL at "A1" cell
hyperlinks.add("A1",1,1,"http://www.aspose.com");
//============ Link to Cell =================
//Setting a value to the "A1" cell
Cells cells = sheet.getCells();
Cell cell = cells.get("A2");
cell.setValue("Link to B9");
setFormatting(cell);
hyperlinks = sheet.getHyperlinks();
//Adding an internal hyperlink to the "B9" cell of the other worksheet "Sheet1" in
//the same Excel file
hyperlinks.add("A2",1 ,1, "Sheet1!B9");
外部ファイルへのリンクを追加する
外部Excelファイルにハイパーリンクを追加することが可能で、HyperlinksコレクションのAddメソッドを呼び出します。Addメソッドには以下のパラメータが必要です:
- セル名、ハイパーリンクが追加されるセルの名前。
- 行数、このハイパーリンク範囲の行数。
- 列数、このハイパーリンク範囲の列数。
- URL、対象のアドレス、外部のExcelファイル。
Java
cell = cells.get("A3");
cell.setValue("External Link");
setFormatting(cell);
hyperlinks = sheet.getHyperlinks();
//Adding a link to the external file
hyperlinks.add("A3", 1, 1, "book1.xls");
Apache POI SS - HSSF XSSF - ワークシートにハイパーリンクを挿入する
Java
CellStyle hlink_style = wb.createCellStyle();
Font hlink_font = wb.createFont();
hlink_font.setUnderline(Font.U_SINGLE);
hlink_font.setColor(IndexedColors.BLUE.getIndex());
hlink_style.setFont(hlink_font);
Cell cell;
Sheet sheet = wb.createSheet("Hyperlinks");
//URL
cell = sheet.createRow(0).createCell((short)0);
cell.setCellValue("URL Link");
Hyperlink link = createHelper.createHyperlink(Hyperlink.LINK_URL);
link.setAddress("http://poi.apache.org/");
cell.setHyperlink(link);
cell.setCellStyle(hlink_style);
//link to a file in the current directory
cell = sheet.createRow(1).createCell((short)0);
cell.setCellValue("File Link");
link = createHelper.createHyperlink(Hyperlink.LINK_FILE);
link.setAddress("link1.xls");
cell.setHyperlink(link);
cell.setCellStyle(hlink_style);
//e-mail link
cell = sheet.createRow(2).createCell((short)0);
cell.setCellValue("Email Link");
link = createHelper.createHyperlink(Hyperlink.LINK_EMAIL);
//note, if subject contains white spaces, make sure they are url-encoded
link.setAddress("mailto:poi@apache.org?subject=Hyperlinks");
cell.setHyperlink(link);
cell.setCellStyle(hlink_style);
//link to a place in this workbook
//create a target sheet and cell
Sheet sheet2 = wb.createSheet("Target Sheet");
sheet2.createRow(0).createCell((short)0).setCellValue("Target Cell");
cell = sheet.createRow(3).createCell((short)0);
cell.setCellValue("Worksheet Link");
Hyperlink link2 = createHelper.createHyperlink(Hyperlink.LINK_DOCUMENT);
link2.setAddress("'Target Sheet'!A1");
cell.setHyperlink(link2);
cell.setCellStyle(hlink_style);