使用 python 将文本写入 Excel 工作表,但在单个单元格中使用不同的格式

问题描述 投票:0回答:1

我们如何通过Python代码连接两个不同格式的字符串(例如一个黑色和另一个红色)并粘贴到Excel工作表的单个单元格中?

   from openpyxl import Workbook
   from openpyxl.styles import Font

  # Create a new Excel workbook
  workbook = Workbook()
  worksheet = workbook.active

  # Write "Hello" in black
  cell_hello = worksheet.cell(row=1, column=1)
  cell_hello.value = "Hello"
  cell_hello.font = Font(color="000000")  # Black font color

  # Write "world" in red
  cell_world = worksheet.cell(row=1, column=2)
  cell_world.value = "world"
  cell_world.font = Font(color="FF0000")  # Red font color

  # Save the workbook
  workbook.save(filename="hello_world.xlsx")

但是,如何将数据写入单个单元格中。

python excel formatting openpyxl
1个回答
0
投票

您可以使用富文本

from openpyxl import Workbook
from openpyxl.cell.text import InlineFont
from openpyxl.cell.rich_text import TextBlock, CellRichText

wb = Workbook()
ws = wb.active

def fn(t, rt, c, **inf_kw):
    return CellRichText(
        [f"{t} ", TextBlock(InlineFont(color=c, **inf_kw), rt)]
    )

ws["A1"] = fn("Stack", "Overflow", "FFA500", b=True)

wb.save("../output.xlsx")

输出:

© www.soinside.com 2019 - 2024. All rights reserved.