欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

xlwings 使用教程

程序员文章站 2024-02-23 18:36:10
...

可以参考的使用教程

https://docs.xlwings.org/zh_CN/latest/api.html
https://www.cnblogs.com/catgatp/p/7875683.html
https://support.i-search.com.cn/article/1552533175579 内容较为丰富,Python 读写 Excel 文件——xlwings (转)
https://www.jianshu.com/p/e92bad922197
https://www.jianshu.com/p/e92bad922197

1. 打开

# 引入库
import xlwings as xw 
app = xw.App(visible=True,add_book=False)#设置可见
#新建工作簿 (如果不接下一条代码的话,Excel只会一闪而过,卖个萌就走了)
# wb = app.books.add()

# 打开已有工作簿(支持绝对路径和相对路径)
wb = app.books.open('example.xlsx')
#练习的时候建议直接用下面这条
#wb = xw.Book('example.xlsx')
#这样的话就不会频繁打开新的Excel

2.插入与修改

2.1 插入

1.插入行

#sht = wb.sheets[第一个sheet名]
sht = wb.sheets[0]

#选择起始单元格A1,写入字符串‘Hello’
sht.range('a1').value = 'Hello'

# 默认按行插入:A1:D4分别写入1,2,3,4
sht.range('a1').value = [1,2,3,4] 

#等同sht.range('a1:d4').value = [12,2,3,4]

2.插入列

sht.range('a2:a5').options(transpose=True).value = [5,6,7,8]

3.插入表格

sht.range('a6').expand('table').value = [['a','b','c'],['d','e','f'],['g','h','i']]

2.2 输出

#输出 行
print(sht.range('a1:d4').value)

#将空值也统计进入了
a = sht.range('a:a').value
print(len(a))  

rng = sht.range('a1').expand('table')
nrows = rng.rows.count 

max_row = sht.api.UsedRange.Rows.count

?nrows 为何等于max_row

a = sht.range(f'a1:a{nrows}').value
a

 

3.保存

#保存工作簿
wb.save('example2.xlsx')  这里存在一个问题,已存在example,直接保存,excel会询问是否覆盖。不知道如何自动化执行保存
#退出工作簿(可省略)
wb.close()
#退出Excel
app.quit()