Python Openpyxl iter_rows并在每个单元格中添加定义的值

时间:2018-05-14 17:59:54

标签: python openpyxl

问题:有人可以告诉我如何完成以下任务:

我已经定义了这个列,但是我需要一个特定的值来进入该列中的每个单元格。

此外,如果第6列只有x行数,那么我希望第7列也只有x行,并在其中粘贴了值。

这是我试过的代码。

import openpyxl

wb = openpyxl.load_workbook(filename=r'C:\Users\.spyder-py3\data\BMA.xlsx')
ws = wb.worksheets[0]
for row in ws.iter_rows('G{}:G{}'.format(ws.min_row,ws.max_row)):
    for cell in row:
        ws.cell(row=cell, column=7).value = 'BMA'
wb.save(r'C:\Users\.spyder-py3\data\BMA.csv')
wb.close()

2 个答案:

答案 0 :(得分:0)

我通过查看这个答案找出了大部分问题:

https://stackoverflow.com/a/15004956/9649146

这是我最终得到的代码:

import openpyxl

wb = openpyxl.load_workbook(filename=r'C:\Users\.spyder-py3\data\AAXN.xlsx')
ws = wb.worksheets[0]
r = 2
for row in ws.iter_rows('G{}:G{}'.format(ws.min_row,ws.max_row)):
    for cell in row:
        ws.cell(row=r, column=7).value = 'AAXN'
        r += 1
wb.save(r'C:\Users\.spyder-py3\data\AAXN.csv')
wb.close()

答案 1 :(得分:0)

或者,您可以执行以下操作:

for row in filesheet.iter_rows(min_row=2, max_row=file_sheet.max_row):
filesheet.cell(row=row[0].row, column=7).value = 'my value'