set\列未将颜色格式应用于大型excel fi的列

2024-10-02 22:35:02 发布

您现在位置:Python中文网/ 问答频道 /正文

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

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()

Tags: tonamefalseindexsoexcelenginesheet
1条回答
网友
1楼 · 发布于 2024-10-02 22:35:02

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

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

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

相关问题 更多 >