python操作excel-----調整字體、樣式


from openpyxl.styles import Font, Alignment, Side, Border, PatternFill, GradientFill
from openpyxl import load_workbook

# 只能打開已經存在的表格,不能用該方法創建一個新的表格
workbook = load_workbook(filename='test.xlsx')

# 通過sheet名稱獲取表格 如果只有一張表,可以直接打開
sheet = workbook.active

# 修改字體樣式  bold是否加粗 , italic是否斜體
cell = sheet['A1']
font = Font(name='微軟雅黑', size=12, bold=True, italic=True, color='5DB23C')

# 獲取表格中字體的樣式
cell = sheet['A2']
font = cell.font
print(font.name, font.size, font.bold, font.italic)

# 設置對齊樣式  horizontal:水平對齊模式  vertical:垂直對齊模式  text_rotation:旋轉角度  wrap_text:是否自動換行
cell = sheet['A2']
alignment = Alignment(horizontal='center', vertical='center', text_rotation=45)
cell.alignment = alignment

# 設置邊框樣式
cell = sheet['A2']
side = Side(style='thin', color='5DB23C')  # 邊線樣式  邊線顏色
border = Border(left=side, right=side, top=side, bottom=side)
cell.border = border


# 設置填充樣式
cell = sheet['A2']
pattern_fill = PatternFill(fill_type='solid', fgColor='5DB23C')  # 填充樣式  填充顏色
cell.pattern_fill = pattern_fill
gradient_fill = GradientFill(stop=('FFFFFF', '99CCFF', '000000'))  # (漸變顏色1,漸變顏色2,漸變顏色3....)
cell.gradient_fill = gradient_fill


# 設置行高和列寬
sheet.row_dimensions[1].height = 50  # 行編號  行高
sheet.column_dimensions['B'].width = 50  # 列編號  列寬

# 合並單元格
sheet.merge_cells('C1:D2')  # 待合並的格子編號
sheet.merge_cells(start_row=7, start_column=1, end_row=8, end_column=4)

# 取消合並單元格
sheet.unmerge_cells('C1:D2')  # 待合並的格子編號
sheet.unmerge_cells(start_row=7, start_column=1, end_row=8, end_column=4)


# 修改后記得保存
workbook.save(filename='test.xlsx')

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM