如何解决 xlsxwriter 中的对齐问题

Men*_*hem 4 python xlsxwriter

我正在使用 xlsxwriter 使用 Python 创建 Excel 工作表。一切正常。我需要将所有行的行高更改为 23,并且下面代码的第一行正确执行了该操作。我还需要将所有行中的文本垂直居中对齐,但无法使其工作。任何建议如何使其正确。我正在使用Python 3.6。

worksheet.set_default_row(23) # Set the row height for all the rows
format = workbook.add_format()
format.set_align('vcenter')
Run Code Online (Sandbox Code Playgroud)

jmc*_*ara 9

执行此操作的最佳方法以及 Excel 在幕后执行此操作的方法是使用 来设置行高worksheet.set_default_row()并使用 来设置格式worksheet.set_column()

这是一个例子:

import xlsxwriter

workbook = xlsxwriter.Workbook('test.xlsx')

worksheet = workbook.add_worksheet()

# Set the default height of all the rows, efficiently.
worksheet.set_default_row(23)

# Format all the columns.
my_format = workbook.add_format()
my_format.set_align('vcenter')

worksheet.set_column('A:XFD', None, my_format)

workbook.close()

Run Code Online (Sandbox Code Playgroud)

请注意,通过这些方法添加的任何单元格特定格式都write()将覆盖列格式。任何不带格式写入的数据都将采用列格式。