Newly introduced KeyError problem in cell.py _set_time_format method
*Created originally on Bitbucket by [marcskovmadsen (Marc Skov Madsen)](https://bitbucket.org/%7Bc5062bcf-ea7f-4f95-a49f-3d0ff565e61c%7D/)*
The code has just been changed to
def _set_time_format(self, value):
"""Set number format for Python date or time"""
fmts = {
datetime.datetime:numbers.FORMAT_DATE_DATETIME,
datetime.date:numbers.FORMAT_DATE_YYYYMMDD2,
datetime.time:numbers.FORMAT_DATE_TIME6,
datetime.timedelta:numbers.FORMAT_DATE_TIMEDELTA,
}
self.number_format = fmts[type(value)]
from (v 2.5.5)
def _set_time_format(self, value):
"""Set number format for Python date or time"""
if isinstance(value, datetime.datetime):
self.number_format = numbers.FORMAT_DATE_DATETIME
elif isinstance(value, datetime.date):
self.number_format = numbers.FORMAT_DATE_YYYYMMDD2
elif isinstance(value, datetime.time):
self.number_format = numbers.FORMAT_DATE_TIME6
elif isinstance(value, datetime.timedelta):
self.number_format = numbers.FORMAT_DATE_TIMEDELTA
return value
You can see that version 2.6 will throw key error when the value does not have one of the above types.
I have experienced this key error when using pandas.to_excel method
df.to_excel(writer, "output")
The problem is that my value is of type pandas.TimeStamp and thus not recognized. Please return value when the type is not recognized. Thanks
issue