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

 C++ Discussion :

Automatisation d'une tache de lecture de fichiers txt puis écriture dans excel


Sujet :

C++

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 6
    Points : 4
    Points
    4
    Par défaut Automatisation d'une tache de lecture de fichiers txt puis écriture dans excel
    Pré propos :
    j'ai déjà posté dans la section excel de office et VBA :
    http://www.developpez.net/forums/d10...criture-excel/
    On m'encourage à voir ça en C++ alors me voila !

    Bonjour, je connais rien à la programmation mais je me dis que me lancer ne serait pas mal!

    je suis étudiant en biologie, et j'aurais besoin d'un gros coup de pouce :

    J'utilise un appareillage d'analyse qui me produit des rapports d'analyse

    j'aimerais automatiser la lecture de ce type de rapport puis son intégration dans excel, afin d'ensuite réaliser des calculs dans excel (qui eux aussi pourraient être automatisé ensuite, ce serait à voir dans un deuxième temps)

    en ce qui concerne les fichier de rapports :
    on a une organisation comme ceci :

    pour chaque analyse, un dossier est crée et dans ce dossier, je trouve le fichier rapport.txt sous cette forme

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    Batch Run # 9 of 40
    Data File C:\CHEM32\1\DATA\RZ 10-20 2011-03-10 15-45-36\SIG1000013.D
    Sample Name: C2
    Instrument 1 11/03/2011 11:28:48  
     
    =====================================================================
    Acq. Operator   : RENE                           Seq. Line :  13
    Acq. Instrument : Instrument 1                    Location : Vial 13
    Injection Date  : 10/03/2011 07:04:40                  Inj :   1
                                                    Inj Volume : 1 µl
    Acq. Method     : C:\Chem32\1\DATA\JJB\RZ 10-20 2011-03-10 15-45-36\RZ FAMES.M
    Last changed    : 14/02/2011 07:44:20  by Claire
    Analysis Method : C:\CHEM32\1\METHODS\LF2.M
    Last changed    : 11/03/2011 11:13:15 
    =====================================================================
                             Area Percent Report                         
    =====================================================================
     
    Sorted By             :      Signal
    Multiplier            :      1.0000
    Dilution              :      1.0000
    Use Multiplier & Dilution Factor with ISTDs
     
     
    Signal 1: FID1 A, Front Signal
     
    Peak RetTime Type  Width     Area      Height     Area  
      #   [min]        [min]   [pA*s]      [pA]         %
    ----|-------|----|-------|----------|----------|--------|
       1   3.505 BB    0.0491  806.85657  260.73309  5.47135
       2   3.683 BB    0.0581   34.59731    8.74691  0.23461
       3   4.271 BB    0.0573 2630.44409  726.19055 17.83724
       4   5.153 BV    0.0698  402.81317   90.78178  2.73151
       5   5.336 VB    0.0751 1749.82727  364.13791 11.86571
       6   5.780 BB    0.0713 3307.15698  723.42102 22.42607
       7   6.433 BB    0.0730 2319.65869  483.20779 15.72978
       8   7.305 BV    0.0794  264.77740   51.10927  1.79548
       9   7.502 VB    0.0766 2639.53589  499.58737 17.89889
      10   7.920 BB    0.0643  244.70880   59.09523  1.65939
      11   8.461 BB    0.0688   65.16162   14.68499  0.44187
      12   9.197 BV    0.0778   38.39365    7.13300  0.26035
      13   9.408 VB    0.0929  242.99591   40.01165  1.64777
    Totals :                  1.47469e4  3328.84057
     
    =====================================================================
                              *** End of Report ***
    Le but serait de créer un fichier excel, dans le répertoire :
    C:\CHEM32\1\DATA\RZ 10-20 2011-03-10 15-45-36\
    qui contient le répertoire
    SIG1000013.D contenant un rapport, mais aussi les répertoires
    SIG1000012.D et SIG1000014.D etc...

    Je cherche à extraire les donnée suivantes :
    le nom de l'échantillon :
    C2

    et les données correspondantes aux colonnes :
    RetTime
    Area
    Area %

    Ces colonnes peuvent contenir un nombre de ligne différent pour chaque analyse

    Je voudrais donc générer un fichier excel (ou alors à partir d'un fichier excel, créer une macro qui irait chercher toutes ces données), qui contient pour chaque analyse, une feuille qui aurait pour titre le nom de l'échantillon, et ensuite les 3 colonnes, et les valeurs correspondantes.

    J'ai pour cela plusieurs questions :
    A votre avis, est ce qu'il vaut mieux créer une macro directement avec excel, ou plutôt créer un script d'extraction des données et de génération d'un fichier excel correspondant ?
    Sachant que :
    Il faudrait explorer pour ce dossier général, dans chaque sous dossier afin de trouver le fichier texte, et si il y en a un le traiter.
    En gros, j'ai 100 fichier rapport par analyse.


    je pense que l'on peut développer en 2 temps qui peuvent être plus ou moins indépendantes :
    1 explorer les dossiers et trouver le fichier Rapport.txt si il y en a un dans le sous dossier exploré
    2 extraire les données du fichier

    Merci de me présenter votre avis, et si vous avez une idée de quoi utiliser...

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 298
    Points : 886
    Points
    886
    Par défaut
    Salut,

    quels calculs souhaites-tu faire en Excel ? Moyenne, variance, écart-type,... ? Je pense qu'une recherche sur google te montrera très facilement comment lire un fichier texte. Je t'envoie en pièce jointe un code qui te récupère tous les fichiers d'un dossier et de ses sous-dossiers.

    Maintenant, si tu veux tracer des courbes, ce que je fais tout le temps, est un programme en C++ qui fait tout et qui écrit les résultats dans un fichier texte. Ensuite, je lis ce fichier de sortie pour y tracer mes courbes soit en Matlab soit en Excel.

    Bon courage et n'hésite pas à nous montrer ton code si tu as un souci
    Fichiers attachés Fichiers attachés

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup

    Dans un premier temps, c'est des aires que je veux récupèrer en fonction du temps
    (le logiciel d'analyse me fait une integration de pic en fonction du temps)

    faire des courbes, etc ce serait ben, mais ca dépend tellement de ce qu'on analyse que ce n'est pas ce que je cherche à faire dans l'immediat.

    je vais essayer de me pencher la dessus alors, mais c'est un bon début !

    merci en tout cas

Discussions similaires

  1. [Oracle] Découpage d'un fichier .txt puis insertion dans base mysql
    Par laetiheu dans le forum PHP & Base de données
    Réponses: 22
    Dernier message: 20/08/2016, 12h52
  2. Lecture de tables access et écriture dans excel
    Par frabey dans le forum VBA Access
    Réponses: 6
    Dernier message: 01/07/2014, 16h16
  3. automatisation d'une tache
    Par jexcelle dans le forum Word
    Réponses: 1
    Dernier message: 05/08/2012, 20h24
  4. Réponses: 2
    Dernier message: 11/03/2011, 18h06
  5. automatisation d'une tache
    Par jj2000 dans le forum Apache
    Réponses: 1
    Dernier message: 19/06/2007, 17h05

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