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 :

Problème avec xlsread entre deux versions Matlab


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2009
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 18
    Points : 8
    Points
    8
    Par défaut Problème avec xlsread entre deux versions Matlab
    Bonsoir,
    voici mon problème, à mon travail j'utilise Matlab 8, j'ai programmé quelque chose qui fonctionne parfaitement.
    Or en rentrant j'ai voulu modifié une ligne sur mon pc avec Matlab 7 (R14) et là surprise il y a un problème.
    Voici la fonction qui pose problème:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    [FILENAME, PATHNAME] = uigetfile('*.xls*','Choose SMPS''s Excel file');   
    cd(eval(['PATHNAME']));
    [d,n]=xlsread(FILENAME);
    et voici l'erreur qui en résulte:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ??? Error using ==> horzcat
    The following error occurred converting from logical to char:
    Error using ==> char
    Conversion to char from logical is not possible.
     
    Error in ==> num_dist_find_all_errors2 at 6
    [d,n]=xlsread(FILENAME);

    Ceci me parait bizarre car j'ai déjà utilisé auparavant uigetfiles et xlsread sans aucun problème (mais uniquement avec Matlab 7 (R14))

    Merci d'avance pour l'aide.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 304
    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 304
    Points : 52 881
    Points
    52 881
    Par défaut
    Pas besoin d'EVAL ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    [FILENAME, PATHNAME] = uigetfile('*.xls*','Choose SMPS''s Excel file');   
     
    [d,n]=xlsread(fullfile(PATHNAME,FILENAME));

  3. #3
    Futur Membre du Club
    Inscrit en
    Avril 2009
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 18
    Points : 8
    Points
    8
    Par défaut
    Merci mais l'erreur est toujours là.
    J'ai oublié de préciser qu'au travail je suis sur un pc au format américain (je suis aux USA actuellement)
    et que chez moi je suis sur mon portable donc sous format européen.
    Cela a-t-il une influence?

  4. #4
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 830
    Points
    14 830
    Par défaut
    Il est étrange ton message d'erreur, ou incomplet.
    Normalement MATLAB devrait remonter l'erreur jusqu'à la ligne qui cloche dans XLSREAD.

    Peux-tu nous dire ce que retourne :

  5. #5
    Futur Membre du Club
    Inscrit en
    Avril 2009
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 18
    Points : 8
    Points
    8
    Par défaut
    L'erreur était complète et c'est bien un problème de version Excel: les données sont issues d'un bloc note et lors de la conversion vers Excel sur la version américaine il a mis des , en flottante au lieu de . comme chez nous.
    L'erreur ayant disparue mon programme se lance bien, cependant il reste un léger soucis: j'ai un pc plus puissant que celui de mon travail hors la lecture du fichier Excel par xlsread prend environ 1min avec mon pc contre même pas 2sec à mon travail. Est-ce normal?

    Sinon est-ce normal que Matlab 7 me trouve des erreurs que ne voit pas Matlab 8 (le programme se bloque vers la fin suite à une erreur de définition d'une matrice alors que pour Matlab8 cela ne semble pas lui poser de problème.

    Merci.

  6. #6
    Futur Membre du Club
    Inscrit en
    Avril 2009
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 18
    Points : 8
    Points
    8
    Par défaut
    Bonsoir,
    en fait je reviens car l'erreur est toujours là,
    si j'ai des virgules dans mon fichier Excel (par exemple 10,52) xlsread ne vois que des NaN.
    Si j'ai des points à la place des virgules il y a la première erreur citée.

    Si quelqu'un a une idée merci d'avance.

Discussions similaires

  1. Problème avec NXServer entre deux postes
    Par Mockingbird dans le forum Réseau
    Réponses: 0
    Dernier message: 29/06/2008, 21h53
  2. Réponses: 18
    Dernier message: 20/07/2006, 17h55
  3. Réponses: 5
    Dernier message: 24/05/2006, 08h59
  4. Problème de relation entre deux tables + autre chose
    Par Goth_sensei dans le forum Langage SQL
    Réponses: 7
    Dernier message: 30/03/2006, 20h49
  5. Problème de compatibilité entre deux scripts
    Par frutix dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/01/2006, 14h24

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