如何使用openpyxl在Excel中使用’yyyy-mm-dd hh:mm:ss’形式的datetime对象格式化单元格

所以,给定:

dttm = datetime.datetime.strptime("2014-06-23 13:56:30", "%Y-%m-%d %H:%M:%S")
ws['A1'] = dttm

excel的结果是将正确的日期时间写入单元格(您可以在输入公式的位置看到它).但是,单元格显示格式仅为MM / DD / YYYY.

我需要单元格显示“6/23/2014 13:56”而不是“6/23/2014”.

如何明确格式化单元格以实现此目的?

谢谢!

编辑

@alecxe这个解决方案有效,正是我要求的.我希望能够像@Woodham一样保存解决方案.不幸的是,它引发了一个typeError(请参阅注释).有什么建议?

解决方法:

我将此添加为新答案,因为我没有足够的声誉来为上面添加评论.格式化单元格的最简单方法是使用.number_format =“format”,如下所示:

value = datetime.datetime.strptime("2014-06-23 13:56:30", "%Y-%m-%d %H:%M:%S")
cell = ws['A1']
cell.value = value
cell.number_format = 'YYYY MMM DD'

这是在openpyxl(2.2.2)中测试的

上一篇:使用openpyxl将数据写入现有的Excel工作表


下一篇:【转】用python读写excel的强大工具:openpyxl