python excel xlwings 详解

官方文档: https://docs.xlwings.org/en/stable/quickstart.html
# 导入库
import xlwings as xw

# 设为程序可见, 不新建工作薄
# app = xw.App(visible=True, add_book=False)

# 新建文档,保存
wb = xw.Book()
wb.save('test.xlsx')

# 打开已有文档
wb = xw.Book("test.xlsx")
# 进入第一张工作表
sht0 = wb.sheets[0]

# 在A1单元格输入值
sht0.range('A1').value = '人生'

# 取单元格值
value = sht0.range('A1').value

# 获取已打开的文档的单元格值,不需要实例化,文档没打开会报错
value = xw.Range('A1').value

# 获取已打开的文档名
wb = xw.books.active

# 取列表值
list_value = sht0.range('A1:B2').value

# 批量写入 从左上角A1开始
titles = [['时间', '地点', '人'], [1, 2, 3]]
sht0.range('A1').value = titles

# 写入列有两种方法
sht0.range('A1').options(transpose=True).value = [1,2,3,4]
titles = [[1], [2], [3], [4]]

# 批量插入单元格,和插入数据
for i in range(5):
    sht0.range('a1:c4').api.Insert()
    sht0.range('a1').value = titles

# 保存,关闭,结束进程
wb.save(path=None)
wb.close()
app.quit()

# 返回文件绝对路径
path = wb.fullname

# 返回文件名
filename = wb.name

# 清除sheet的内容和格式
sht0.clear()

# 加入超链接
a1 = xw.Range('A1')
a1.add_hyperlink(r'www.baidu.com', '百度', '提示:点击即链接到百度')

# 获取超链接
hyperlink = a1.hyperlink

# 清除单元格的内容
a1.clear_contents()

# 清除单元格的格式和内容
a1.clear()

# 取得单元格的背景色,以元组形式返回RGB值
color = a1.color

# 设置单元格的颜色
a1.color = (255, 255, 255)

# 清除单元格的背景色
a1.color = None

# 获取公式或者输入公式
formula = a1.formula
formula = a1.formula = '=SUM(B1:B9)'

# 获得单元格列宽
column_width = a1.column_width

# 新建工作薄,sheet
xw.books.add()
xw.sheets.add()

# 逐行写入
def data(self):
        roadinfo = self.read_text()
        data = ast.literal_eval(roadinfo)
        for num, row in enumerate(data):
            self.sheet.range(f'A{num + 1}').value = num
            self.sheet.range(f'B{num + 1}').value = row
        else:
            print(f'数据长度: {len(data)}, 写入数据:{num+1}')
        self.wb.save('test_case.xlsx')
        self.wb.close()
        print('Done')

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值