用OpenPyXL處理Excel表格 - 向sheet讀取、寫入數據


假設一個名叫“模板”的excel表格里有四個sheet,名字分別是['平台', '制冷', '洗衣機', '空調']

1、讀取

from openpyxl import load_workbook

namelists=['平台', '制冷', '洗衣機', '空調']#4個sheet的名字,也可以通過pd來獲取

wb = load_workbook("模板.xlsx")#使用openpyxl讀取xlsx文件,創建workbook  

顯示有多少張sheet

print(wb.sheetnames)
['平台', '制冷', '洗衣機', '空調']

讀取sheet的單元格

ws=wb['平台']

ws.cell(row=1, column=3).value #C1單元格的值為“小微”
'小微'

讀取多個sheet的單元格

for i in wb.sheetnames:
    ws=wb[i]
    ws.cell(row=1, column=3).value #遍歷所有的sheet,讀取每個sheet的C1單元格的值
print(ws.max_row) #表行數   
print(ws.max_column) #表列數
16
19

2、寫入數據到sheet的單元格,寫完一定要保存,使用文件后要關閉

ws=wb['平台']

ws.cell(row=5, column=4).value="hello" #D5單元格寫入hello

for i in range(5,10):
    for j in range(5,10):
        ws.cell(row=i, column=j).value=1 #"E1:I9"單元格寫入數字1        
        
wb.save("1.xlsx")#保存 

wb.close()#關閉

寫入多個sheet的單元格

wb = load_workbook("模板.xlsx")

for i in wb.sheetnames:
    ws=wb[i]
    ws.cell(row=1, column=3).value=1 #遍歷所有的sheet,把每個sheet的C1單元格的值改為1

wb.save("1.xlsx")#保存 

wb.close()#關閉


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM