我想在特定的列中找到下一个空单元格并写入该单元格的值。我已经尝试使用以下方法:
for row in sheet['A{}:A{}'.format(sheet.min_row,sheet.max_row)]:
if row is None:
sheet.cell(column=1).value = name
else:
print ("Cell have data")
但这不是将数据写入下一个空单元格。我该如何解决?
用min_row
和构造一个字符串是毫无意义的max_row
。您可以简单地访问整个列:
from openpyxl import load_workbook
wb = load_workbook("book.xlsx")
ws = wb.active
for cell in ws["A"]:
if cell.value is None:
cell.value = "new value2"
wb.save("book.xlsx")
但这一次将整个列读取为一个元组。相反,您可以使用iter_rows()
(iter_cols()
不适用于只读):
from openpyxl import load_workbook
wb = load_workbook("book.xlsx")
ws = wb.active
for row in ws.iter_rows(min_col=1, max_col=1):
cell = row[0]
if cell.value is None:
cell.value = "new value"
wb.save("book.xlsx")
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句