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

MATLAB Discussion :

lecture de date dans un fichier Excel


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 206
    Par défaut lecture de date dans un fichier Excel
    Bonjour,
    je lis un fichier excel de 2000 lignes dont une colonne contient la date sous le format suivant: 01/19/2017 pour le 19 janvier 2017.
    Je fais comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    [xlsNUM,xlsSTR]=xlsread('myxlsfile.xls');
    mydate=xlsNUM(:,3);
    mydate2 = datevec(mydate);
    myDate est un vecteur contenant 2000 doubles et myDate2 est une matrice de dimensions 2000*6 qui devrait contenir la bonne date. Et non, au lieu du 19 janvier 2017, j'obtiens le 21 janvier 117!!!????
    Qui peut retrouver la bonne date??
    Merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 206
    Par défaut
    et en faisant datevec(mydate+693960), je retrouve la bonne date!!!! Apparemment, excel retourne la date à apartir du 1/1/1900 ou quelque chose comme ça?

  3. #3
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317

  4. #4
    Modérateur
    Avatar de le fab
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    1 885
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 885
    Par défaut
    salut

    bon, la tu délègue à xlsread le déchiffrage de ta date, et il y a des differences de temps 0 entre excel, matlab et d'autres systèmes
    du coup moi j'utiliserais la syntaxe DateVector = datevec(DateString,formatIn) plutot que DateVector = datevec(DateNumber) que tu utilises toi
    c'est à dire que j'utiliserais plutot le tableau de cellules xlsSTR dans lequel il y a la date telle que tu la trouve dans excel, au format string, sans interpretation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    myDate2 = dateVec(xlsSTR (2:end,3),'dd/mm/yyyy'); % 2 si une ligne de titre dans ton excel
    sinon tu as la syntaxe suivante qui est intéressante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    [num,txt,~,myDate] = xlsread(fullfilename{1},1,'','',@convertSpreadsheetDates);
    mydate2 = cell2mat(vTemps(2:end,3)); % 2 si une ligne de titre dans ton excel
    enfin si tu as une version récente de matlab (2016b ou +) il y a les objets timetable qui peuvent être intéressants :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    T = readtable('myxlsfile.xls');
    TT = table2timetable(T);
    mydate2 = TT.nomDeLaColonneDate;

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 206
    Par défaut
    Merci beaucoup

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 206
    Par défaut
    Encore une question: comment savoir, à partir de matlab, si le fichier excel a été créé sur wwindows ou sur mac?

  7. #7
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Je ne pense pas que cela soit possible. Même en décompressant l'archive xlsx, il ne semble pas y avoir d'information dans les fichiers.

    Tu peux aussi poser ta question dans le forum Excel et revenir ici après si tu obtiens une réponse.

Discussions similaires

  1. comparer 2 dates dans 2 fichiers excel
    Par sat3367 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/07/2018, 10h39
  2. [WD20] Lecture des images dans un fichier Excel
    Par tunizar dans le forum WinDev
    Réponses: 2
    Dernier message: 02/03/2017, 12h19
  3. Comparaison de date dans un fichier excel
    Par elkhansa dans le forum VBScript
    Réponses: 0
    Dernier message: 18/09/2013, 17h45
  4. lecture et écriture dans un fichier Excel
    Par chebmo90 dans le forum Débuter
    Réponses: 5
    Dernier message: 05/08/2009, 15h15
  5. Lecture et Ecriture dans un fichier Excel
    Par qiqi1111 dans le forum C++
    Réponses: 2
    Dernier message: 18/12/2008, 19h10

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