Python Excel 表格样式

import openpyxl
from openpyxl.styles import Font
from openpyxl.styles import colors      #颜色
from  openpyxl.styles import Alignment           #对齐
from  openpyxl.styles import Side,Border  #边框
from  openpyxl.styles import PatternFill,GradientFill  #填充


import  random
wb=openpyxl.Workbook()

字体大小 颜色 粗体 斜体 字体样式

sheet=wb.active
sheet.title="字体样式"
字体样式=Font(size=24,color=colors.BLUE,bold=True,italic=True)
sheet["A1"].font=字体样式
sheet["a1"]="24pt,蓝色,粗体 斜体"

公式 formula

sheet1=wb.create_sheet("公式")
sheet1["a5"]="=sum(a1:a4)"
for  row in range(1,5):
    # print(str(row))
    sheet1["a"+str(row)]=random.randint(1,100)

行高列宽 row height and column width

sheet2=wb.create_sheet("行高列宽")
sheet2["a1"]="行高30"  #第一行

sheet2.row_dimensions[1].height=30
sheet2["b2"]="列宽15"   #b列
sheet2.column_dimensions["b"].width=15
print(wb.sheetnames)

合并 merge

sheet3=wb.create_sheet("合并")
sheet3.merge_cells("a1:a3")
sheet3["a1"]="合并 a1:a3"
sheet3.merge_cells("b1:f4")
sheet3["b1"]="b1:f4"

拆分 UNmerge

# sheet3.unmerge_cells("b1")

对齐方式 [ Alignment] hor水平对齐 vert垂直对齐 text_rot字体倾斜度 warp_text自动换行

对齐方式=Alignment(horizontal="center",vertical="center")
sheet3["b1"].alignment=对齐方式

边框样式[Side Border ] Side style 边框样式 ,color Border 上下左右

sheet4=wb.create_sheet("边框")
边框样式=Side(style="double",color=colors.BLUE)
边框=Border(left=边框样式,top=边框样式,right=边框样式)
sheet4["b1"].border=边框
sheet4["b1"]="边框"

填充颜色 {pattern} gradient

sheet5=wb.create_sheet("填充颜色")
填充颜色=PatternFill(fill_type="lightGrid",fgColor="00ffcc")
sheet5["a1"]="填充颜色"
sheet5["a1"].fill=填充颜色

wb.save("041 字体样式.xlsx")

sheet.column_dimensions["a"]=50
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
A:可以使用openpyxl模块来格式化excel表格样式。 首先导入openpyxl模块: ```python import openpyxl from openpyxl.styles import Font, Color, Alignment, PatternFill, Border, Side from openpyxl.utils import get_column_letter ``` 接着打开excel文件并选择对应的表格: ```python workbook = openpyxl.load_workbook('example.xlsx') worksheet = workbook['Sheet1'] ``` 通过设置单元格的属性,可以改变字体、颜色、对齐方式和填充等样式。例如,要将第一行的字体设置为粗体,颜色设置为红色,对齐方式设置为居中: ```python for col in range(1, worksheet.max_column + 1): cell = worksheet.cell(row=1, column=col) cell.value = cell.value.title() cell.font = Font(bold=True, color='FF0000') cell.alignment = Alignment(horizontal='center', vertical='center') ``` 以上代码将第一行的单元格属性依次设置为粗体、红色、居中对齐。 要给单元格填充颜色,可以使用PatternFill类。例如,要将第一列的所有单元格背景设置为浅灰色: ```python greyFill = PatternFill(start_color='C0C0C0', end_color='C0C0C0', fill_type='solid') for row in range(2, worksheet.max_row + 1): cell = worksheet.cell(row=row, column=1) cell.fill = greyFill ``` 以上代码将第一列的所有单元格背景设置为浅灰色。 最后保存文件: ```python workbook.save('formatted_example.xlsx') ``` 完整代码: ```python import openpyxl from openpyxl.styles import Font, Color, Alignment, PatternFill, Border, Side from openpyxl.utils import get_column_letter workbook = openpyxl.load_workbook('example.xlsx') worksheet = workbook['Sheet1'] # 格式化第一行 for col in range(1, worksheet.max_column + 1): cell = worksheet.cell(row=1, column=col) cell.value = cell.value.title() cell.font = Font(bold=True, color='FF0000') cell.alignment = Alignment(horizontal='center', vertical='center') # 格式化第一列 greyFill = PatternFill(start_color='C0C0C0', end_color='C0C0C0', fill_type='solid') for row in range(2, worksheet.max_row + 1): cell = worksheet.cell(row=row, column=1) cell.fill = greyFill workbook.save('formatted_example.xlsx') ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值