import os.path #加载对象 from openpyxl import Workbook from openpyxl import load_workbook #设置样式 from openpyxl.styles import Font from openpyxl.styles import PatternFill
1.加载excel,创建sheet
def read_excel(file_path, sheet_name): """操作excel,创建sheet 当文件存在加载excel对象,创建sheet 当文件不存在,创建excel对象,创建sheet @file_path: 文件名称或者路径 @sheet_name: sheet名称 """ if os.path.exists(file_path): wb = load_workbook(file_path) ws = wb[sheet_name] else: wb = Workbook(file_path) ws = wb.create_sheet(sheet_name) return ws
2.给excle内写入数据
ws.append([列表数据])
3.合并单元格
#合并单元格,column代表列,row代表行 #行数起始位置基本不变,列数据,指定开始终止位置即可 ws.merge_cells(start_column=1,start_row=1,end_row=1,end_column=1)
4.定义单元格样式
RGB颜色,以及值展示
https://www.cnblogs.com/fightLonely/archive/2011/01/18/1937957.html
font = Font( name="微软雅黑",#字体 size = 11,# 默认字体大小11 color="RGB颜色代码", bold=True, # 加粗:True,False italic=False, # 是否斜体:True, False strike=None, # 是否删除线 underline=None, # 是否下划线 ) fill = PatternFill( patternType="solid", # 填充类型 fgColor="RGB颜色代码" # 填充颜色 ) ws.cell(column, row).fill = fill ws.cell(column, row).font = font #设置高度,宽度 value = str(ws.cell(column, row).value) ws.column_dimensions["A1"].width = len(value) +4 high = value.count("\\n") # 统计有几次换行 ws.row_dimensions["A1"].width = high
标签:文件,sheet,openpyxl,column,excel,ws,path,row From: https://www.cnblogs.com/zwx901323/p/17189950.html