C#/VB.NET: 为Excel表格添加超链接

C#/VB.NET: Excel表格添加超链接

 

超链接在本质上属于一个网页的一部分。它是指从一个网页指向另一个目标的连接关系,这个目标包括但不限于网页、电子邮件或外部文档。在Excel文档中添加超链接,可以帮助我们在查阅表格内容的同时,快速访问与表格数据相关的页面、文档等。下面,我就将利用Free Spire.XLS for .NET演示如何在C#/VB.NET程序中为Excel表格添加超链接。

 

安装 Free Spire.XLS for .NET

方法一,通过NuGet安装Free Spire.XLS for .NET

 

    依次选择工具>NuGet包管理器>程序包管理器控制台,然后执行以下命令:

    PM> Install-Package FreeSpire.XLS

 

方法二,在程序中手动引入Spire.xls.dll文件:

 

    将Free Spire.XLS for .NET 下载到本地,解压并安装。安装完成后,打开 Visual Studio创建新项目,在右边的“解决方案资源管理器”中右键点击“引用”,再依次选择“添加引用”> “浏览”,找到安装路径下BIN文件夹中的dll文件,点击“确定”,将其添加引用至程序中。

 

Excel表格添加文本超链接

具体操作步骤如下:

 

  • 创建一个Workbook类的实例。
  • 利用Workbook.Worksheets[sheetIndex]属性,获取所需要的工作表。
  • 利用Worksheet.Range[cellName]属性,获取想要添加超链接的指定单元格范围。
  • 使用Worksheet.HyperLinks.Add()方法,为单元格添加超链接。
  • 利用XlsHyperLink.Type属性,设置链接类型。
  • 利用XlsHyperLink.TextToDisplay属性,设置链接的显示文本。
  • 利用XlsHyperLink.Address属性,设置链接地址。
  • 使用XlsWorksheet.AutoFitColumn() 方法,自动调整列宽。
  • 使用Workbook.SaveToFile()方法,保存结果文档。

C#

using Spire.Xls;

 

namespace AddTextHyperlinks

{

    class Program

    {

        static void Main(string[] args)

        {

            //创建一个 Workbook类的实例

            Workbook workbook = new Workbook();

 

            //获取第一个工作表

            Worksheet sheet = workbook.Worksheets[0];

 

            //添加指向网页的文本超链接

            CellRange cell1 = sheet.Range["A1"];

            HyperLink urlLink = sheet.HyperLinks.Add(cell1);

            urlLink.Type = HyperLinkType.Url;

            urlLink.TextToDisplay = "百度一下";

            urlLink.Address = "https://www.baidu.com/home";

 

            //添加指向电子邮件地址的文本超链接

            CellRange cell2 = sheet.Range["A2"];

            HyperLink mailLink = sheet.HyperLinks.Add(cell2);

            mailLink.Type = HyperLinkType.Url;

            mailLink.TextToDisplay = "E-ICEBLUE";

            mailLink.Address = "mailto:support@ e-iceblue.com";

 

            //添加指向外部文件的文本超链接

            CellRange cell3 = sheet.Range["A3"];

            HyperLink fileLink = sheet.HyperLinks.Add(cell3);

            fileLink.Type = HyperLinkType.File;

            fileLink.TextToDisplay = "外部文件";

            fileLink.Address = "C:\\Users\\Administrator\\Desktop\\test.xlsx";

 

            //添加指向其他工作表中单元格的文本超链接

            CellRange cell4 = sheet.Range["A4"];

            HyperLink linkToSheet = sheet.HyperLinks.Add(cell4);

            linkToSheet.Type = HyperLinkType.Workbook;

            linkToSheet.TextToDisplay = "sheet2中的A1单元格";

            linkToSheet.Address = "Sheet2!A1";

 

            //添加指向UNC地址的文本超链接

            CellRange cell5 = sheet.Range["A5"];

            HyperLink uncLink = sheet.HyperLinks.Add(cell5);

            uncLink.Type = HyperLinkType.Unc;

            uncLink.TextToDisplay = "UNC路径";

            uncLink.Address = "\\\\192.168.0.121";

 

            //自动调整列宽

            sheet.AutoFitColumn(2);

            sheet.AutoFitColumn(5);

 

            //保存结果文档

            workbook.SaveToFile("AddTextHyperlinks.xlsx", ExcelVersion.Version2013);

        }

    }

}

VB.NET:

Imports Spire.Xls

 

