delete_rows可以指定删除一行也可以删除多行,默认删除一行。官方文档如下:
openpyxl.worksheet.worksheet.Worksheet.delete_rows()
delete_rows(idx, amount=1)
Delete row or rows from row==idx
下面的代码演示openpyxl在excel中追加一行、删除第1行、删除第1到3行(删除行和清空行数据不同,删除行后下面的行会往上移)。
# -*- coding: utf-8 -*-
from openpyxl import Workbook
wb = Workbook() # 默认生成一个名为Sheet的sheet
# 创建sheet
for name in ['a','b']:
ws = wb.create_sheet(name)
# 追加行
for sheet in wb:
for i in range(1,5):
sheet.append(['a'+str(i),'b'+str(i)])
# 删除第一行
for sheet in wb:
sheet.delete_rows(1)
# 删除从1到3行
for sheet in wb:
sheet.delete_rows(1,3)
wb.save('test.xlsx')