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");
感谢阅读,希望能给您带来一定的帮助。
还没有评论,来说两句吧...