Namespace AddTextHyperlinks

    Friend Class Program

        Private Shared Sub Main(ByVal args As String())

            '创建一个 Workbook类的实例

            Dim workbook As Workbook = New Workbook()

 

            '获取第一个工作表

            Dim sheet As Worksheet = workbook.Worksheets(0)

 

            '添加指向网页的文本超链接

            Dim cell1 As CellRange = sheet.Range("A1")

            Dim urlLink As HyperLink = sheet.HyperLinks.Add(cell1)

            urlLink.Type = HyperLinkType.Url

            urlLink.TextToDisplay = "百度一下"

            urlLink.Address = "https://www.baidu.com/home"

 

            '添加指向电子邮件地址的文本超链接

            Dim cell2 As CellRange = sheet.Range("A2")

            Dim mailLink As HyperLink = sheet.HyperLinks.Add(cell2)

            mailLink.Type = HyperLinkType.Url

            mailLink.TextToDisplay = "E-ICEBLUE"

            mailLink.Address = "mailto:support@ e-iceblue.com"

 

            '添加指向外部文件的文本超链接

            Dim cell3 As CellRange = sheet.Range("A3")

            Dim fileLink As HyperLink = sheet.HyperLinks.Add(cell3)

            fileLink.Type = HyperLinkType.File

            fileLink.TextToDisplay = "外部文件"

            fileLink.Address = "C:\Users\Administrator\Desktop\test.xlsx"

 

            '添加指向其他工作表中单元格的文本超链接

            Dim cell4 As CellRange = sheet.Range("A4")

            Dim linkToSheet As HyperLink = sheet.HyperLinks.Add(cell4)

            linkToSheet.Type = HyperLinkType.Workbook

            linkToSheet.TextToDisplay = "sheet2中的A1单元格"

            linkToSheet.Address = "Sheet2!A1"

 

            '添加指向UNC地址的文本超链接

            Dim cell5 As CellRange = sheet.Range("A5")

            Dim uncLink As HyperLink = sheet.HyperLinks.Add(cell5)

            uncLink.Type = HyperLinkType.Unc

            uncLink.TextToDisplay = "UNC路径"

            uncLink.Address = "\\\\192.168.0.121"

 

            '自动调整列宽

            sheet.AutoFitColumn(2)

            sheet.AutoFitColumn(5)

 

            '保存结果文档

            workbook.SaveToFile("AddTextHyperlinks.xlsx", ExcelVersion.Version2013)

        End Sub

    End Class

End Namespace

 

 

Excel表格添加图片超链接

具体操作步骤如下:

  • 创建一个Workbook类的实例。
  • 利用Workbook.Worksheets[sheetIndex]属性,获取所需要的工作表。
  • 使用Worksheet.Pictures.Add()方法,在工作表中插入图片,并设置行高列宽。
  • 使用XlsBitmapShape.SetHyperLink()方法,给图片添加超链接。
  • 使用Workbook.SaveToFile()方法,保存结果文档。

C#:

using Spire.Xls;

 

namespace AddImageHyperlinks

{

    class Program

    {

        static void Main(string[] args)

        {

            //创建一个Workbook类的实例

            Workbook workbook = new Workbook();

            //获取第一个工作表

            Worksheet sheet = workbook.Worksheets[0];

 

            //在工作表中插入图片并设置行宽列高

            ExcelPicture picture = sheet.Pictures.Add(5, 3, "image.jpg");

            sheet.Columns[2].ColumnWidth = 10;

            sheet.Rows[4].RowHeight = 50;

 

            //给图片添加超链接 

            picture.SetHyperLink("https://www.2021chengdu.com/", true);

 

            //保存结果文档

            workbook.SaveToFile("AddImageHyperlink.xlsx", ExcelVersion.Version2013);

        }

    }

}

VB.NET:

Imports Spire.Xls

 

Namespace AddImageHyperlinks

    Friend Class Program

        Private Shared Sub Main(ByVal args As String())

            '创建一个Workbook类的实例

            Dim workbook As Workbook = New Workbook()

            '获取第一个工作表

            Dim sheet As Worksheet = workbook.Worksheets(0)

 

            '在工作表中插入图片并设置行宽列高

            Dim picture As ExcelPicture = sheet.Pictures.Add(5, 3, "image.jpg")

            sheet.Columns(2).ColumnWidth = 10

            sheet.Rows(4).RowHeight = 50

 

            '给图片添加超链接

            picture.SetHyperLink("https://www.2021chengdu.com/", True)

 

            '保存结果文档

            workbook.SaveToFile("AddImageHyperlink.xlsx", ExcelVersion.Version2013)

        End Sub

    End Class

End Namespace

 

 

 

posted @ 2022-09-08 16:13  Gia-  阅读(749)  评论(0编辑  收藏  举报