IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Conversion de format date entre excel et python


Sujet :

Python

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 13
    Points : 7
    Points
    7
    Par défaut Conversion de format date entre excel et python
    Bonjour,

    j'ai actuellement un petit problème entre excel et python. je m'explique

    j'ai un fichier excel ou par exemple il y a un champ date avec pour valeur :
    38899

    bizarrement quand je convertis la cellule j'obtiens : 01/07/2006.
    je dis bizarrement car je ne connais pas ce procédé ^^.

    bref, d'autre part, via un pti bout de prog, je recupere les champs de mon fichier excel (enfin csv a ce moment la ^^) et notamment ce chiffre de 38899.

    Ce que j'aimerais savoir c'est comment convertir ce chiffre en date, tel que le fait excel.
    et inversement, comment à partir de la date, récupérer ce chiffre étrange.



    Voila, donc si vous avez quelques indications à ce sujet, je suis preneur ^^.

    Merci d'avance pour vos réponses

  2. #2
    Membre expérimenté Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Points : 1 728
    Points
    1 728
    Par défaut
    bonjour,

    excel compte les jours depuis le 1/1/1900 (day 1)
    Le module datetime peut t'aider:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    import datetime
    d0 = datetime.date(1900, 1, 1)
    delta = datetime.timedelta(days=(38899 -2))
    d1 = d0 + delta
    print d1
    pourquoi -2?

    -1 car le 1/1/1900 est le jour 1
    -1 car Microsoft compte 29 jours pour le mois de fevrier 1900.

    Bon python.
    "Etre conscient de la difficulté permet de l'éviter.."
    Lao-Tseu.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Merci pour les informations et le source pacificator.

    Je ne connaissais pas ce principe de 1900 ^^.

    Merci encore, et comme tu le dis si bien " Bon python "

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] SQL conversion de format date
    Par lololoic dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 23/08/2008, 14h05
  2. Transfert de date entre Excel et ACCESS
    Par Sly2k dans le forum VB.NET
    Réponses: 1
    Dernier message: 08/08/2007, 22h32
  3. Format Date sous excel
    Par nicolep dans le forum Excel
    Réponses: 5
    Dernier message: 17/04/2007, 15h40
  4. Format date dans excel
    Par fmris dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 01/11/2006, 10h06
  5. [ADO.Net][VSTO][VBNet 2.0]Quel est format Date null Excell ?
    Par pat59 dans le forum Accès aux données
    Réponses: 4
    Dernier message: 30/03/2006, 11h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo