如何使用 Python Pandas ExcelWriter 将单元格颜色添加到单元格范围?

How to add cell color to cell range using Python Pandas ExcelWriter?

我正在尝试使用 Python Pandas ExcelWriter 将背景单元格颜色添加到单元格区域。这是我目前所拥有的:

 pivotChartsTab = pd.read_sql(sql4, conn)
 import pandas.io.formats.excel
 pandas.io.formats.excel.header_style = None
 pivotChartsTab.to_excel(writer, 'Pivot Tables', index=False)

#Format sheets
workbook = writer.book
format1 = workbook.add_format({'num_format': '#,##'}) 
format2 = workbook.add_format({'num_format': '#,##0.00'}) 
format3 = workbook.add_format({'num_format': '0%'})
format4 = workbook.add_format()
format4.set_pattern(1)
format4.set_bg_color('green')


#format Pivot Tables            
worksheet = writer.sheets['Pivot Tables']        
for i, col in enumerate(pivotChartsTab.columns):
    if i == 0:
        worksheet.set_column(i, i, 20)
    elif i == 1:
        worksheet.set_column(i, i, 15)
    elif i == 2:
        worksheet.set_column(i, i, 18)
    elif i == 3:
        worksheet.set_column(i, i, 20, format3)
    elif i == 4:
        worksheet.set_column(i, i, 25, format2)
    elif i == 5:
        worksheet.set_column(i, i, 25, format2) 
    elif i == 6:
        worksheet.set_column(i, i, 18, format3)
worksheet.write_row('A1:G1', format4)
writer.save()

所以本质上我是在尝试打造我自己的客户 header 风格。我希望背景颜色为绿色,行高为 25,但无法使颜色正常工作,因此尚未尝试更改行高。

我觉得我缺少一些简单或基本的东西。感谢您的帮助。

这似乎可行,但我不确定如果单元格为空或空白等,它会如何反应...

format4 = workbook.add_format({'bg_color': '#92D050'})
format5 = workbook.add_format({'text_wrap':True})

worksheet.set_row(0, 28, format5)
worksheet.conditional_format('A1:G1', {'type':'cell', 'criteria':'>=','value': 0, 'format':format4})

这会在我的 header 上进行文字换行,行高为 28,颜色是我想要的。