2016-09-22 3473 views
1

我正在嘗試使用openpyxl保存現有Excel工作簿中的日期,但是在打開工作簿時它們在單元格中的格式不正確。如何正確使用openpyxl格式化日期?

的日期以列表格式爲例如:mylist = ["09/01/2016","01/29/2016"]

在其中被保存的日期在工作簿作爲日期「*米/ d/yyyy的」被格式化的單元格。當查看工作簿,日期將被正常顯示格式如下:2016年9月1日2016年1月29日

使用這個代碼在Python:

SheetName.cell(row=2,column=1).value = mylist[0] 

插入格式化爲日期9月1日/並且似乎被格式化爲文本(左對齊)。

如果您單擊包含日期的單元格,然後單擊公式欄,然後按Enter鍵,Excel格式化並顯示日期爲9/1/2016(右對齊)。

我可以花時間重寫代碼,以排除月份和日期中的前導零,但這不會解決Excel中的格式問題。

當日期添加到單元格時,有沒有辦法控制單元格的格式?

+1

請提供一些您的代碼以及您不明白的文檔部分。 –

回答

2

openpyxl支持datetime對象,它可以方便地提供從字符串轉換的方法。

import datetime 
for i in len(mylist): 
    dttm = datetime.datetime.strptime(mylist[i], "%m/%d/%Y") 
    SheetName.cell(row=i,column=1).value = dttm