使用openpyxl在Excel中创建富文本。通常来说,一个单元格的样式是一样的,如果要自定义单元格内部分文本的样式,就要用到富文本。
可以使用openpyxl的CellRichText,示例如下。
import openpyxl
from openpyxl.cell.text import InlineFont
from openpyxl.cell.rich_text import TextBlock, CellRichText
# 创建工作簿
wb = openpyxl.Workbook()
# 打开默认工作表
ws = wb.active
# 创建富文本
rich_string1 = CellRichText('This is a test ', TextBlock(InlineFont(b=True), 'xxx'), 'yyy')
# 设置富文本
ws['A1'].value = rich_string1
# 或者
ws.cell(1, 1).value = rich_string1
# 保存
wb.save('demo.xlsx')
结果如下:
InlineFont
类实际上与Font类相同,但使用不同的属性名称。这属于强制要求。