当前位置: 代码网 > it编程>前端脚本>Python > 使用Python实现在Excel工作表中添加、修改及删除超链接

使用Python实现在Excel工作表中添加、修改及删除超链接

2024年10月25日 Python 我要评论
引言在创建excel工作簿时,内部文档的互链、报告自动化生成或是创建外部资源快速访问路径是比较常见的需求。通过超链接,我们可以将工作表与外部资源、文件或网页无缝连接,提升数据的交互性和可读性。无论是为

引言

在创建excel工作簿时,内部文档的互链、报告自动化生成或是创建外部资源快速访问路径是比较常见的需求。通过超链接,我们可以将工作表与外部资源、文件或网页无缝连接,提升数据的交互性和可读性。无论是为了快速导航、动态更新内容,还是为了整合多种数据源,掌握如何自动化管理超链接显得至关重要。使用python,用户可以轻松批量添加、修改或删除超链接,大幅提高效率并减少手动操作的出错率。

本文将介绍如何使用python实现在excel工作表中对超链接进行添加、修改及删除的操作。

本文所使用的方法需要用到spire.xls for python,pypi:pip install spire.xls

用python在excel工作表中插入超链接

在excel工作表中,添加文本超链接通常是基于单元格进行的。添加文本超链接到指定单元格后,单元格中的所有文本或数值将作为超链接的一部分。我们可以使用该库中的worksheet.hyperlinks.add(cell: cellrange)方法来添加文本超链接到工作表中的指定单元格,并通过hyperlink类下的属性对其类型和链接目标进行设置。以下是插入网页、邮箱、外部文档、文档内位置以及unc地址超链接到excel单元格文本的操作步骤:

  1. 导入所需模块:workbookhyperlinktypefileformat
  2. 创建workbook实例。
  3. 使用workbook.worksheets.get_item()方法获取一个工作表。
  4. 使用worksheet.range[]属性获取单元格。
  5. 使用worksheet.hyperlinks.add(cell: cellrange)方法在单元格中插入超链接。
  6. 通过hyperlink.type属性设置超链接类型。
  7. 通过hyperlink.address设置链接地址。
  8. 通过hyperlink.texttodisplay设置超链接展示文本。
  9. 使用workbook.savetofile()方法保存工作簿。
  10. 释放资源。

代码示例

from spire.xls import workbook, hyperlinktype, fileformat

# 创建workbook实例
workbook = workbook()

# 获取第一个工作表
sheet = workbook.worksheets.get_item(0)

# 添加一个网页超链接
cell1 = sheet.range[2, 2]
weblink = sheet.hyperlinks.add(cell1)
weblink.type = hyperlinktype.url
weblink.texttodisplay = "网页超链接"
weblink.address = "https://www.google.com"

# 添加一个邮箱地址超链接
cell2 = sheet.range[4, 2]
emaillink = sheet.hyperlinks.add(cell2)
emaillink.type = hyperlinktype.url
emaillink.texttodisplay = "邮箱地址超链接"
emaillink.address = "mailto:example@example.com"

# 添加一个外部文件超链接
cell3 = sheet.range[6, 2]
filelink = sheet.hyperlinks.add(cell3)
filelink.type = hyperlinktype.file
filelink.texttodisplay = "外部文件超链接"
filelink.address = "c:\\users\\public\\documents\\example.pdf"

# 添加一个文档内部超链接
cell4 = sheet.range[8, 2]
internallink = sheet.hyperlinks.add(cell4)
internallink.type = hyperlinktype.workbook
internallink.texttodisplay = "文档内部超链接"
internallink.address = "sheet2!a1"

# 添加一个unc路径超链接
cell5 = sheet.range[10, 2]
unclink = sheet.hyperlinks.add(cell5)
unclink.type = hyperlinktype.unc
unclink.texttodisplay = "unc路径超链接"
unclink.address = "\\\\server\\share\\file.txt"

# 设置字体并自动调整列宽
sheet.range.style.font.fontname = "arial"
sheet.range.style.font.size = 14
for i in range(sheet.range.columncount):
    sheet.autofitcolumn(i + 1)

# 保存工作簿
workbook.savetofile("output/texthyperlinkexcel.xlsx", fileformat.version2016)
workbook.dispose()

结果

用python插入超链接到excel工作表中的图片

