简介

超链接能够快速地将当前文本或图片链接到指定目标地址,在日常办公中给我们提供了极大的便利。本文将介绍在C#语言中如何通过免费版组件对Excel表格添加超链接,示例中将包含以下要点:

1.添加链接到网页(文本、图片)

1.1 链接到文本

1.2 链接到图片

2.添加链接到指定文档

3.添加链接到指定单元格

使用工具

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超链接(二)的更多相关文章

  1. C# 设置Excel超链接(一)

    在日常工作中,在编辑文档时,为了方便自己或者Boss能够实时查看到需要的网页或者文档时,需要对在Excel中输入的相关文字设置超链接,那么对于一些在Excel中插入的图片我们该怎么实现超链接呢,下面给 ...

  2. C# 设置Excel条件格式(二)

    上一篇文章中介绍了关于设置Excel条件格式,包括基于单元格值.自定义公式等应用条件格式.应用数据条条件类型格式.删除条件格式等内容.在本篇文章中将继续介绍C# 设置条件格式的方法. 要点概述: 1. ...

  3. C#中的Excel操作【1】——设置Excel单元格的内容,打开Excel文件的一种方式

    前言 作为项目管理大队中的一员,在公司里面接触最多的就是Excel文件了,所以一开始就想从Excel入手,学习简单的二次开发,开始自己的编程之路! 程序界面 功能说明 打开文件按钮,可以由使用者指定要 ...

  4. POI中设置Excel单元格格式

    引用:http://apps.hi.baidu.com/share/detail/17249059 POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWork ...

  5. poi设置excel表格边框、字体等

    POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb ...

  6. Java使用POI为Excel打水印,调整列宽并设置Excel只读(用户不可编辑)

    本文介绍在Java语言环境下,使用POI为Excel打水印的解决方案,具体的代码编写以及相关的注意事项. 需求描述: 要求通过系统下载的Excel都带上公司的水印,列宽调整为合适的宽度,并且设置为不可 ...

  7. POI HSSFCellStyle 设置 Excel 单元格样式

    POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb ...

  8. POI 设置Excel样式(转)

    POI 设置Excel样式 POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWorkbook wb = new HSSFWorkbook(); HSSFSh ...

  9. Java 设置Excel单元格格式—基于Spire.Cloud.SDK for Java

    本文介绍使用Spire.Cloud.SDK for Java来设置Excel单元格格式,包括字体.字号.单元格背景.字体下滑线.字体加粗.字体倾斜.字体颜色.单元格对齐方式.单元格边框等 一.下载SD ...

随机推荐

  1. Linux shell 编程文件比较

    文件比较允许你测试Linux 文件系统上文件和目录的状态 比较 描述 -d file  检查file是否存在并是一个目录 -e file 检查file是否存在 -f file 检查file是否存在并是 ...

  2. AWS MVC 详解

    由于新工作是在AWS PaaS平台上进行开发,为不耽误工作,先整理一下AWS MVS的使用规范,快速上手.对AWS PaaS平台的相关介绍留到以后再来补充.本文几乎是对官方学习文档的整理,有遗漏的后补 ...

  3. unittest各个组件之间的关系

    各个组件的含义: TestCase:测试用例,测试用例里面会有很多测试方法,是单元测试中最小维度的测试行为. TestSuite:测试套件,是测试用例的集合. TestFixure:测试固件,测试准备 ...

  4. hibernate框架搭建

    hibernate框架的搭建步骤: 1.导包 2.创建数据库准备表 3.书写orm元数据(对象与表的映射配置文件) 4.书写配置文件 5.书写代码测试 一.导包: 创建web-maven工程添加hib ...

  5. [安卓] 20、基于蓝牙BLE的广播包高频快速搜索

    前言: 之前介绍过很多蓝牙beacon.搜索.连接.通讯的文章.不过最近我发现:之前写的蓝牙广播包搜索的工程,搜索频率太慢,而且不能一直保持搜索状态.因此,这里探讨下高频蓝牙广播包扫描 -- 蓝牙BL ...

  6. XQuery 术语

    XQuery 术语 节点 在 XQuery 中,有七种节点:元素.属性.文本.命名空间.处理指令.注释.以及文档(根)节点.XML 文档是被作为节点树来对待的.树的根被称为文档节点或者根节点. 请看下 ...

  7. [Swift]LeetCode87. 扰乱字符串 | Scramble String

    Given a string s1, we may represent it as a binary tree by partitioning it to two non-empty substrin ...

  8. [Swift]LeetCode277. 寻找名人 $ Find the Celebrity

    Suppose you are at a party with n people (labeled from 0 to n - 1) and among them, there may exist o ...

  9. Kubernetes---Pod控制器

    Pod作为kubernetes的最基本单元,它的控制器有以下这些 Pod的控制器: 1,  RC ( ReplicationController): 2, RS(ReplicaSet) : 3, De ...

  10. Android studio使用过程中错误的解决方法

    错误一:No such property: POM_DESCRIPTION for class: org.gradle.api.publication.maven.internal.pom 刚开始出现 ...