簡介
超鏈接能夠快速地將當前文本或圖片鏈接到指定目標地址,在日常辦公中給我們提供了極大的便利。本文將介紹在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[0];
步驟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(1, 1, picPath); picture.SetHyperLink("https://en.wikipedia.org/wiki/Sustainable_transport", true);
步驟3:調整圖片在單元格中的位置
sheet.Columns[0].ColumnWidth = 28; sheet.Rows[0].RowHeight = 100; picture.TopRowOffset = 30;
最后,保存文檔
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[0]; //獲取第一個單元格添加文本並設置文本對齊方式 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(1, 1, picPath); picture.SetHyperLink("https://en.wikipedia.org/wiki/Sustainable_transport", true); //設置圖片在單元格中的位置 sheet.Columns[0].ColumnWidth = 28; sheet.Rows[0].RowHeight = 100; picture.TopRowOffset = 30; //保存並打開文件 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[0]; //設置超鏈接到指定單元格 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[0]; //獲取指定單元格,鏈接至指定文檔中的特定單元格 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[1]; //添加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超鏈接的全部內容。
<本文完>
如需轉載,請注明出處。
