Python Xlwings:日期参数转换

Python Xlwings:日期参数转换,python,excel,xlwings,Python,Excel,Xlwings,在Excel单元格中,我调用函数fff(DATE(2001,1,1))。要接收日期参数,我使用(xlwings 0.10.0)以下代码: @xw.func @xw.arg('req_date', dates=datetime.date) # I also tried datetime.datetime def fff(req_date): print req_date 它只打印一个数字,而不是datetime对象。我打电话解决了这个问题 req_date = datetime.date

在Excel单元格中,我调用函数fff(DATE(2001,1,1))。要接收日期参数,我使用(xlwings 0.10.0)以下代码:

@xw.func
@xw.arg('req_date', dates=datetime.date) # I also tried datetime.datetime
def fff(req_date):
    print req_date
它只打印一个数字,而不是datetime对象。我打电话解决了这个问题

req_date = datetime.datetime(1899, 12, 30)
           + datetime.timedelta(days=req_date)

但我想知道我的方式到底做错了什么

xlwings仅在Excel中的单元格格式为日期时执行自动转换为
datetime
对象。也就是说,如果您将
=DATE(2001,1,1)
放入一个单元格,然后在另一个单元格中写入
=fff('A1')
,它将按照您的预期工作(假设日期公式在A1中)。

好的,它确实工作(当然)。但我恐怕这有点误导。我认为通过使用@arg,我可以指定参数的类型。不过,这是一个次要功能。目前,日期转换器仅适用于日期格式的单元格。我明白你的意思-可能是未来的增强。