我希望导出到Excel的所有金额都将空格用作'000分隔符,'用作十进制。例如:“ 3 257 132,54”(欧洲的通用数字格式)
我试图改编xlsxwriter.readthedocs.io
上提供的示例:
format1 = workbook.add_format({'num_format': '#,##0.00'})
如下
format1 = workbook.add_format({'num_format': '# ##0,00'})
我正在使用xlsxwriter
文档中的代码。我刚刚修改了'000分隔符和小数点:
# Add some cell formats.
format1 = workbook.add_format({'num_format': '#,##0.00'})
# Set the column width and format.
worksheet.set_column('B:B', 18, format1)
我得到一个非常令人惊讶的结果。上面提供的示例在Excel中将显示为:3257 132,54。 几乎不错,但是'000分隔符仅使用数千次,而不使用数百万或数十亿。 (nb:逗号作为小数点分隔符可以正常工作)
我错过了一个花招吗?
答案 0 :(得分:1)
您只需要使用在Excel中使用的任何数字格式即可。可能类似于### ### ###.00
(尽管它没有小数点逗号):
import xlsxwriter
workbook = xlsxwriter.Workbook('test.xlsx')
worksheet = workbook.add_worksheet()
format1 = workbook.add_format({'num_format': '### ### ###.00'})
worksheet.set_column('B:B', 18, format1)
worksheet.write(0, 1, 123.123)
worksheet.write(1, 1, 1234.123)
worksheet.write(2, 1, 12345.123)
worksheet.write(3, 1, 123456.123)
worksheet.write(4, 1, 1234567.123)
worksheet.write(5, 1, 12345678.123)
workbook.close()
输出:
您可以找到所需的确切数字格式,方法是在Excel中进行设置,然后在数字格式对话框的自定义部分中检查其格式。