Openpyxl给同个单元格的不同文字“上色” | 您所在的位置:网站首页 › excel怎么设置字体颜色跟随 › Openpyxl给同个单元格的不同文字“上色” |
文章目录
0.背景1. 原文代码2. 我的代码3. 总结
0.背景
openpyxl一直在用,今天看到一直关注的公众号又发出了奇技淫巧(想要看原文或者要关注原作者的可以点击这里),就直接收录到主页好了。免得以后找不到了。 1. 原文代码原来的代码是这样的。我按照自己的测试文件做了以下修改,代码可以看第二节 import re from openpyxl import load_workbook from openpyxl.cell.text import InlineFont from openpyxl.cell.rich_text import TextBlock, CellRichText wb = load_workbook("test.xlsx") ws = wb.active content = ws["A1"].value result = re.split(r'(【)(.*?)(】)', content) red = InlineFont(color='FF0000') rich_string1 = CellRichText([TextBlock(red, i) if i in re.findall(r"【(.*?)】",content) else i for i in result]) ws['A1'] = rich_string1 wb.save("test2.xlsx") 2. 我的代码 import re from openpyxl import load_workbook from openpyxl.cell.text import InlineFont from openpyxl.cell.rich_text import TextBlock, CellRichText wb = load_workbook("test.xlsx") ws = wb.active content = ws["A1"].value result = re.split(r'\+', content) red = InlineFont(color='FF0000') rich_string1 = CellRichText([TextBlock(red, i) if i in re.findall(r"强度",content) else i for i in result]) ws['A1'] = rich_string1 wb.save("test2.xlsx")运行前是这样子的: 运行后是这样子的: 将部分文字上色的代码本身不难,关键是要能够找到需要改变颜色的字符,这个过程往往比较麻烦。 |
CopyRight 2018-2019 实验室设备网 版权所有 |