如何在xlsxwriter中将列设置为DATE格式

我正在编写一个项目,在这个项目中,我写了一个xlsx电子表格,并且需要格式化“Date”的一列。 我得到的程序运行,除列的格式仍然设置为'一般'。

用不同的代码以不同的方式尝试这个,看看是否有人回答:

for row in cur.execute('''SELECT `Mapline`,`Plant`,`Date`,`Action` from AEReport'''): lengthOfHeadings = len(row) output = '%s-%s.xlsx' % ("AEReport",now.strftime("%m%d%Y-%H%M")) workbook = xlsxwriter.Workbook(output, {'strings_to_numbers':True}) worksheet = workbook.add_worksheet() format=workbook.add_format({'font_size':'8','border':True}) format2=workbook.add_format({'font_size':'8','border':True,'num_format':'mm/dd/yy hh:mm'}) count = 0 for name in range(0,lengthOfHeadings): if name==row[2]: name=int(name) worksheet.write(counter, count, row[name],format2) else: worksheet.write(counter, count, row[name],format) count += 1 counter += 1 

Slihthinden

要获取date时间格式的工作,您将不得不将date值转换为Excel序列date值 。

这是一个示例,展示了它是如何工作的:

 import pandas as pd data = pd.DataFrame({'test_date':pd.date_range('1/1/2011', periods=12, freq='M') }) writer = pd.ExcelWriter('test.xlsx', engine='xlsxwriter') data.test_date = data.test_date - pd.datetime(1899, 12, 31) pd.core.format.header_style = None data.to_excel(writer, sheet_name='test', index=False) workbook = writer.book worksheet = writer.sheets['test'] formatdict = {'num_format':'mm/dd/yyyy'} fmt = workbook.add_format(formatdict) worksheet.set_column('A:A', None, fmt) writer.save() 

这是如何输出: 在这里输入图像描述

date = workbook.add_format({'num_format':'dd-mm-yyyy'})

worksheet.write(1,02-12-199,date)