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\')