设置 Excel 工作簿的字体类型

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

我正在使用一个 Excel,其中已经有用户输入的一些数据。我也从我的脚本将数据写入同一个 Excel。但我想确保在操作结束后,我在 Excel 工作簿内的工作表中使用单一字体类型。例如,我希望整个 Excel 具有“Arial”字体。我浏览了之前的 stackoverflow 解决方案,但没有成功。我知道我们可以迭代每个单元格并设置样式,但我想如果可能的话避免这种方法。

我尝试过以下代码。

from openpyxl.styles import  
from openpyxl import load_workbook

wb = load_workbook(my_path\\MyExcel.xlsx')

# performing my operations and writing data

# here at the end i want to make sure font across the workbook is Arial

DEFAULT_FONT.name = "Arial"
wb.save('my_path\\MyExcel.xlsx')

但这不再起作用了。我尝试从不同的包中找到一些方法,但我没有得到任何方法。请帮忙。

python excel openpyxl
1个回答
0
投票

除非有 API,否则 Openpyxl 会逐个单元执行操作。

不过,我不知道您的评论与什么相关。
如果您[可以]使用 Xlwings,您可以执行与使用 Excel 应用程序相同的操作,例如;

import xlwings as xw


xlfile = 'foo.xlsx'
with xw.App(visible=False) as app:
    wb = xw.Book(xlfile)
    ws = wb.sheets['Sheet1']

    ws['A1'].expand().font.name = 'Arial'
    ws['A1'].expand().font.size = 16

    wb.save('foo_out.xlsx')

此示例将工作表中所有使用的单元格更改为相同的字体名称和大小。

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