如何使用xlwings库为Excel表格的单元格创建超链接----关于Python里xlwings库对Excel表格的操作(三十九)

       这篇小笔记主要记录【如何使用xlwings库为Excel表格的单元格创建超链接】。前面的小笔记已整理成目录,可点链接去目录寻找所需更方便。
【目录部分内容如下】【点击此处可进入目录】
(1)如何安装导入xlwings库;
(2)如何在Wps下使用xlwings中使用WPS对表格操作;
(3)如何安装导入xlwings库、如何用xlwings打开要操作的Excel表格;
(4)如何使用xlwings对Excel表格数据进行读取操作;
(5)如何使用xlwings对Excel表格进行“保存”或“另存为”操作;
(6) 如何使用xlwings对Excel表格进行写入数据操作;
(7)如何使用xlwings向Excel表格中写入Excel公式;
(8)如何使用xlwings库中的“name"函数和“replace”函数对工作表进行改名;
。。。。。。等等

【如何使用xlwings库为Excel表格的单元格创建超链接】#要注意大小写

(1)URL_G2=Work_Sheet.range('G2').hyperlink

# “Work_Sheet”为当前激活的工作表;

# “range('G2')”要读取超链接的单元格(注:这单元格必须要有超链接才能读取,否则出错);

# “hyperlink”读取单元格的超链接并赋值给“URL_G2“。

(2)Work_Sheet.range('G4').add_hyperlink(URL,Work_Sheet.range('G4').value)

# “Work_Sheet”为当前激活的工作表;

# “range('G3')”要创建超链接的单元格;

# “add_hyperlink('超链接的网址或文件地址','这有超链接单元格显示的文本内容')”如果只有网址一个参数时,这个网址会代替原单元格内容。

# “Work_Sheet.range('G4').value”把原“G4”单元格的文本读取出来作为超链接显示的文本。

(3)Work_Sheet.range('G5').api.Hyperlinks.Add(Anchor=Work_Sheet.range('G5').api,Address=URL,TextToDisplay=Work_Sheet.range('G5').value)

# “Work_Sheet”为当前激活的工作表;

# “range('G5')”要创建超链接的单元格;

# “api”是指使用win32com与Excel交互,不能省;也就是Xlwings库与VBA的链接;要注意大小写及Api\api\api[0]\api[1]不同的地方;

# “Hyperlinks.Add(Anchor=选取要操作的单元格,Address=超链接网址,TextToDisplay=有超链接单元格显示的文本内容')”如果只有网址一个参数时,这个网址会代替原单元格内容。

# “Work_Sheet.range('G5').value”把原“G4”单元格的文本读取出来作为超链接显示的文本。

(4)Work_Sheet.range('G6').api.Hyperlinks.Delete()

# “Work_Sheet”为当前激活的工作表;

# “range('G4)”要取消超链接的单元格(注:这单元格必须要有超链接才能读取,否则出错);

# “api”是指使用win32com与Excel交互,不能省;也就是Xlwings库与VBA的链接;要注意大小写及Api\api\api[0]\api[1]不同的地方;

# “Hyperlinks.Delete()”取消单元格的超链接。

【举例说说更直观】

#【如何使用xlwings库为Excel表格的单元格创建超链接】
import xlwings as xw
app=xw.App(visible=False,add_book=False)
app.display_alerts=False               #关闭各种提示信息,可以提高运行速度
File_Name='E:/素材/学生成绩表.xls'
#打开要处理的Excel文件名
Work_Book=app.books.open(File_Name)      
#打开要处理的Excel文件中的工作簿
Work_Sheet=Work_Book.sheets[0]      
#打开要处理的Excel工作簿中的工作表;
#“[0]”是指定打开最靠前的第1份工作表,也可以把“0”写成要打开的指定要打开的“工作表的名称”;
#现在只打开这一个工作表也相当于激活这工作表,后面没有打开激活另一工作表,则所有操作只对现这工作表起作用。

URL_G2=Work_Sheet.range('G2').hyperlink
# “Work_Sheet”为当前激活的工作表;
# “range('G2')”要读取超链接的单元格(注:这单元格必须要有超链接才能读取,否则出错);
# “hyperlink”读取单元格的超链接。
print(f'G2单元格的超链接:{URL_G2}')
print()

URL='https://blog.csdn.net/AAA000666_666000/article/details/135067570?spm=1001.2014.3001.5501'  
# 为单元格创建超链接准备准备跳转的网址(替换为想要链接到的网址即可);
Work_Sheet.range('G3').add_hyperlink(URL)
# “Work_Sheet”为当前激活的工作表;
# “range('G3')”要创建超链接的单元格;
# “add_hyperlink('超链接的网址或文件地址','这有超链接单元格显示的文本内容')”如果只有网址一个参数时,这个网址会代替原单元格内容。
URL_G3=Work_Sheet.range('G3').hyperlink
# “Work_Sheet”为当前激活的工作表;
# “range('G3)”要读取超链接的单元格(注:这单元格必须要有超链接才能读取,否则出错);
# “hyperlink”读取单元格的超链接。
print(f'G3单元格的超链接:{URL_G3}')
print()

