gpt4 book ai didi

python - 如何使用 xlsxwriter 在 python 中格式化一系列单元格

转载 作者:行者123 更新时间:2023-12-01 00:49:26 24 4
gpt4 key购买 nike

如何将格式写入一系列单元格。

我正在做的是循环 Oracle 列表中的列名称,并将列格式化为日期,其中列名称以“DT”开头。但我还想让整个数据范围都有边界。

我想真正将日期格式应用于列,然后单独应用边框...但最后一种格式应用获胜,并且边框的应用会覆盖列上的日期格式。

理想情况下,我想用边框对数据范围进行爆炸,然后将日期格式应用于日期列,同时保留边框。

您可以像在 VBA 中一样选择一个范围,然后应用格式设置或进行范围交集吗?

  # Generate EXCEL File
xl_filename = "DQ_Valid_Status_Check.xlsx"

workbook = xlsxwriter.Workbook(xl_filename)

# Add a bold format to use to highlight cells.
bold = workbook.add_format({'bold': True})

date_format = workbook.add_format(
{'num_format': 'dd-mmm-yyyy hh:mm:ss'})

border = workbook.add_format()
border.set_bottom()
border.set_top()
border.set_left()
border.set_right()

worksheet_info = workbook.add_worksheet()
worksheet_info.name = "Information"
worksheet_info.write('A1', 'Report Description:', bold)
worksheet_info.write('B1', 'ARIEL Data Quality Report for Checking Authorisation Status of Marketing Applications')
worksheet_info.write('A2', 'Report Date:', bold)
worksheet_info.write('B2', datetime.datetime.now(), date_format)

worksheet_data = workbook.add_worksheet()
worksheet_data.name = "DQ Report"
worksheet_data.write_row('A1', col_names)

for i in range(len(results)):
print("result " + str(i) + ' of' + str(len(results)))
print(results[i])
worksheet_data.write_row('A' + str(i + 2), results[i])
#worksheet_data.set_row(i + 2, None, border)




# add borders
for i in range(len(results)):
worksheet_data.set_row(i + 2, None, border)

# format date columns
for i in range(len(col_names)):
col_name = col_names[i]
if col_name.startswith("DT"):
print(col_name)
worksheet_data.set_column(i, i, None, date_format)

workbook.close()

最佳答案

根据常见问题解答,目前无法format a range of cells at once ,但 future 的功能可能允许这样做。

您可以创建包含多个格式属性的 Format 对象,并在写入时将自定义格式应用到每个单元格。请参阅"Creating and using a Format Object" .

关于python - 如何使用 xlsxwriter 在 python 中格式化一系列单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56688791/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com