C# 给Excel表格添加超链接

C# 给Excel表格添加超链接

在开始前我们首先来看看Excel中的超链接类型。打开一个Excel文档,选中其中一个单元格右键,选择Hyperlink,就会出现以下对话框,从对话框中可以看出,我们可以链接到现有文档,网页,邮件地址或者是当前文档的某一个位置等。


 

了解了Excel的超链接类型,接下来就看看如何使用C#来给Excel表格添加超链接。

本方案使用了一款免费版Excel组件 Free Spire.XLS,它有一个优点就是不依赖Office,功能齐全使用起来也比较简单,需要的朋友可以从官网或者NuGet上下载它。组件安装后,创建一个C#工程,  并添加该组件安装目录下的bin文件夹里的对应dll文件到工程作为引用。这里我创建的是console application。

参考代码

1. 网页、邮件地址超链接

//加载Excel文档
Workbook workbook = new Workbook();
workbook.LoadFromFile("test.xlsx");
//获取工作表
Worksheet sheet = workbook.Worksheets[0];
 
//添加网页超链接
HyperLink UrlLink = sheet.HyperLinks.Add(sheet.Range["B3"]);
UrlLink.TextToDisplay = sheet.Range["B3"].Text;
UrlLink.Type = HyperLinkType.Url;
UrlLink.Address = "https://www.e-iceblue.com/Introduce/excel-for-net-introduce.html";
 
//添加邮件地址超链接
HyperLink MailLink = sheet.HyperLinks.Add(sheet.Range["C3"]);
MailLink.TextToDisplay = sheet.Range["C3"].Text;
MailLink.Type = HyperLinkType.Url;
MailLink.Address = "mailto:support@e-iceblue.com";
 
//保存文档
workbook.SaveToFile("UrlLink.xlsx");

2. 文档超链接

//加载Excel文档
Workbook workbook = new Workbook();
workbook.LoadFromFile("Documents.xlsx");
//获取工作表
Worksheet sheet = workbook.Worksheets[0];
 
//添加文档超链接
CellRange range = sheet.Range["B2"];
HyperLink FileLink = sheet.HyperLinks.Add(range);
FileLink.Type = HyperLinkType.File;
FileLink.TextToDisplay = sheet.Range["B2"].Text;
FileLink.Address = @"E:\ProgramFiles\SpireDoc.docx";
 
//保存文档
workbook.SaveToFile("FileLink.xlsx");

3. 链接到本文档内的指定位置

//新建Excel文档
Workbook workbook = new Workbook();
//获取工作表
Worksheet sheet = workbook.Worksheets[0];
 
//链接至本文档内的第二个工作表的B5单元格
CellRange range = sheet.Range["B5"];
HyperLink WbLink = sheet.HyperLinks.Add(range);
WbLink.Type = HyperLinkType.Workbook;
WbLink.TextToDisplay = "Goto sheet 2";
WbLink.Address = "Sheet2!B5";
 
//保存文档
workbook.SaveToFile("Wb.xlsx",ExcelVersion.Version2013);
 

4. 链接到Unc路径(网络路径)

//新建Excel文档
Workbook workbook = new Workbook();
//获取工作表
Worksheet sheet = workbook.Worksheets[0];
 
//链接到192.168.1.108
CellRange range = sheet.Range["D3"];
HyperLink UncLink = sheet.HyperLinks.Add(range);
UncLink.Type = HyperLinkType.Unc;
UncLink.TextToDisplay = "Goto 192.168.1.108";
UncLink.Address = "\\192.168.1.108";
 
//保存文档
workbook.SaveToFile("Unc.xlsx");



感谢阅读,希望能给您带来一定的帮助。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值