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 :

Exécuter une "Macro EXCEL" sur l’ensemble des fichiers "TEXTE" présents dans un même dossier.


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2017
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Exécuter une "Macro EXCEL" sur l’ensemble des fichiers "TEXTE" présents dans un même dossier.
    Bonjour à toutes et à tous.

    Voici mon problème : J’aimerai exécuter une "Macro EXCEL" sur l’ensemble des fichiers "TEXTE" présents dans un même dossier.

    Explication :

    _ Un dossier "Photo" contient 3 fichiers "TEXTE" (1.txt, 2.txt, 3.txt).
    _ Chaque fichier ".txt" est constitué exactement de la même façon :
    - à la 3ième ligne est renseigné le "Nom"
    - à la 6ième ligne est renseigné le "Prenom".

    Je voudrai donc que ces informations soient importées dans une feuille EXCEL de la manière suivante :

    A B
    1 Nom (3ième ligne de 1.txt) Prenom (6ième ligne de 1.txt)
    2 Nom (3ième ligne de 2.txt) Prenom (6ième ligne de 2.txt)
    3 Nom (3ième ligne de 3.txt) Prenom (6ième ligne de 3.txt)

    Voici les "Macro" que j’exécute, indépendamment l’une après l’autre, malheureusement!!
    J’aimerai justement les synthétiser en "une seule et unique Macro EXCEL" et y rajouter de quoi traiter tous les Fichier ".txt" (présent dans le dossier "Photo") d'un coup !

    Pour importer le "Nom" Pour importer le "Prenom"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Nom()
    Dim ifile As Integer
    ifile = FreeFile
    Dim x As Long
    Dim Data As String
    Open "D:\Photo\1.txt" For Input As #ifile
    x = 1
    Do While Not EOF(1)
    Line Input #ifile, Data
    If x = 3 Then Cells(1, 1) = Data
    x = x + 1
    Loop
    Close #ifile
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Prenom()
    Dim ifile As Integer
    ifile = FreeFile
    Dim x As Long
    Dim Data As String
    Open "D:\Photo\1.txt" For Input As #ifile
    x = 1
    Do While Not EOF(1)
    Line Input #ifile, Data
    If x = 6 Then Cells(1, 2) = Data
    x = x + 1
    Loop
    Close #ifile
    End Sub

    Merci beaucoup pour l’aide que vous pourrez m’apporter.

  2. #2
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut

    Bonjour,

    consulter déjà l'aide VBA interne de la fonction   Dir   …

    ___________________________________________________________________________________________________________
    Je suis Paris, London, Manchester, Egypte, Stockholm, Istanbul, Berlin, Nice, Bruxelles, Charlie, …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2017
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci pour l'information. Je vais regarder.

  4. #4
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2017
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci beaucoup. Je regarde ça aussi.

Discussions similaires

  1. [XL-2007] Problème macro excel 2007 sur une boucle
    Par neo222816 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 18/08/2014, 12h34
  2. Réponses: 3
    Dernier message: 09/07/2009, 15h19
  3. Réponses: 12
    Dernier message: 28/04/2009, 09h20
  4. Exécuter une requête MySQL en php sur serveur OVH
    Par phebus1204 dans le forum Requêtes
    Réponses: 3
    Dernier message: 15/04/2009, 16h41
  5. [VBA] utilisation d'une macro excel 2003 sur excel 2004 for mac
    Par fofika dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 08/11/2007, 15h30

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