Python 使用xlwings库操作excel的简明实践分享之表格操作

您所在的位置:网站首页 xlwings读取excel数据 Python 使用xlwings库操作excel的简明实践分享之表格操作

Python 使用xlwings库操作excel的简明实践分享之表格操作

2023-06-04 11:30| 来源: 网络整理| 查看: 265

增加表格 简易的增加

ws = wb.sheets.add() ws = wb.sheets.add() ws = wb.sheets.add()

add函数中不增加任何参数,则默认是在当前活动表的前面增加一张表,加上原有的一张表,则文件中会是这样的顺序

image.png

指定位置增加

其中还可以增加after和before的参数,来指定新表的位置

image.png ?

指定的表必须要存在。

前序文章提及过创建表时会把创建的表设为活动表,所以不带位置参数创建的新表会加到活动表的前面,而并非是永远在最前面的。

当提供名称参数时,创建的表就带有这个名称。

image.png

设活动表

使用表格的activate方法使自身成为这个工作簿的活动表

wb1 = app.books.add()

ws1 = wb1.sheets.add() ws2 = wb1.sheets.add() ws3 = wb1.sheets.add() ws4 = wb1.sheets.add() ws5 = wb1.sheets.add()

ws3.activate()

? image.png ?

删除表

使用表的delete函数来删除自身

ws5.delete()

可以看到表被删除了,活动表又回到了上一个活动的表上。

? image.png

获取所有表名

wb.sheets代表这个工作簿里所有的表格对象,sheet.name 代表一张表的表名,可以使用列表生成式来提取表的名称列表。

name_list = [sheet.name for sheet in wb.sheets]

也可以通过工作簿的的sheet_names属性获得

print(wb2.sheet_names)

这会是按照表里面的顺序获得的

image.png

通过表名和索引获取表

通过表名取得表就相当于字典取得键的值一样

image.png

通过索引取得表就相当于列表取得值一样

image.png ?

表格的复制 同工作簿拷贝表格

wb1 = app.books.add()

ws1 = wb1.sheets.active ws1.copy()

不具名拷贝会出现一个带数字的重命名表格,和人工拖拽是一样的。会出现在所有表格后面

image.png

带上名称拷贝可以在拷贝后重命名,这个名字也不能重复,不会再帮你重命名了。

ws1.copy(name= ‘1234’ )

?

image.png ?

从这个工作簿拷贝表格到其他工作簿里

工作表列表sheets可以通过查看源码,发现其实现了迭代器__iter__,也可以通过索引获取表格,但本身并不是个列表,单纯通过列表append是不行的。还是得看copy方法。其可以带after和before两种参数,参数类型是表格对象,根据表格对象自己所在的工作簿确定这个被复制的表要去哪里。

wb1 = app.books.add()

ws1 = wb1.sheets.active cell_A1 = ws1.range( ‘A1’ ) cell_A1.value = [212, 232, 2332]

wb2 = app.books.add() ws1.copy(name= ‘1234’ , after=wb2.sheets.active)

? 可以看到工作簿1的表格被拷贝到了工作簿2,并重命名为1234



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3