首页 > 解决方案 > Openpyxl 文件正在另存为新文件,但与原始文件相比没有任何变化

问题描述

在我的工作中,我已经使用相同的脚本 4 个月了,并将其重新用于任何需要的用途,但它今天刚刚停止工作。我用它从其他工作簿中获取数据,到目前为止它还没有让我失望。

到目前为止我已经尝试过:

  1. 将 deployment.cell(row=index, column=5).value = somevalue 更改为 row[4].value = somevalue

  2. 使用绝对路径而不是相对路径来加载和保存工作簿

  3. 从 wb.worksheets[0] 更改为 wb['工作表名称']

  4. 后行的打印值

     deployment.cell(row=index, column=5).value = user
     deployment.cell(row=index, column=6).value = model
    

    发现它们已被正确分配。

最后,它总是像您期望的那样保存到一个新文件中,但没有我在脚本中所做的任何更改。这是下面的代码

from openpyxl.styles import PatternFill
from openpyxl import load_workbook

wb = load_workbook(filename="Ireland.xlsx")
deployment = wb.worksheets[0]
wb2 = load_workbook(filename='Computer Details.xlsx')
win10_devices = wb2.worksheets[0] 

for index, row in enumerate(deployment.rows, start=1):
    cn1 = str(row[0].value).strip().lower()
    for index2, row2 in enumerate(win10_devices.rows, start=1):
        cn2 = str(row2[0].value).strip().lower()
        if(cn1 == cn2):
            user = row2[1].value
            model = row2[5].value 
            
            deployment.cell(row=index, column=5).value = user
            deployment.cell(row=index, column=6).value = model
            

                
 wb.save("Why doesnt this work.xlsx")

标签: pythonopenpyxl

解决方案


推荐阅读