python:将“dd/mm/yyyy”中的日期粘贴到excel会将其转换为“mm/dd/yyyy”

2024-06-16 14:50:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用python代码将日期粘贴到excel单元格中

即2020年6月11日

我在excel单元格中看到的是06/11/2020,即2020年11月6日

有什么线索吗

在我的windows上运行此程序,在我的Mac上运行相同的代码就可以了

代码,如果有人感兴趣的话

import win32com.client
from datetime import datetime
xlapp = win32com.client.DispatchEx("Excel.Application")
xlapp.Workbooks.Open('C:\\blp\\API\\Office Tools\\BloombergUI.xla')
xlapp.RegisterXLL('C:/blp/API/Office Tools/bofaddin.dll')
filepath = give the path here
wb = xlapp.Workbooks.Open(filepath,None,False)
xlapp.Visible = True
wb_addin = ('C:/blp/API/Office Tools/bofaddin.dll')
ws = wb.Worksheets[‘AB’]
ws.Range('A18').Value = '11/06/2020'

补充意见: 顺便说一句,当你使用win32com时,感觉这是一个问题。我刚刚尝试使用openpyxl,效果很好。不幸的是,我不得不在我的excel中使用BBG加载项,这在win32com中似乎效果最好


Tags: 代码importclientapidatetimeopenexceltools
2条回答

请设置日期时间格式或将格式应用于工作表,因为根据区域日期时间设置,它将不同于MDYDMY

如果您正在使用xlsxwriter编写器引擎,请使用以下代码:

formatdict = {'num_format':'mm/dd/yyyy'}
fmt = workbook.add_format(formatdict)

请添加示例代码或发布有关库的更多信息

有不同的日期格式,例如dd/mm/yymm/dd/yy等。。。您的excel版本可能使用此格式mm/dd/yy,要将dd/mm/yy格式转换为mm/dd/yy,您可以尝试以下方法:

date1 = '22/7/1'
d_excel = date1.split('/')
d_excel[0], d_excel[1] = d_excel[1],d_excel[0]
print('/'.join(d_excel))

相关问题 更多 >