openpyxl 单元格部分字体加粗,其他字体不变
时间: 2023-07-08 14:43:13 浏览: 668
Python openpyxl读取单元格字体颜色过程解析
要在 openpyxl 中将单元格中的部分文本加粗,可以使用 `openpyxl.styles` 模块中的 `RichText` 类。以下是一个示例代码:
```
from openpyxl import Workbook
from openpyxl.styles import Font, PatternFill, Alignment
from openpyxl.utils import get_column_letter
from openpyxl.styles.rich_text import RichText
# 创建一个工作簿
wb = Workbook()
# 获取默认的工作表
ws = wb.active
# 设置单元格 A1 的值
ws['A1'] = 'Hello, World!'
# 创建一个字体对象,将 bold 属性设置为 True
bold_font = Font(bold=True)
# 创建一个填充对象,设置单元格背景色为黄色
yellow_fill = PatternFill(start_color='FFFF00', end_color='FFFF00', fill_type='solid')
# 创建一个对齐对象,将文本居中对齐
center_alignment = Alignment(horizontal='center', vertical='center')
# 将 A1 单元格的字体设置为 RichText 对象,其中 'Hello, ' 部分使用加粗字体,'World!' 部分使用默认字体
ws['A1'].font = RichText([bold_font('Hello, '), 'World!'])
# 将 A1 单元格的填充和对齐设置
ws['A1'].fill = yellow_fill
ws['A1'].alignment = center_alignment
# 自适应列宽
column_letter = get_column_letter(ws.max_column)
ws.column_dimensions[column_letter].auto_size = True
# 保存工作簿
wb.save('example.xlsx')
```
运行此代码后,单元格 A1 中的 'Hello, ' 部分将以粗体显示,'World!' 部分将使用默认字体。此外,单元格的背景色将为黄色,文本将居中对齐,并且列宽将自适应内容长度。
阅读全文