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 :

Ecriture variables d'une boucle dans un fichier Excel


Sujet :

MATLAB

  1. #1
    Nouveau membre du Club
    Profil pro
    Physicien médical
    Inscrit en
    Juillet 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Physicien médical
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2010
    Messages : 47
    Points : 35
    Points
    35
    Par défaut Ecriture variables d'une boucle dans un fichier Excel
    Salut a tous!

    J'ai une petite question concernant donc l'ecriture dans un fichier Excel; pourtant lorsque je lance mon programme il ne voit aucune erreur a la compilation..c'est a l'ouverture du fichier Excel au'un message d'erreur apparait..Quelque chose vous choquerait-il dans ce code ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    pat = fopen ('C:\Rodolphe\Correspondence.xls','wt');
    gn= { 'Patient Name', 'Number associated'};
    s = xlswrite('Correspondence.xls', gn );
    for k=1:w
        rep2 = fullfile('C:\Rodolphe',sprintf('DicomFile%d',k));
        Z = dir (rep2);
        f = floor(rand(1)*100000000);
        for n =3: numel (Z)
            N = dicominfo (fullfile(rep2, Z(n).name));
            P= N.PatientName;
            famname = P.FamilyName;
            P.FamilyName = f;
            fam2name = P.FamilyName;
        end
           gn2= {famname , fam2name ;};
        s = xlswrite('Correspondence.xls', gn2);
    Le but de celui ci etant:

    1ere ligne du Excel: mettre les titres de colonne (ceux de gn)
    Lignes suivantes: Mettre la valeur des variables generees a chaque tour de boucle...mes variables ont bien les valeurs que je souhaite, donc je comprends pas trop, je dois surement mal utiliser xlswrite, j'ai pourtant essaye de m'aider de la FAQ et de l'aide MATLAB..

    Merci beaucoup d'avance!

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    La fonction xlswrite ne necessite pas que l'on utilise fopen.
    À mon avis c'est là que ça coince, il te suffit donc que tu enlèves la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pat = fopen ('C:\Rodolphe\Correspondence.xls','wt');

  3. #3
    Nouveau membre du Club
    Profil pro
    Physicien médical
    Inscrit en
    Juillet 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Physicien médical
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2010
    Messages : 47
    Points : 35
    Points
    35
    Par défaut
    Bonjour !

    Deja merci de tn element d'aide, je ne savais pas que fopen ne s'appliquait pas a l'ecriture dans un Excel

    Malheureusement un probleme subsiste: Lorsque je tente d'ouvrir mon fichier Excel, il me dit:

    " The file you are trying to open is in a different format than specified by the file extension. Verify that the file is not corrupted and is from a trusted source before opening the file"
    Je ne me sens pas l'ame d'un corrompu ^^ et je n'ai pas touche grand chose lorsque j'ai cree ce fichier excel...dois-je donc le sauver a un autre format? (on s'eloigne un peu de MATLAB, desole...)

    Merci d'avance!

  4. #4
    Invité
    Invité(e)
    Par défaut
    Oui cela me le fait aussi...
    Si tu peux le lire avec ta version d'Excel, enregistre le avec l'extension .xlsx.
    Sinon tu peux créer le fichier avant l'exécution de ton code.

  5. #5
    Nouveau membre du Club
    Profil pro
    Physicien médical
    Inscrit en
    Juillet 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Physicien médical
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2010
    Messages : 47
    Points : 35
    Points
    35
    Par défaut
    Okay,merci! effectivement avec l'extension .xlsx je peux desormais ouvrir mon fichier...sauf que rien n'est ecrit dedans

    Je suppose qu'aucun fclose n'est necessaire car pas de fopen, j'ai un peu de mal a me figurer pourquoi ca ne fonctionne pas ce pti code

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    As-tu regardé le contenu de gn2 avant l'écriture?
    Ensuite étant donné que tu veux changer de ligne à chaque nom de patient écrit, je te conseille de créer une variable nb_ligne qui situera l'écriture dans le fichier Excel et qui augmentera suivant le nombre de patients déjà écrits dans le fichier Excel.

    Ou, une autre solution: remplir gn2 avec tous les patients et faire ensuite une seule écriture à la fin. Ce qui sera bien plus rapide car tu n'ouvriras plus Excel à chaque itération (à moins que tu n'utilises xlswrite1)

  7. #7
    Nouveau membre du Club
    Profil pro
    Physicien médical
    Inscrit en
    Juillet 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Physicien médical
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2010
    Messages : 47
    Points : 35
    Points
    35
    Par défaut
    Salut,

    Finalement j'ai opte pour la solution de creer un fichier texte sur lequel j'ai mis des tabulations pour qu'il soit reconnu facilement par excel, et ca marche nickel ^^

    Merci beaucoup pour ton aide en tout cas, et bonne continuation

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

Discussions similaires

  1. Ecrire une variable d'une boucle dans un fichier
    Par csdty dans le forum Débuter
    Réponses: 3
    Dernier message: 11/09/2012, 11h15
  2. Ecriture/ Lecture d'une array dans un fichier
    Par Seth77 dans le forum C#
    Réponses: 4
    Dernier message: 19/03/2012, 21h39
  3. [Bash]:Afficher une boucle dans un fichier ?
    Par byloute dans le forum Linux
    Réponses: 2
    Dernier message: 03/04/2007, 11h12
  4. [VBA] insérer une ligne dans un fichier excel
    Par cokinoumasterflash dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/07/2005, 18h52
  5. Enregistrer le résultat d'une requête dans un fichier Excel
    Par Isa31 dans le forum Bases de données
    Réponses: 4
    Dernier message: 24/05/2005, 14h31

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