使用openpyxl创建excel并设置单元格样式
发表于:2024-11-23 作者:热门IT资讯网编辑
编辑最后更新 2024年11月23日,wb = Workbook() ws = wb.create_sheet('月度排名汇总', 0) # 合并单元格 ws.merge_cells('b2:b3
wb = Workbook() ws = wb.create_sheet('月度排名汇总', 0) # 合并单元格 ws.merge_cells('b2:b3') ws.merge_cells('c2:c3') ws.merge_cells('d2:d3') ws.merge_cells('e2:g2') ws.merge_cells('h3:j2') # 设置单元格文本内容 ws['b2'].value = '负责人' ws['c2'].value = '部门/小组' ws['d2'].value = '负责产品总量' ws['e2'].value = '与初始排名比较' ws['h3'].value = '与月初排名比较' ws['e3'].value = ws['h4'].value = '排名提升' ws['f3'].value = ws['i3'].value = '排名不变' ws['g3'].value = ws['j3'].value = '排名下滑' # 创建单元格样式对象 headerCellStyle = NamedStyle(name = 'headerCellStyle') headerCellStyle.alignment = Alignment(horizontal = 'center', vertical = 'center') # 水平垂直居中 border = Side(border_style = 'thin', color = '000000') # 线框样式 headerCellStyle.border = Border(left = border, top = border, right = border, bottom = border) # 设置单元格边框样式 # 设置表格样式 for row in ws['b2:j30']: for cell in row: cell.style = headerCellStyle # 数据写入 for index, item in enumerate(data, 4): ws.cell(row = index, column = 2, value = item.get('name')) ws.cell(row = index, column = 3, value = item.get('group_name')) ws.cell(row = index, column = 4, value = item.get('total')) ws.cell(row = index, column = 5, value = item.get('initial').get('up')) ws.cell(row = index, column = 6, value = item.get('initial').get('normal')) ws.cell(row = index, column = 7, value = item.get('initial').get('down')) ws.cell(row = index, column = 8, value = item.get('month').get('up')) ws.cell(row = index, column = 9, value = item.get('month').get('normal')) ws.cell(row = index, column = 10, value = item.get('month').get('down')) wb.save('rank.xlsx')