如何使用openpyxl删除excel中的第一行
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用openpyxl删除excel中的第一行相关的知识,希望对你有一定的参考价值。
我有一个excel文件,我正在尝试读取第一行将其传递给另一个函数并从excel中删除第一行并保存,直到excel文件中的所有行都用完为止。
我尝试使用openpyxl我能够在第一次尝试时删除第一行但是当我再次尝试读取excel文件时它会给我这个例外
openpyxl.utils.exceptions.CellCoordinatesException: There is no row 0 (A0)
这是我的代码
import openpyxl
filename = "example.xlsx"
wb = openpyxl.load_workbook(filename)
sheet = wb['Sheet1']
status = sheet['A1'].value
print(status)
sheet.delete_rows(0, 1)
wb.save(filename)
答案
未经测试,但以下调整应修复它。而不是阅读'A1'
和删除行0
你使用min_row
寻找第一个非空行并读取并删除它。
import openpyxl
filename = "example.xlsx"
wb = openpyxl.load_workbook(filename)
sheet = wb['Sheet1']
status = sheet.cell(sheet.min_row, 1).value
print(status)
sheet.delete_rows(sheet.min_row, 1)
wb.save(filename)
另一答案
一旦用delete_rows(beg_row, end_row)
删除行,它们的索引也会被删除,这意味着不再存在索引0
的行。
以上是关于如何使用openpyxl删除excel中的第一行的主要内容,如果未能解决你的问题,请参考以下文章
Openpyxl - 从 Excel 文件中的所有工作表中删除格式
将 pandas Series 或 DataFrame 列插入现有 Excel 文件的第一个空列(使用 OpenPyXL?)
删除 20,000+ 行 Excel 文件中的第一行时打开 XML SDK v2.0 性能问题