Work_Sheet.range('G4').add_hyperlink(URL,Work_Sheet.range('G4').value)
# “Work_Sheet”为当前激活的工作表;
# “range('G3')”要创建超链接的单元格;
# “add_hyperlink('超链接的网址或文件地址','这有超链接单元格显示的文本内容')”如果只有网址一个参数时,这个网址会代替原单元格内容。
# “Work_Sheet.range('G4').value”把原“G4”单元格的文本读取出来作为超链接显示的文本。
URL_G4=Work_Sheet.range('G4').hyperlink
# “Work_Sheet”为当前激活的工作表;
# “range('G4)”要读取超链接的单元格(注:这单元格必须要有超链接才能读取,否则出错);
# “hyperlink”读取单元格的超链接。
print(f'G4单元格的超链接:{URL_G4}')
print()

Work_Sheet.range('G5').api.Hyperlinks.Add(Anchor=Work_Sheet.range('G5').api,Address=URL,TextToDisplay=Work_Sheet.range('G5').value)
# “Work_Sheet”为当前激活的工作表;
# “range('G5')”要创建超链接的单元格;
# “api”是指使用win32com与Excel交互,不能省;也就是Xlwings库与VBA的链接;要注意大小写及Api\api\api[0]\api[1]不同的地方;
# “Hyperlinks.Add(Anchor=选取要操作的单元格,Address=超链接网址,TextToDisplay=有超链接单元格显示的文本内容')”如果只有网址一个参数时,这个网址会代替原单元格内容。
# “Work_Sheet.range('G5').value”把原“G4”单元格的文本读取出来作为超链接显示的文本。
URL_G5=Work_Sheet.range('G5').hyperlink
# “Work_Sheet”为当前激活的工作表;
# “range('G5)”要读取超链接的单元格(注:这单元格必须要有超链接才能读取,否则出错);
# “hyperlink”读取单元格的超链接。
print(f'G5单元格的超链接:{URL_G5}')
print()

Work_Sheet.range('G6').api.Hyperlinks.Delete()
# “Work_Sheet”为当前激活的工作表;
# “range('G4)”要取消超链接的单元格(注:这单元格必须要有超链接才能读取,否则出错);
# “api”是指使用win32com与Excel交互,不能省;也就是Xlwings库与VBA的链接;要注意大小写及Api\api\api[0]\api[1]不同的地方;
# “Hyperlinks.Delete()”取消单元格的超链接。
print()

Work_Book.save()
#保存改动的工作簿。若无保存,则上述操作会随着工作簿的关闭而作废不保存。
Work_Book.close()
#关闭工作簿。
app.quit()
#退出Office软件,不驻留后台。

【运行前的表格】

【运行后的表格】

【终端显示的结果】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/337432.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

雷盛红酒LEESON分享葡萄酒也有“社会责任感”?

葡萄酒文化从来都不仅仅是感官体验,一瓶佳酿的背后不但蕴含着风土人情、历史传承和文化交流,更反映了时代社会的变迁以及体现的社会责任意识。 目前葡萄酒生产商追求酒瓶越来越轻就是葡萄酒市场上的一个趋势,因为任何一个行业都在追求与世界共…

坦克大战游戏代码

坦克大战游戏 主函数战场面板开始界面坦克父类敌方坦克我方坦克子弹爆炸效果数据存盘及恢复图片 主函数 package cn.wenxiao.release9;import java.awt.event.ActionEvent; import java.awt.event.ActionListener;import javax.swing.JFrame; import javax.swing.JMenu; impor…

套接字通信(附带单线程TCP套接字通信代码)

套接字-Socket 1. 概念 1.1 局域网和广域网 局域网(LAN)和广域网(WAN)是两种不同范围的计算机网络,它们用于连接多台计算机以实现数据共享和通信。 局域网(LAN): 定义&#xff1…

【JavaEE】文件操作与IO

作者主页:paper jie_博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文于《JavaEE》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造&…

0121-1-计算机网络安全

计算机网络安全 1.Get 和 Post 的区别 结构:get 有请求体,post没有请求体 应用场景:get 用于获取数据,post用于提交数据; 缓存:get 的缓存保存在浏览器和web服务器日志中; 传输方式&#x…

typing python 类型标注学习笔记

在Python 3.5版本后引入的typing模块为Python的静态类型注解提供了支持。这个模块在增强代码可读性和维护性方面提供了帮助。 目录 简介为什么需要 Type hints typing常用类型typing初级语法typing基础语法默认参数及 Optional联合类型 (Union Type)类型别名 (Type Alias)子类型…

ESP32-HTTP_webServer库(Arduino)

ESP32-HTTP 介绍 ESP32是一款功能强大的微控制器,具有丰富的网络和通信功能。其中之一就是支持HTTP协议,这使得ESP32可以用于创建Web服务器。 HTTP是什么? HTTP(Hyper Text Transfer Protocol),即超文本传…

