首页 > 其他分享 >openpyxl-excel文件处理

openpyxl-excel文件处理

时间:2023-03-07 22:22:13浏览次数:41  
标签:文件 sheet openpyxl column excel ws path row

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

相关文章