插入超链接到工作表中的图片需要先使用worksheet.pictures.add()方法插入一张图片或使用worksheet.pictures.get_item()获取一张图片,然后使用excelpicture.sethyperlink(linkstring: str, isexternal: bool)方法插入超链接到该图片即可。以下是操作步骤示例:

  1. 导入所需模块:workbookfileformat
  2. 创建workbook实例。
  3. 使用workbook.worksheets.get_item()方法获取一个工作表。
  4. 使用worksheet.pictures.add()添加一张图片到指定位置。
  5. 使用excelpicture.sethyperlink()方法添加超链接到该图片。
  6. 使用workbook.savetofile()方法保存工作簿。
  7. 释放资源。

代码示例

from spire.xls import workbook, fileformat

# 创建workbook实例
workbook = workbook()

# 获取第一个预设工作表
sheet = workbook.worksheets.get_item(0)

# 添加图片到指定位置
picture = sheet.pictures.add(3, 2, "image1.jpg")

# 添加超链接到该图片
picture.sethyperlink("https://www.bing.com/", true)

# 保存工作簿
workbook.savetofile("output/picturehyperlinkexcel.xlsx", fileformat.version2016)
workbook.dispose()

结果

用python修改excel工作表中的超链接

我们可以使用cellrange.hyperlinks.get_item(0)方法直接从单元格获取指定超链接,或者使用worksheet.hyperlinks.get_item()方法从工作表的超链接集合中获取超链接。然后,我们可以通过hyperlink类下的属性对超链接的类型、地址和显示文本进行修改。以下是操作步骤:

  1. 导入所需模块:workbookfileformat
  2. 创建workbook实例。
  3. 使用workbook.worksheets.get_item()方法获取一个工作表。
  4. 使用worksheet.range[]属性获取单元格并使用cellrange.hyperlinks.get_item(0)方法获取其中的超链接。也可以使用worksheet.hyperlinks.get_item()方法从工作表的超链接集合中获取超链接。
  5. 通过hyperlink.type属性修改超链接类型,通过hyperlink.address修改超链接地址,以及通过hyperlink.texttodisplay属性修改超链接的展示文本。
  6. 使用workbook.savetofile()方法保存工作簿。
  7. 释放资源。

代码示例

from spire.xls import workbook, hyperlinktype

# 创建workbook实例
workbook = workbook()

# 载入excel文件
workbook.loadfromfile("output/texthyperlinkexcel.xlsx")

# 获取第一个工作表
sheet = workbook.worksheets.get_item(0)

# 获取单元格并获取其超链接
cell = sheet.range[2, 2]
hyperlink = cell.hyperlinks.get_item(0)

# 也可以直接从工作表超链接集合获取超链接
# hyperlink = sheet.hyperlinks.get_item(0)

# 修改超链接的类型、地址和显示文本
hyperlink.type = hyperlinktype.file
hyperlink.address = "c:\\documents\\document.pdf"
hyperlink.texttodisplay = "示例文档"

# 保存文件
workbook.savetofile("output/modifyhyperlinkexcel.xlsx")
workbook.dispose()

结果

用python删除excel工作表中的超链接

我们可以使用worksheet.hyperlinks.removeat()方法来删除工作表中的指定超链接,或使用worksheet.hyperlinks.clear()方法来删除工作表中的所有超链接。以下是操作步骤示例:

  1. 导入所需模块:workbookfileformat
  2. 创建workbook实例。
  3. 使用workbook.worksheets.get_item()方法获取一个工作表。
  4. 使用使用worksheet.hyperlinks.removeat()方法来删除工作表中的指定超链接,或使用worksheet.hyperlinks.clear()方法来删除工作表中的所有超链接。
  5. 使用workbook.savetofile()方法保存工作簿。
  6. 释放资源。

代码示例

from spire.xls import workbook

# 创建workbook实例
workbook = workbook()

# 载入excel文件
workbook.loadfromfile("output/texthyperlinkexcel.xlsx")

# 获取第一个工作表
sheet = workbook.worksheets.get_item(0)

# 删除第一个超链接
sheet.hyperlinks.removeat(1)

# 删除所有超链接
# sheet.hyperlinks.clear()

# 保存工作簿
workbook.savetofile("output/removehyperlinkexcel.xlsx")
workbook.dispose()

结果

本文演示了如何使用python在excel工作表中插入、修改及删除超链接。

以上就是使用python实现在excel工作表中添加、修改及删除超链接的详细内容,更多关于python excel添加、修改及删除超链接的资料请关注代码网其它相关文章!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com