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

Macros et VBA Excel Discussion :

Données dans fichier .txt vers tableau en .xls


Sujet :

Macros et VBA Excel

  1. #1
    Invité1
    Invité(e)
    Par défaut Données dans fichier .txt vers tableau en .xls
    Bonjour,

    Voilà je suis totalement novice en VBA et je voudrais savoir s'il y a une âme charitable qui peut m'aider sur mon problème.

    En fait je génère souvent des fichiers .txt de données météo à partir du minitel (fichier joint meteo.txt pour exemple, c'est en fait une suite de captures d'écran du minitel heure par heure) puis je les remets manuellement sous forme de tableau excel (fichier joint meteo.xls) et c'est très fastidieux.

    Je suppose que tout cela peut être automatisé à l'aide d'une macro. J'ai beau essayé de le faire moi même, mais je pars de vraiment trop loin au niveau de ce langage et j'ai pas vraiment le temps de m'y mettre.

    Est-ce qu'une personne ayant le cœur sur la main pourrait me trouver un bout de code qui me permettrait de passer de mon fichier meteo.txt à mon fichier meteo.xls ?

    Merci d'avance
    Fichiers attachés Fichiers attachés

  2. #2
    Membre chevronné Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Points : 2 168
    Points
    2 168
    Par défaut
    Bonjour,
    Je suppose que tu sais le faire manuellement non?
    Donnée/Données externe/importer des données (pour 2003)

    Donc tu lance l'enregistreur de macro tu fait l'importation manuelle tu coupe l'enregistreur et tu regarde le code. Tu utilise l'aide F1 (sélection du mot clef puis F1) pour regarder ce que tu ne comprend pas. Ensuite si ce n'est toujours pas bon tu reviens sur le forum tu copies le code (en utilisant les balise adéquate sinon ) et tu explique ce qui ne va pas

    Bonne chance

    ps : un peu de lecture
    Vos premiers pas dans l'éditeur de macros Excel
    « Il n'y a pas de recette miracle qui permet aux gens d’écrire des programmes corrects sans avoir à réfléchir. Il faut apprendre aux gens comment réfléchir »

  3. #3
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Bonjour,

    Ci dessous un code qui fait le début de ce que tu souhaites.
    A toi de le terminer en nous demandant de l'aide si besoin.

    Code a analyser en t'appuyant sur la documentation que krovax t'a mis en lien

    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
     
    Sub Importation()
     
    Dim StrLigne As String
    Dim i As Long
    Dim strSplit() As String
     
    i = 2
     
    Open "C:\meteo.txt" For Input As #1
     
    Do While Not EOF(1)
     
        Line Input #1, StrLigne
        StrLigne = Trim(StrLigne)
        strSplit = Split(StrLigne, " ")
     
        Select Case LCase(Trim(Left(StrLigne, 5)))
     
            Case "relev"
                i = i + 1 'changement de ligne a la nouvelle date trouvée
                Range("B" & i).Value = strSplit(3) & "-" & strSplit(4)
                Range("C" & i).Value = strSplit(5)
     
            Case "tempé"
                Range("D" & i).Value = strSplit(UBound(strSplit) - 1) & " " & strSplit(UBound(strSplit))
     
            Case "humid"
     
     
            Case "vent"
     
     
            Case "préci"
     
     
        End Select
     
    Loop
     
    Close #1
     
    End Sub
    Jérôme

Discussions similaires

  1. Récupérer données dans fichier .txt
    Par hugues6358 dans le forum Général Python
    Réponses: 25
    Dernier message: 09/12/2013, 09h08
  2. Extraire des données dans fichier txt
    Par islande dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 28/03/2013, 13h42
  3. Lecture fichier txt vers tableau alloué
    Par yeboum dans le forum Fortran
    Réponses: 3
    Dernier message: 27/11/2007, 09h31
  4. Récuperer des données de fichier pdf vers une feuille xls
    Par zeralium dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 31/08/2007, 14h03
  5. lire données dans fichier txt
    Par flo456 dans le forum Langage
    Réponses: 5
    Dernier message: 14/09/2006, 08h01

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