Excel不会使用openpyxl识别日期

时间:2017-05-12 23:17:18

标签: excel python-3.5 openpyxl

我有一段代码可以将unix日期转换为标准的美国日期格式。它在excel中正确显示,但是excel并不将其识别为日期。

if str(startdate).isdigit():
    startdate = int(startdate)
    date = datetime.datetime.fromtimestamp(int(startdate)).strftime('%m/%d/%Y')
    ws4.cell(row=cell.row,column=2).value = date
    ws4.cell(row=cell.row,column=2).number_format = 'MM DD YYYY'

知道如何将excel视为日期而不是文字吗?

1 个答案:

答案 0 :(得分:2)

我的错误是假设下面的行创建了一个日期。

date = datetime.datetime.fromtimestamp(int(startdate)).strftime('%m/%d/%Y')

冒险进入文档后(对于一个菜鸟来说可怕如此。它会变得更容易吗?)我意识到.strftime('%m/%d/%Y')创建的字符串不是日期。

我使用以下命令将该字符串转换为日期:

date = datetime.datetime.strptime(date, '%m/%d/%Y').date()

现在excel将其视为日期。

希望这有助于将来。