Published August 9, 2023 | https://doi.org/10.59348/dbrja-s7w36

Converting Excel date serial numbers to Python datetime format

Creators & Contributors

  • 1. Birkbeck, University of London, English and Humanities

Excel stores dates in a very odd way: a serial number of days since 1900.

To convert an Excel datestamp to a Python datetime object, you can use this function:

def date_serial_number(serial_number: int) -> datetime:
    """
    Convert an Excel serial number to a Python datetime object
    :param serial_number: the date serial number
    :return: a datetime object
    """
    # Excel stores dates as "number of days since 1900"
    import datetime as dt

    delta = dt.datetime(1899, 12, 30) + dt.timedelta(days=serial_number)
    return delta

Hope this helps someone.

Converting Excel date serial numbers to Python datetime format was originally published by Martin Paul Eve at eve.gd: Martin Paul Eve on August 10, 2023.

Files

10.59348_dbrja-s7w36.pdf

Files (106.1 kB)

Name Size Download all
md5:8ec4d465977f424e062174d36dc2889d
106.1 kB Preview Download

Additional details

Description

Excel stores dates in a very odd way: a serial number of days since 1900.

Dates

Issued
2023-08-09T00:00:00Z
Updated
2023-08-09T23:00:00Z