1. 程式人生 > >python openpyxl模組實現excel的讀取,新表建立及原資料表追加新資料

python openpyxl模組實現excel的讀取,新表建立及原資料表追加新資料

當實際工作需要把excel表的資料讀取出來,或者把一些統計資料寫入excel表中時,一個設計豐富,文件便於尋找的模組就會顯得特別的有吸引力,本文對openpyxl模組的一些常見用法做一些記錄,方便工作中查詢(好記性不如爛筆頭)

author:he
qq:760863706
python:3.5
date:2018-9-14

1:安裝openpyxl

pip install openpyxl

2:excel表讀取資料(.xlsx)

import openpyxl
filepath = 'sample.xlsx'
wb = openpyxl.load_workbook(filepath)
#獲取全部表名
sheetnames = wb.sheetnames #切換到目標資料表 #ws = wb[] ws = wb['sheet2'] #表總行數 max_row = ws.max_row #表總列數 max_col = ws.max_column for x in range(1,max_row): #獲取表中x行1列的值 cell_data = ws.cell(row=x,column=1).value

3:已存在excel表追加資料

import openpyxl
filepath = 'sample.xlsx'
wb = openpyxl.load_workbook(filepath)
#切換到目標資料表
#ws = wb[]
ws = wb['sheet2'
] #待填充資料 data = [[1,2,3],[4,5,6]] for x in data: ws.append(x) savename = 'update_excel.xlsx' wb.save(savename)

4:建立新excel表

import openpyxl
filepath = 'new_excel.xlsx'
wb = openpyxl.Workbook()
#預設表sheet1
ws1 = wb.active
#更改表名
ws1.title = 'new_sheet_name'
#建立sheet2表
ws2 = wb.create_sheet('sheet2'
) ws1.cell(row=1,column=1,value='sheet1表1行1列的值').value ws2.cell(row=2,column=2,value='sheet2表2行2列的值').value wb.save(filepath)