python - set_column 未将颜色格式应用于大型 Excel 文件的列

标签 python python-3.x

我试图使用不同的字体颜色突出显示列,以便于用户通知,但它没有发生。尝试了各种方法但不确定问题是什么。除了其他几次尝试之外,我还尝试评论其他工作表

with pd.ExcelWriter("C:\myDocs\Python\MAY_CCPS_CCSO_Preload_Validated.xlsx", engine='xlsxwriter') as writer:
     CCSO_Preload_Sheet1.to_excel(writer, index = False, sheet_name='SO_1Header')
#     CCSO_Preload_Sheet2.to_excel(writer, index = False, sheet_name="SO_2Item",engine='xlsxwriter')
#     CCSO_Preload_Sheet3.to_excel(writer, index = False, sheet_name="SO_3_Schedules",engine='xlsxwriter')
#     CCSO_Preload_Sheet4.to_excel(writer, index = False, sheet_name="SO_4Partners",engine='xlsxwriter')
#     CCSO_Preload_Sheet5.to_excel(writer, index = False, sheet_name="SO_5Long_Text",engine='xlsxwriter')
workbook  = writer.book
worksheet = writer.sheets['SO_1Header']
format1 = workbook.add_format({'bold': True, 'font_color': 'red', 'bg_color': 'yellow'})
worksheet.set_column('B:B', 40, format1)
writer.save()

最佳答案

看起来问题是您正在使用 with 上下文管理器,但格式化代码位于该 block 之外。因此,当您尝试格式化该文件时,该文件已经关闭。

更改缩进程序可以按预期工作:

import pandas as pd

data = [10, 20, 30, 40, 50, 60]

CCSO_Preload_Sheet1 = pd.DataFrame({'Heading1': data,
                                    'Heading2': data})

with pd.ExcelWriter("test.xlsx", engine='xlsxwriter') as writer:
    CCSO_Preload_Sheet1.to_excel(writer, 
                                  index = False, 
                                  sheet_name='SO_1Header')

    workbook  = writer.book
    worksheet = writer.sheets['SO_1Header']

    format1 = workbook.add_format({'bold': True, 
                                   'font_color': 'red', 
                                   'bg_color': 'yellow'})

    worksheet.set_column('B:B', 40, format1)

输出:

enter image description here

关于python - set_column 未将颜色格式应用于大型 Excel 文件的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55594245/

相关文章:

python - 为什么整数除法和除法后转换为 int 的结果对于大数不同?

python - 从 Gtk3 应用程序中的 VteTerminal 读取 Python 文本缓冲区中的文本

python - 如何在 Python 中使用 Kerberos 库?

python-3.x - 在 DataFrame 上使用正则表达式提取日期?

Python/pg8000 WHERE IN 语句

python - 值的数据格式不正确 - OrdType

python - 如何获取 pandas 数据框对象值的模式?

python - 如何从 tkinter 笔记本中触发选项卡更改功能?

python - 安装 python 模块后出现 Linux ModuleNotFoundError

python - pandas 中 dataFrame 的数据分组具有相同的行值