反向删除行但跳过 header 行

Delete rows in reverse but skip header row

我正在尝试找到一种方法来使用 openpyxl 在 excel sheet 中使用 != 反向删除行,但跳过 header 第 1 行。

以下方法删除了 header 行,我不确定如何添加跳过的第 1 行:

for c in reversed(ws7['M']): 
    if c.value != 'Integration Live': 
        ws7.delete_rows(c.row)

我可以在下面通过这种方式删除而不用反转,但一直无法弄清楚如何反转它,以便在删除过程中索引不会被弄乱(导致删除过程遗漏一些行)。

for row in ws7.iter_rows(min_col=13, max_col=13, min_row=2, max_row=None):
    if row[12].value != 'Integration Live':
        ws7.delete_rows(row[12].row)

关于如何在跳过 header 行的同时反向删除行的任何建议?

我试过了,但出现异常:

for row in reversed(ws7.iter_rows(min_col=None, max_col=None, min_row=2, max_row=None)):
    if row[12].value != 'Integration Live':
        ws7.delete_rows(row[12].row)

作为ws['M'] returns元组最简单的事情就是忽略第一个元素:

cells = ws['M'][1:]
for row in reversed(cells):
    …

解决方法:

for c in reversed(ws7['M'][1:]):
    if c.value != 'Integration Live':
        ws7.delete_rows(c.row)