是否可以在不设置值的情况下在 xlswriter
中应用单元格格式?并且在 worksheet.write
使用 A1 表示法方面,它可以完成一个范围吗?
喜欢:
format = workbook.add_format()
format.set_border(1)
format.set_bold()
worksheet.write(row=0, col=0, format=format)
worksheet.write('A1:C3', format=format)
最佳答案
使用 worksheet.write()
您不能指定范围。您可以将它放在一个循环中并使用 xlsxwriter.utility.xl_rowcol_to_cell()
来实现您想要的。 Here是涉及 xlsxwriter 文档中的 xlsxwriter.utility.xl_rowcol_to_cell()
的进一步解释和示例。
您还可以通过在 worksheet.write()
中输入 ""
作为第二个参数来格式化空白单元格。我在下面提供了一个完整的工作示例以及预期输出的图像。
import xlsxwriter
from xlsxwriter.utility import xl_rowcol_to_cell
workbook = xlsxwriter.Workbook('test.xlsx')
worksheet = workbook.add_worksheet()
format = workbook.add_format()
format.set_border(1)
format.set_bold()
format.set_bg_color("blue")
format.set_num_format('#,##0')
for i in range (0, 3):
#we're looping through columns
for j in range (0, 3):
#we're looping through rows
cell_reference = xl_rowcol_to_cell(i, j, row_abs=True, col_abs=True)
worksheet.write('%s' % (cell_reference), "" ,format)
workbook.close()
关于python - 有没有办法在不设置值的情况下在 xlsxwriter 中应用单元格格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47775000/