在Excel文档中,若想快速访问其他文件或网页上的相关信息,可以在工作表单元格中插入超链接。超链接可为文本或图片,链接对象除了网页或其他文档外,也可是邮件、同一文档中其他工作表单元格或网络路径。本文就将通过使用Java程序来介绍如何在Excel中添加超链接。
使用工具:Free Spire.XLS for Java(免费版)
Jar文件获取及导入:
方法1:通过官网下载获取jar包。解压后将lib文件夹下的Spire.Xls.jar文件导入Java程序。(如下图)
方法2:通过maven仓库安装导入。具体安装教程参见此网页。
【示例1】添加文本超链接
import com.spire.xls.*;
public class AddTextHyperlink {
public static void main(String[] args) {
//创建Excel文档
Workbook workbook = new Workbook();
//获取第一页工作表
Worksheet sheet = workbook.getWorksheets().get(0);
//添加链接到网页地址
HyperLink urlLink = sheet.getHyperLinks().add(sheet.getCellRange("B3"));
urlLink.setTextToDisplay("URL1:链接到网页");
urlLink.setAddress("https://segmentfault.com/");
//添加链接到邮件地址
HyperLink mailLink = sheet.getHyperLinks().add(sheet.getCellRange("E3"));
mailLink.setTextToDisplay("URL2:链接到邮件");
mailLink.setAddress("mailto:tinatang1202@gmail.com");
//添加链接到指定文档
HyperLink fileLink = sheet.getHyperLinks().add(sheet.getCellRange("B7"));
fileLink.setTextToDisplay("FileLink:链接到文档");
fileLink.setAddress("C:\\Users\\Test1\\Desktop\\Schedule.xlsx");
//添加链接到工作簿文档(此处链接到测试文档中的指定sheet中的指定单元格)
HyperLink linkToSheet = sheet.getHyperLinks().add(sheet.getCellRange("E7"));
linkToSheet.setTextToDisplay("WorkbookLink;链接到工作簿文档的指定工作表单元格");
linkToSheet.setAddress("Sheet2!B5");
//添加链接到网咯路径
HyperLink uncLink = sheet.getHyperLinks().add(sheet.getCellRange("B11"));
uncLink.setTextToDisplay("UNCLink:链接到网络路径");
uncLink.setAddress("\\\\192.168.1.108");
//保存文档
workbook.saveToFile("output/AddTextHyperlinks.xlsx", ExcelVersion.Version2013);
}
}
添加效果:
【示例2】添加图片超链接
import com.spire.xls.*;
public class AddImageHyperlink {
public static void main(String[] args) {
//创建Workbook对象并获取第一个工作表
Workbook wb = new Workbook();
Worksheet sheet = wb.getWorksheets().get(0);
//在单元格C4中添加文字
sheet.getCellRange("C3").setText(" 图片超链接");
sheet.getCellRange("C3").getStyle().setVerticalAlignment(VerticalAlignType.Top);
//添加图片到单元格C5
String picPath = "C:\\Users\\Test1\\Desktop\\Image.png";
ExcelPicture picture = sheet.getPictures().add(5,3,picPath);
//为图片设置超链接
picture.setHyperLink("https://javablogdotorg.wordpress.com/", true);
//设置行高和列宽
sheet.getColumns()[2].setColumnWidth(21);
sheet.getRows()[4].setRowHeight(36);
//保存文档
wb.saveToFile("output/AddImageHyperlink.xlsx", ExcelVersion.Version2016);
}
}
添加效果:
(本文完)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。