簡體   English   中英

使用Openpyxl將數據從一個工作簿移動到另一個工作簿

[英]Moving Data From One Workbook To Another With Openpyxl

我正在嘗試使用來自現有工作簿的數據創建一個新的工作簿。 現有工作簿非常大,因此我將其加載為只讀工作簿。 因此,我需要遍歷各行,但似乎無法弄清楚如何做到這一點並將數據獲取到新工作簿中。 與此相關的是,數據來自A列,並且僅在B列中的單元格為“ IL”時才放入新工作簿中。

for row in existing_sheet.iter_rows(min_col=2, max_col=2):
    for cell in row:
        print("CHECKING IF IT IS IN IL")
        if "IL" in str(cell.value):
            currSheet.cell(row=counter, column=1).value = existing_sheet.cell(row=counter, column=41).value

我不斷收到不贊成使用的警告,並且該程序的運行速度比我想象的要慢得多。 當我簡單地執行打印語句以查看單元格值時,它在短短幾分鍾內遍歷了所有40,000行。 我當前的代碼要花幾個小時,甚至更長時間。

existing_sheet.cell(row=counter, column=41).value這就是使一切變慢的原因。 在只讀模式下,每次調用iter_rows()cell()都會強制openpyxl再次解析工作表。 但是您將需要有一個更寬的行才能獲得第41個單元格row[40]

for row in ws1.iter_rows(min_col=2, max_col=41):
    if "IL" in row[2].value:
        ws2.cell(row=row[2].row, column=1).value = row[40].value

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM