我需要根据单元格是否为空删除excel文件中的某些行。 有2个单元格可以包含一些用户数据 如果这些单元格中的任何一个都有数据,我需要保留它;否则,如果两个单元格都为空,则删除该行。
我弄清楚了如何根据1个单元格是否为空来删除行。 我希望它查看第6列和第8列 如果两者都为空,则删除该行。 如果其中只有一个为空,则保留该行。
当前代码是这个
from openpyxl import load_workbook
wb = load_workbook('Pull-1.xlsx')
sheetlist = wb.get_sheet_names()
sheet = wb.get_sheet_by_name(sheetlist[0])
rownumber = 1
for row in sheet.iter_rows(min_row=2, max_row= sheet.max_row, min_col=8, max_col=8, values_only=True):
rownumber += 1
for i in range(sheet.max_row, 1, -1):
if sheet.cell(row=i, column=8).value is None:
sheet.delete_rows(i, 1)
wb.save('pull-1mod.xlsx')
也...如果我有不需要的其他东西,请告诉我。 我只是在学习,并通过在这里的研究将其拼凑而成。
答案 0 :(得分:1)
将if语句更改为:
if sheet.cell(row=i, column=8).value is None and sheet.cell(row=i, column=6).value is None: