C# 设置Excel超链接(二)
简介
超链接能够快速地将当前文本或图片链接到指定目标地址,在日常办公中给我们提供了极大的便利。本文将介绍在C#语言中如何通过免费版组件对Excel表格添加超链接,示例中将包含以下要点:
1.添加链接到网页(文本、图片)
1.1 链接到文本
1.2 链接到图片
2.添加链接到指定文档
3.添加链接到指定单元格
使用工具
- Free Spire.XLS for .NET 8.3(社区版)
- Visual Studio
PS:下载安装该组件,并添加引用该组件Spire.Xls.dll到项目程序即可(如下图),dll文件可在安装路径下的Bin文件夹中获取。

示例代码操作
1.添加链接到网页
(这里分两种情况,添加文本链接和图片链接。)
1.1添加超链接到文本字符串
步骤1:创建Excel,获取工作表
Workbook wb = new Workbook();
Worksheet sheet = wb.Worksheets[];
步骤2:获取单元格,添加文本并设置对齐方式
sheet.Range["A1"].Text = "绿色交通(Green Transpotation)";
sheet.Range["A1"].Style.VerticalAlignment = VerticalAlignType.Bottom;
步骤3:设置超链接到指定单元格
HyperLink UrlLink = sheet.HyperLinks.Add(sheet.Range["A1"]);
UrlLink.TextToDisplay = sheet.Range["A1"].Text;
UrlLink.Type = HyperLinkType.Url;
UrlLink.Address = "https://baike.baidu.com/item";
1.2 链接到图片
步骤1:初始化一个string类,加载图片
string picPath = @"C:\Users\Administrator\Desktop\images\th.jpg";
步骤2:将图片添加到A1单元格,并设置超链接
ExcelPicture picture = sheet.Pictures.Add(, , picPath);
picture.SetHyperLink("https://en.wikipedia.org/wiki/Sustainable_transport", true);
步骤3:调整图片在单元格中的位置
sheet.Columns[].ColumnWidth = ;
sheet.Rows[].RowHeight = ;
picture.TopRowOffset = ;
最后,保存文档
wb.SaveToFile("Hyperlink.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("Hyperlink.xlsx");
调试运行该项目程序后,生成文档,如下图所示:

全部代码:
using Spire.Xls; namespace TextHyperlink_XLS
{
class Program
{
static void Main(string[] args)
{
//添加文本超链接
//创建一个Workbook类对象,获取第一个工作表
Workbook wb = new Workbook();
Worksheet sheet = wb.Worksheets[]; //获取第一个单元格添加文本并设置文本对齐方式
sheet.Range["A1"].Text = "绿色交通(Green Transpotation)";
sheet.Range["A1"].Style.VerticalAlignment = VerticalAlignType.Bottom; //创建一个超链接类对象,在A1单元格设置文本超链接
HyperLink UrlLink = sheet.HyperLinks.Add(sheet.Range["A1"]);
UrlLink.TextToDisplay = sheet.Range["A1"].Text;
UrlLink.Type = HyperLinkType.Url;
UrlLink.Address = "https://baike.baidu.com/item"; //添加图片超链接。
//初始化一个string类,加载图片
string picPath = @"C:\Users\Administrator\Desktop\images\th.jpg";
//将图片添加到A1单元格,并设置超链接
ExcelPicture picture = sheet.Pictures.Add(, , picPath);
picture.SetHyperLink("https://en.wikipedia.org/wiki/Sustainable_transport", true);
//设置图片在单元格中的位置
sheet.Columns[].ColumnWidth = ;
sheet.Rows[].RowHeight = ;
picture.TopRowOffset = ; //保存并打开文件
wb.SaveToFile("Hyperlink.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("Hyperlink.xlsx");
}
}
}
2.添加链接到文档
【C#】
//实例化一个Workbook类并加载Excel文档
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\Sample.xlsx");
//获取第一个工作表
Worksheet sheet = workbook.Worksheets[]; //设置超链接到指定单元格
CellRange range = sheet.Range["E2"];
HyperLink FileLink = sheet.HyperLinks.Add(range);
FileLink.Type = HyperLinkType.File;
FileLink.TextToDisplay = sheet.Range["E2"].Text;
FileLink.Address = @"C:\Users\Administrator\Desktop\test.docx"; //保存并打开文档
workbook.SaveToFile("FileLink.xlsx");
System.Diagnostics.Process.Start("FileLink.xlsx");
效果示例:

3.添加链接到指定单元格
【C#】
//新建一个Excel类对象,加载Excel文档,获取第一个工作表
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\Sample.xlsx");
Worksheet sheet = workbook.Worksheets[]; //获取指定单元格,链接至指定文档中的特定单元格
CellRange range = sheet.Range["E2"];
HyperLink WbLink = sheet.HyperLinks.Add(range);
WbLink.Type = HyperLinkType.Workbook;
WbLink.TextToDisplay = "已清算";
WbLink.Address = "A账目明细!A1"; //保存并打开文档
workbook.SaveToFile("LinktoCell.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("LinktoCell.xlsx");
效果展示:

4.添加链接Unc路径
【C#】
//创建一个Workbook类对象,加载Excel文档,获取第二个工作表
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\Sample.xlsx");
Worksheet sheet = workbook.Worksheets[]; //添加Unc链接至A1单元格,设置连接类型为Unc,添加显示文本及链接路径
CellRange range = sheet.Range["A1"];
HyperLink UncLink = sheet.HyperLinks.Add(range);
UncLink.Type = HyperLinkType.Unc;
UncLink.TextToDisplay = "地址";
UncLink.Address = "\\192.168.1.118"; //保存文档
workbook.SaveToFile("LinktoUnc.xls");
效果示例:

以上是关于添加Excel超链接的全部内容。
<本文完>
如需转载,请注明出处。
C# 设置Excel超链接(二)的更多相关文章
- C# 设置Excel超链接(一)
在日常工作中,在编辑文档时,为了方便自己或者Boss能够实时查看到需要的网页或者文档时,需要对在Excel中输入的相关文字设置超链接,那么对于一些在Excel中插入的图片我们该怎么实现超链接呢,下面给 ...
- C# 设置Excel条件格式(二)
上一篇文章中介绍了关于设置Excel条件格式,包括基于单元格值.自定义公式等应用条件格式.应用数据条条件类型格式.删除条件格式等内容.在本篇文章中将继续介绍C# 设置条件格式的方法. 要点概述: 1. ...
- C#中的Excel操作【1】——设置Excel单元格的内容,打开Excel文件的一种方式
前言 作为项目管理大队中的一员,在公司里面接触最多的就是Excel文件了,所以一开始就想从Excel入手,学习简单的二次开发,开始自己的编程之路! 程序界面 功能说明 打开文件按钮,可以由使用者指定要 ...
- POI中设置Excel单元格格式
引用:http://apps.hi.baidu.com/share/detail/17249059 POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWork ...
- poi设置excel表格边框、字体等
POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb ...
- Java使用POI为Excel打水印,调整列宽并设置Excel只读(用户不可编辑)
本文介绍在Java语言环境下,使用POI为Excel打水印的解决方案,具体的代码编写以及相关的注意事项. 需求描述: 要求通过系统下载的Excel都带上公司的水印,列宽调整为合适的宽度,并且设置为不可 ...
- POI HSSFCellStyle 设置 Excel 单元格样式
POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb ...
- POI 设置Excel样式(转)
POI 设置Excel样式 POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWorkbook wb = new HSSFWorkbook(); HSSFSh ...
- Java 设置Excel单元格格式—基于Spire.Cloud.SDK for Java
本文介绍使用Spire.Cloud.SDK for Java来设置Excel单元格格式,包括字体.字号.单元格背景.字体下滑线.字体加粗.字体倾斜.字体颜色.单元格对齐方式.单元格边框等 一.下载SD ...
随机推荐
- vi 配置
vim ~/.vimrc source ~/.vimrc 添加相关配置 一直生效 0 行首 $ 行尾 spacebar 空格键: 合并多行 spaceba ...
- css3 js 做一个旋转音乐播放开关
我们经常会看到一些旋转音乐播放开关,今天我也写了一个分享出来,大家需要的话可以参考一下: <!DOCTYPE html> <html lang="en"> ...
- PHP算法之冒泡排序
//冒泡排序 //①思路,先比较出第一次,找一个最大的值,排到最后; //②重复count遍之后,就能得到排序; //③优化,每一次循环之后不需要再次全部重复; $array = [11,5,4,58 ...
- 分布式_zookeeper
分布式协调服务-zookeeper 分布式环境的特点 1.分布性 2.并发性 程序运行过程中,并发性操作是很常见的.比如同一个分布式系统中的多个节点,同时访问一个共享资源.数据库.分布式存储 3.无序 ...
- Redis Windows下查看版本号
1.打开redis所在目录启动 redis-server 服务器端. 2.启动 redis-cli 客户端. 3.客户端输入:info 结果如下:
- BBS论坛(十三)
13.1点击更换图形验证码 (1)front/signup.html <div class="form-group"> <div class="inpu ...
- qt之fiddler抓包
最近项目中使用到了Qt的网络库,在用的过程中也发现了不少坑和问题,本文仅仅作为记录,方便日后查阅. 因为我们整个客户端的gui都是使用qt来完成的,心想qt既然有网络库,而且真心觉着qt封装的控 ...
- 从锅炉工到AI专家(5)
图像识别基本原理 从上一篇开始,我们终于进入到了TensorFlow机器学习的世界.采用第一个分类算法进行手写数字识别得到了一个91%左右的识别率结果,进展可喜,但成绩尚不能令人满意. 结果不满意的原 ...
- HUSTOJ:Transit Tree Path
问题 D: Transit Tree Path You are given a tree with N vertices.Here, a tree is a kind of graph, and ...
- Chapter 4 Invitations——26
"I wanted to ask you something, but you sidetracked me," he chuckled. He seemed to have re ...