行的循环和 XLSXwriter 格式
Looping and XLSXwriter formatting of a row
我有一个包含许多工作表的工作簿,创建后我想对其进行格式化,我想根据列更改 header 行的颜色。例如,我希望前 9 列是一种颜色,然后第 10 列应该是另一种颜色,然后所有其余的应该是第三种颜色。
这就是我要遍历的内容...它有点管用,但第 0 行中的所有单元格最终颜色相同;最后分配的颜色总是覆盖前面的列。
visitFormat = mtbook.add_format({'bg_color':'#e9ccfc'})
cognotesFormat = mtbook.add_format({'bg_color':'#d2eff2'})
filedateFormat = mtbook.add_format({'bg_color':'#8cbcff'})
for worksheet in mtbook.worksheets():
print(worksheet)
# for every column
for i in range(len(subreportCols)):
# set header bgcolor based on current column (i)
if [i] in range(0,11):
useheader = visitFormat
elif [i] == 10:
useheader = cognotesFormat
else:
useheader = filedateFormat
# Write the value from cell (first row, column=1) back into that cell with formatting applied
worksheet.write(0, i, subreportCols[i], useheader)
我对此感到困惑,因为我认为它是单独编写每个专栏。我是否需要以某种方式逐个单元地执行此操作?
谢谢!
通过故障排除解决了它,留下以防它帮助别人(毕竟有一个"Answer Your Question"按钮)。
这一行:
if [i] in range(0,11):
...我以为我在做的是使用 [i] 作为对我列表中第 i 个值的引用,但我实际上是在引用整个列表。我把 [i] 换成了 i,效果很好。
我有一个包含许多工作表的工作簿,创建后我想对其进行格式化,我想根据列更改 header 行的颜色。例如,我希望前 9 列是一种颜色,然后第 10 列应该是另一种颜色,然后所有其余的应该是第三种颜色。
这就是我要遍历的内容...它有点管用,但第 0 行中的所有单元格最终颜色相同;最后分配的颜色总是覆盖前面的列。
visitFormat = mtbook.add_format({'bg_color':'#e9ccfc'})
cognotesFormat = mtbook.add_format({'bg_color':'#d2eff2'})
filedateFormat = mtbook.add_format({'bg_color':'#8cbcff'})
for worksheet in mtbook.worksheets():
print(worksheet)
# for every column
for i in range(len(subreportCols)):
# set header bgcolor based on current column (i)
if [i] in range(0,11):
useheader = visitFormat
elif [i] == 10:
useheader = cognotesFormat
else:
useheader = filedateFormat
# Write the value from cell (first row, column=1) back into that cell with formatting applied
worksheet.write(0, i, subreportCols[i], useheader)
我对此感到困惑,因为我认为它是单独编写每个专栏。我是否需要以某种方式逐个单元地执行此操作?
谢谢!
通过故障排除解决了它,留下以防它帮助别人(毕竟有一个"Answer Your Question"按钮)。
这一行:
if [i] in range(0,11):
...我以为我在做的是使用 [i] 作为对我列表中第 i 个值的引用,但我实际上是在引用整个列表。我把 [i] 换成了 i,效果很好。