[Error]连接iPhone调试时提示Failed to prepare the device for development.

环境: iPhone 7 Plus iOS 15.8 Xcode14.2 问题: 连接iPhone设备运行时,设备旁提示如下文案。 Failed to prepare the device for development. 这时强行点击运行按钮,会弹窗提示如下文案。 The run destination ZDMiPhone is n…

CTF show逆向5

1.查壳看看 没有壳,32位文件 同时注意到附件里的dll文件 2.放入IDA里看看 找到主函数 分别看看sub_4020B0 sub_4015BD 这两个函数 我发现一般看到MessageBoxA函数,都需要动态调试 动调看到 这里直接进行了返回,返回到了主函数 执行sub_4015BD函数 步…

力扣hot100 找到字符串中所有字母异位词 滑动窗口 双指针 一题双解

Problem: 438. 找到字符串中所有字母异位词 文章目录 思路滑动窗口 数组滑动窗口 双指针 思路 👩‍🏫 参考题解 滑动窗口 数组 ⏰ 时间复杂度: O ( n ) O(n) O(n) 🌎 空间复杂度: O ( 1 ) O(1) O(1) class Solution { // 滑动窗口 …

【Gradle】Maven-Publishing

使用Java开发完成一个模块或者一个基础框架需要提供给团队项目使用,这个时候有两种方式可提供,一是提供源码,二是提供编译构建好的jar包供使用,这个时候需要讲构建好的包发布到公司的私服(公司maven仓库)&a…

分布式锁实现(mysql,以及redis)以及分布式的概念

道生一,一生二,二生三,三生万物 我旁边的一位老哥跟我说,你知道分布式是是用来干什么的嘛?一句话给我干懵了,我能隐含知道,大概是用来做分压处理的,并增加系统稳定性的。但是具体如…

C语言第四弹---printf和scanf详解

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】 printf和scanf详解 1、printf和scanf详解介绍1.1 printf1.1.1 基本用法1.1.2 占位符1.1.3 占位符列举1.1.4 输出格式1.1.4.1 限定宽度1.1.4.2 总是显示正负号1.1…

第一篇【传奇开心果系列】WeUI开发原生微信小程序:汽车租赁小程序示例

传奇开心果博文系列目录 WeUI开发原生微信小程序示例系列博文目录博文目录一、项目目标二、编程思路三、初步实现汽车租赁微信小程序示例代码四、实现汽车租赁微信小程序的登录注册示例代码五、实现汽车租赁微信小程序的订单管理示例代码六、整合实现比较完整的汽车租赁微信小程…

css绘制下拉框头部三角(分实心/空心)

1:需求图: 手绘下拉框 带三角 2:网上查了一些例子,但都是实心的, 可参考,如图: (原链接: https://blog.csdn.net/qq_33463449/article/details/113375804) 3:简洁版的: a: 实心: <view class"angle"/>.angle{width:0;height:0;border-left: 10px solid t…

[晓理紫]每日论文分享(有中文摘要,源码或项目地址)--机器人相关、强化学习

专属领域论文订阅 VX 扫吗关注{晓理紫|小李子}&#xff0c;每日更新论文&#xff0c;如感兴趣&#xff0c;请转发给有需要的同学&#xff0c;谢谢支持 分类: 大语言模型LLM视觉模型VLM扩散模型视觉导航具身智能&#xff0c;机器人强化学习开放词汇&#xff0c;检测分割 [晓理紫…

K8s(七)四层代理Service

Service概述 Service在Kubernetes中提供了一种抽象的方式来公开应用程序的网络访问&#xff0c;并提供了负载均衡和服务发现等功能&#xff0c;使得应用程序在集群内外都能够可靠地进行访问。 每个Service都会自动关联一个对应的Endpoint。当创建一个Service时&#xff0c;Ku…

JS-日期对象

日期对象&#xff1a;用来表示时间的对象 作用&#xff1a;可以得到当前系统时间 实例化 在代码中发现了new关键字时&#xff0c;一般将这个操作称为实例化 创建一个时间对象并获取时间 1&#xff09;获得当前时间 const datenew Date() 2)获得指定时间 const datenew D…

Python项目——计算器(PySide6+Pyinstaller)

1、介绍 使用python编写一个计算器&#xff0c;可以实现基本的运算。【注】该项目最终还有一些细小的bug没有完善&#xff0c;例如符号可以一直输入。 2、实现 使用pyCharm创建一个新的项目。 2.1、设计UI 使用Qt designer设计一个UI界面&#xff0c;保存ui文件&#xff0…

基于docker,k8s 搭建服务(单体docker-compose编排)

1、 yum -y install gcc yum -y instacc gcc-c 2、安装yum 工具 yum install -y yum-utils device-mapper-persistent-data lvm2 --skip-broken 3、设置docker镜像仓库 阿里云 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.…