openpyxlpython-Vlookup遍历行

openpyxlpython-Vlookup遍历行,python,excel,openpyxl,Python,Excel,Openpyxl,我正在尝试自动化我们的每日报告,我正在使用一个查询来提取数据,并使用openpyxl将其写入Excel,然后在openpyxl中进行vlookup以匹配单元格值。不幸的是,我对如何遍历行以找到要查找的单元格值很感兴趣 for row in ws['E5:E91']: for cell in row: cell.value = "=VLOOKUP(D5, 'POD data'!C1:D87, 2, FALSE)" 除了我不知道如何更改D5值以查找D6、D7、D8等之外,它

我正在尝试自动化我们的每日报告,我正在使用一个查询来提取数据,并使用openpyxl将其写入Excel,然后在openpyxl中进行vlookup以匹配单元格值。不幸的是,我对如何遍历行以找到要查找的单元格值很感兴趣

for row in ws['E5:E91']:
    for cell in row:
        cell.value = "=VLOOKUP(D5, 'POD data'!C1:D87, 2, FALSE)"

除了我不知道如何更改
D5
值以查找
D6
D7
D8
等之外,它可以正常工作。这取决于我所在的行。老实说,我不知道如何最好地处理这个问题。很明显,我不想为每一行都写下公式,还有其他的列,我想在得到它之后再做一次

使用您的示例,您可以执行以下操作:

for row in ws['E5:E91']:
    for cell in row:
       cell.value = "=VLOOKUP(D{0}, 'POD data'!C1:D87, 2, FALSE)".format(cell.row)

使用您的示例,您可以执行以下操作:

for row in ws['E5:E91']:
    for cell in row:
       cell.value = "=VLOOKUP(D{0}, 'POD data'!C1:D87, 2, FALSE)".format(cell.row)

公式只是一个字符串,因此使用计数器或
单元格。行
并替换掉“5”。公式只是一个字符串,因此使用计数器或
单元格。行
并替换掉求解它的“5”。不知道为什么我没想到!谢谢你也可以像Excel那样作弊,创建共享公式。这就解决了问题。不知道为什么我没想到!谢谢您还可以像Excel那样作弊,创建共享公式。