C# 设置Excel超链接(一)
在日常工作中,在编辑文档时,为了方便自己或者Boss能够实时查看到需要的网页或者文档时,需要对在Excel中输入的相关文字设置超链接,那么对于一些在Excel中插入的图片我们该怎么实现超链接呢,下面给大家分享一个方法:
首先简单了解一下一款叫Spire.XLS的组件,这个组件是由E-iceblue公司发布的一款独立的Excel组件,它的最大优点在于不依赖Microsoft Excel, 可以用在各种 .NET 框架中,包括 ASP.NET 和 Windows Forms 等相关的 .NET 应用程序,功能齐全,而且易于使用。有兴趣的朋友可以上E-iceblue官网了解详细内容,也可以在该网站上下载免费版Excel组件。
使用C#为Excel中的图片进行超链接,可以参考我下面的操作步骤,这里需要使用到一些代码,但只需要几步就可以完成:
操作步骤:
第一步:创建一个工作簿,获取第一个工作表
Workbook wb = new Workbook();
Worksheet sheet = wb.Worksheets[];
第二步:在特定单元格内添加文本内容
sheet.Range["A1"].Text = "Excel图片超链接";
sheet.Range["A1"].Style.VerticalAlignment = VerticalAlignType.Top;
第三步:插入图片并添加超链接
string picPath = @"C:\Users\Administrator\Desktop\tupian.jpg";
ExcelPicture picture = sheet.Pictures.Add(, , picPath);
picture.SetHyperLink("https://github.com/", true);
第四步:设置第一列宽度和第一行高度
sheet.Columns[].ColumnWidth = ;
sheet.Rows[].RowHeight = 150;
picture.TopRowOffset = ;
第五步:保存文件
wb.SaveToFile("ImageHyperlink.xlsx", ExcelVersion.Version2013);
操作完成后得到以下输出结果:

