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

时间:2018-03-16 19:41:18

标签: python pandas cell-formatting

我正在尝试使用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()

基本上我试图制作自己的客户标题样式。我希望背景颜色为绿色,行高为25,但不能使着色工作,所以还没有尝试改变行高。

我觉得我错过了一些简单或基本的东西。谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

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

$.getJSON

这会在我的标题上进行文字换行,行高为28,以及我想要的颜色。