python 操作Excel 设置格式
在 Excel 中,调整行和列的大小非常容易,只要点击并拖动行的边缘,或列的 头部。但如果你需要根据单元格的内容来设置行或列的大小,或者希望设置大量电 子表格文件中的行列大小,编写 Python 程序来做就要快得多。
设置行高和列宽
Worksheet 对象有 row_dimensions 和column_dimensions 属性,控制行高和列宽。
合并和拆分单元格
利用 merge_cells()工作表方法,可以将一个矩形区域中的单元格合并为一个单 元格
要拆分单元格,就调用 unmerge_cells()工作表方法
import openpyxl from openpyxl.styles import Font from openpyxl.styles import colors wb = openpyxl.Workbook() # Font 字体 ws = wb.active ws.title = 'Font' # default 11pt, Calibri italic24Font = Font(size=24, italic=True) ws['B3'].font = italic24Font ws['B3'] = '24pt Italic' boldRedFont = Font(name='Times New Roman', bold=True, color= colors.RED) ws['A1'].font = boldRedFont ws['A1'] = 'Bold Red Times New Roman' # Formulas 公式 ws = wb.create_sheet('Formula') ws['A1'] = 200 ws['A2'] = 300 ws['A3'] = '=SUM(A1:A2)' # Setting row height and column width 设置宽和高 ws = wb.create_sheet('dimensions') ws['A1'] = 'Tall row' ws.row_dimensions[1].height = 70 ws['B2'] = 'Wide column' ws.column_dimensions['B'].width = 20 # Merging cells 合并单元格 ws = wb.create_sheet('merged') ws.merge_cells('A1:D3') ws['A1'] = 'Twelve cells merged together' ws.merge_cells('C5:D5') ws['C5'] = 'Two merged cells' # Unmerging cells 拆分单元格 ws = wb.copy_worksheet(wb.get_sheet_by_name('merged')) ws.title = 'unmerged' ws.unmerge_cells('A1:D3') ws.unmerge_cells('C5:D5') wb.save('style.xlsx')