今天看了几篇关于Python对excel表格进行着色的文档,但是感觉都讲的不够清晰,顾写此篇供大家参考。
一、效果图
二、代码实现
2.1 导入相关模块
import openpyxl
from openpyxl.styles import Font # 导入字体模块
from openpyxl.styles import PatternFill # 导入填充模块
from openpyxl.styles import Border, Side # 导入修改边框线及颜色模块
from openpyxl.styles import Alignment # 导入居中方式模块
#颜色参数设置可参考在线调色板链接:https://color.d777.com/
2.2 加载已存在的excel表格
wk = openpyxl.load_workbook(file_name) # 加载已经存在的excel
sheet1 = wk[title] #打开excel中标签名称为title的表格
2.3 设置字体颜色和背景色
#设置单元格字体颜色和背景色
fille = PatternFill('solid', fgColor='f8c600') # 设置填充颜色为橙色
font = Font(u'黑体', size=8, bold=True, italic=False, strike=False, color='000000') # 设置字体样式
sheet1.cell(row=2, column=8, value="").fill = fille # 填充单元格背景色
sheet1.cell(row=2, column=8, value="哈哈").font = font # 填充单元格内容和字体样式
2.4 设置边框
#设置单元格边框属性
thin = Side(border_style='thick', color="FF0000") # 边框颜色为红色
border = Border(left=thin, right=thin, top=thin, bottom=thin) #设置边框属性为细线
for row in sheet1['A10:E12']:
for cell in row: cell.border = border
# sheet1.cell(row=2, column=8).border = border #单一单元格设置边框
2.5 设置居中方式
#设置单元格居中方式
align = Alignment(horizontal='center', vertical='center', wrapText=True) #设置居中方式为水平、垂直居中
sheet1.cell(row=2, column=8).alignment = align
二、在线调色板
三、整体代码
import openpyxl
from openpyxl.styles import Font # 导入字体模块
from openpyxl.styles import PatternFill # 导入填充模块
from openpyxl.styles import Border, Side # 导入修改边框线及颜色模块
from openpyxl.styles import Alignment # 导入居中方式模块
#颜色参数设置可参考在线调色板链接:https://color.d777.com/
def Textcolor(file_name,title):
wk = openpyxl.load_workbook(file_name) # 加载已经存在的excel
sheet1 = wk[title] #打开excel中标签名称为title的表格
#设置单元格字体颜色和背景色
fille = PatternFill('solid', fgColor='f8c600') # 设置填充颜色为橙色
font = Font(u'黑体', size=8, bold=True, italic=False, strike=False, color='000000') # 设置字体样式
sheet1.cell(row=2, column=8, value="").fill = fille # 填充单元格背景色
sheet1.cell(row=2, column=8, value="哈哈").font = font # 填充单元格内容和字体样式
#设置单元格边框属性
thin = Side(border_style='thick', color="FF0000") # 边框颜色为红色
border = Border(left=thin, right=thin, top=thin, bottom=thin) #设置边框属性为细线
for row in sheet1['A10:E12']:
for cell in row: cell.border = border
# sheet1.cell(row=2, column=8).border = border #单一单元格设置边框
#设置单元格居中方式
align = Alignment(horizontal='center', vertical='center', wrapText=True) #设置居中方式为水平、垂直居中
sheet1.cell(row=2, column=8).alignment = align
wk.save(file_name) # 保存excel
if __name__ == '__main__':
file_name, title = 'test.xlsx', 'Sheet1'
Textcolor(file_name,title)
参考文档
原文地址:https://blog.csdn.net/weixin_43734080/article/details/129704706
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_27186.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。