[英]Modifying and writing data in an existing excel file using Python
我有一個Excel文件(xlsx),其中已經有很多數據。 現在,我正在嘗試使用Python將新數據寫入此Excel文件。 我查看了xlwt,xldd,xlutils和openpyxl,所有這些模塊都要求您加載Excel工作表的數據,然后應用更改並保存到新的Excel文件中。 有什么方法可以只更改現有Excel工作表中的數據,而不是加載工作簿或保存到新文件?
這是不可能的,因為XLSX文件是zip歸檔文件,並且無法就地修改。 從理論上講,可能只編輯組成OOXML包的一部分檔案,但是實際上這幾乎是不可能的,因為相關數據可能會散布在不同的文件中。
請再次檢查Openpyxl。 您可以加載數據,使用python執行操作,將結果寫入同一文件或同一工作表的新工作表中並保存(因為所有事情都在內存中進行)。
例如:加載數據
wb = openpyxl.load_workbook("file.xlsx", data_only=True)
用python操作
# python codes
創建工作表
some_sheet = wb.create_sheet("someSheet") # by default at the end
編寫表格的程序
# program to write in sheet
保存文件(保存之前不要忘記關閉excel文件,因為它會引發“權限錯誤”)
wb.save("file.xlsx"
這是鏈接https://openpyxl.readthedocs.io/en/default/tutorial.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.