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):
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"
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
对齐方式 [ 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