所以,实现对图片的超链接,只需要完成以上几个步骤就可以了。
同样的道理,在VB.NET中,也可以实现对Excel图片的超链接。
完整的代码如下,供参考:
C#:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Spire.Xls;
namespace Excel_image_hyperlink
{
class Program
{
static void Main(string[] args)
{
Workbook wb = new Workbook();
Worksheet sheet = wb.Worksheets[]; sheet.Range["A1"].Text = "Excel图片超链接";
sheet.Range["A1"].Style.VerticalAlignment = VerticalAlignType.Top; string picPath = @"C:\Users\Administrator\Desktop\tupian.jpg";
ExcelPicture picture = sheet.Pictures.Add(, , picPath);
picture.SetHyperLink("https://github.com/", true); sheet.Columns[].ColumnWidth = ;
sheet.Rows[].RowHeight = ;
picture.TopRowOffset = ; wb.SaveToFile("ImageHyperlink.xlsx", ExcelVersion.Version2013);
}
}
VB:
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports Spire.Xls Namespace Excel_image_hyperlink Class Program Private Shared Sub Main(ByVal args() As String)
Dim wb As Workbook = New Workbook
Dim sheet As Worksheet = wb.Worksheets()
sheet.Range("A1").Text = "Excel图片超链接"
sheet.Range("A1").Style.VerticalAlignment = VerticalAlignType.Top
Dim picPath As String = "C:\Users\Administrator\Desktop\tupian.jpg"
Dim picture As ExcelPicture = sheet.Pictures.Add(, , picPath)
picture.SetHyperLink("https://github.com/", true)
sheet.Columns().ColumnWidth =
sheet.Rows().RowHeight =
picture.TopRowOffset =
wb.SaveToFile("ImageHyperlink.xlsx", ExcelVersion.Version2013)
End Sub
End Class
End Namespace
希望这个方法对你有所帮助。
感谢阅读!
C# 设置Excel超链接(一)的更多相关文章
- C# 设置Excel超链接(二)
简介 超链接能够快速地将当前文本或图片链接到指定目标地址,在日常办公中给我们提供了极大的便利.本文将介绍在C#语言中如何通过免费版组件对Excel表格添加超链接,示例中将包含以下要点: 1.添加链接到 ...
- C# 设置Excel打印选项及打印excel文档
C# 设置Excel打印选项及打印excel文档 打印Excel文档是一个很常见的操作,但有时候我们会碰到各种不同的打印需求,例如只打印一个Excel工作表的其中一部分,或打印时每页都有表头,或把工作 ...
- C#中的Excel操作【1】——设置Excel单元格的内容,打开Excel文件的一种方式
前言 作为项目管理大队中的一员,在公司里面接触最多的就是Excel文件了,所以一开始就想从Excel入手,学习简单的二次开发,开始自己的编程之路! 程序界面 功能说明 打开文件按钮,可以由使用者指定要 ...
- asp.net将页面内容按需导入Excel,并设置excel样式,下载文件(解决打开格式与扩展名指定的格式不统一的问题)
//请求一个excel类 Microsoft.Office.Interop.Excel.ApplicationClass excel = null; //创建 Workbook对象 Microsoft ...
- 设置Excel的自动筛选功能
单元格数字格式的问题 NPOI向Excel文件中插入数值时,可能会出现数字当作文本的情况(即左上角有个绿色三角),这样单元格的值就无法参与运算.这是因为在SetCellValue设置单元格值的时候使用 ...
- 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设置Excel有效性
XSSFWorkbook wb = new XSSFWorkbook(); XSSFSheet sheet = wb.createSheet("Excel"); String[] ...
- Java使用POI为Excel打水印,调整列宽并设置Excel只读(用户不可编辑)
本文介绍在Java语言环境下,使用POI为Excel打水印的解决方案,具体的代码编写以及相关的注意事项. 需求描述: 要求通过系统下载的Excel都带上公司的水印,列宽调整为合适的宽度,并且设置为不可 ...
随机推荐
- 详解微信小程序开发(项目从零开始)
一.序 微信小程序,估计大家都不陌生,现在应用场景特别多.今天就系统的介绍一下小程序开发.注意,这里只从项目代码上做解析,不涉及小程序如何申请.打包.发布的东西.(这些跟着微信官方文档的流程走就好). ...
- Mesos源码分析(7): Mesos-Slave的启动
Mesos-Slave的启动是从src/slave/main.cpp中的main函数开始的. 看过了Mesos-Master的启动过程,Mesos-Slave的启动没有那么复杂了. 1. ...
- .net core 灵活读取配置文件
using Microsoft.Extensions.Configuration; using System; using System.Collections.Generic; using Syst ...
- [Swift]LeetCode339. 嵌套链表权重和 $ Nested List Weight Sum
Given a nested list of integers, return the sum of all integers in the list weighted by their depth. ...
- [Swift]LeetCode486. 预测赢家 | Predict the Winner
Given an array of scores that are non-negative integers. Player 1 picks one of the numbers from eith ...
- [Swift]LeetCode784. 字母大小写全排列 | Letter Case Permutation
Given a string S, we can transform every letter individually to be lowercase or uppercase to create ...
- Vmware安装Ubuntu ==> 连网成功
由于工作需要,得把NS3安装到内网服务器中,大家知道这个是不能连接外网的,学校又没有Ubuntu高校源.NS3要先安装一大堆的依赖,让人头痛的是在内网里有没发以终端指令形式安装,针对这种麻烦,找到两个 ...
- SpringBoot时间戳与MySql数据库记录相差14小时排错
项目中遇到存储的时间戳与真实时间相差14小时的现象,以下为解决步骤. 问题 CREATE TABLE `incident` ( `id` int(11) NOT NULL AUTO_INCREMENT ...
- 95%的技术面试必考的JVM知识点都在这,另附加分思路!
概述:知识点汇总 jvm的知识点汇总共6个大方向:内存模型.类加载机制.GC垃圾回收是比较重点的内容.性能调优部分偏重实际应用,重点突出实践能力.编译器优化和执行模式部分偏重理论基础,主要掌握知识点. ...
- 十分钟通过 NPM 创建一个命令行工具
大过年的,要不要写点代码压压惊?来花十分钟学一下怎么通过 NPM 构建一个命令行工具. 写了一个小 demo,用于代替 touch 的创建文件命令 touchme ,可以创建自带“佛祖保佑”注释的文件 ...