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 :

importer et traiter un fichier csv dans une feuille excel [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    responsable projets géologie
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : responsable projets géologie
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Par défaut importer et traiter un fichier csv dans une feuille excel
    Bonjour,
    Je suis nouveau et totalement ignare en VBA.
    J'ai fait des recherches sur internet et sur le forum. Cela m'a permis de progresser dans la compréhension (en particulier deux discussions de février et juin 2011), mais je n'ai pas trouvé la réponse à mes problèmes.
    J'ai des sondes qui enregistrent des pressions et températures toutes les 3 minutes, et que je relève environ une fois par an.
    L'interface me fournit des fichiers au format csv avec des virgules pour séparateurs. Il y a 13 colonnes et environ 175000 lignes.
    J'ai mis au point une procédure pour aboutir à une feuille excel de trois colonnes : date, pression, température.
    Mais je fais le traitement à la main et c'est fastidieux (18 opérations par feuille).
    Je crée un dossier par relevé de sonde, ce dossier contient d'abord le fichier csv, puis j'y rajoute le fichier excel avec les données traitées.
    J'ai utilisé l'enregistreur de macros pour créer une macro en suivant ma procédure. Ca a bien marché, j'ai testé la macro en ouvrant une deuxième feuille de calcul dans le classeur où j'avais créé la macro. Mais au moment d'enregistrer il m'a dit qu'il existait déjà un fichier du même nom au même endroit. Normal, c'était celui créé en créant la macro.
    Ce que je voudrais pouvoir faire :
    Créer un nouveau classeur excel dans le même dossier que le fichier csv visé, lancer la macro et à la fin avoir mes données traitées et enregistrées dans un fichier excel qui aurait le même nom que le fichier csv sauf le suffixe.
    Lors de mon essai, j'ai enregistré la macro dans "ce classeur".
    Faut-il que je l'enregistre dans "classeur de macros personnelles"?
    Comment faire pour avoir une macro qui s'adapte à l'emplacement où on la fait tourner?
    Plus ambitieux :
    Serait-il possible de créer une macro qui ferait un traitement par lot, c'est à dire qui prendrait tous les fichiers csv dans les sous-dossiers d'un dossier maître, et qui ferait le traitement pour chacun en enregistrant le résultat sous forme d'un fichier excel dans chaque sous-dossier?

    J'espère n'avoir pas été trop confus, merci d'avance pour vos réponses

  2. #2
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut heu
    Bonjour

    la réponse est oui oui et oui
    aurais tu une exemple de csv pour que l'on y voit plus clair et les critères qui permette de réduire les colonnes
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  3. #3
    Membre à l'essai
    Homme Profil pro
    responsable projets géologie
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : responsable projets géologie
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Par défaut
    Bonjour,
    Et merci de m'avoir répondu.
    Comme le forum n'accepte pas les csv, j'ai converti le fichier exemple en .xlsx, mais c'est pareil.
    Pour alléger, je n'ai pris que les quelques premières lignes, mais le fichier original fait 173714 lignes. Ca varie de quelques centaines de lignes d'un fichier à l'autre.
    J'ai mis aussi le descriptif de la procédure que je suis quand je traite à la main. C'est un peut tordu et ça pourrait surement être simplifié, mais là n'est pas le propos.
    J'ai enfin rajouté le code tel que l'enregistreur de macros me l'a sorti.
    Mon problème est en fait au début et à la fin de la procédure, pour écrire le bon adressage afin comme je le demandais dans mon premier message de :
    "Créer un nouveau classeur excel dans le même dossier que le fichier csv visé, lancer la macro et à la fin avoir mes données traitées et enregistrées dans un fichier excel qui aurait le même nom que le fichier csv sauf le suffixe."

    Bien cordialement

  4. #4
    Membre très actif Avatar de lionel86500
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2013
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

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

    Informations forums :
    Inscription : Juin 2013
    Messages : 144
    Par défaut
    Bonjour,

    je confirme ce que dis patricktoulon

    Lecture d'un fichier, extraction de donnée et enregistrement dans un autre fichier.
    Heureusement que VBA fais cela.

  5. #5
    Membre à l'essai
    Homme Profil pro
    responsable projets géologie
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : responsable projets géologie
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Par défaut
    Merci, mais ce que j'aimerais savoir c'est comment?

  6. #6
    Membre très actif Avatar de lionel86500
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2013
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

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

    Informations forums :
    Inscription : Juin 2013
    Messages : 144
    Par défaut
    Déjà il faut connaitre le langage
    Et puis après avec un peu de recherche on trouve des exemples partout sur le net

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

Discussions similaires

  1. [XL-2007] Import de plusieurs fichiers (.lst) dans une feuille Excel
    Par lach12 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 29/01/2015, 09h34
  2. Importer des données d'un fichier PDF dans une feuille Excel
    Par pourinfo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/03/2010, 14h58
  3. [XL-2003] Insertion d'un fichier csv dans une feuille xls
    Par giom182 dans le forum Excel
    Réponses: 10
    Dernier message: 20/07/2009, 18h52
  4. [XL-2003] Importer automatiquement un fichier CSV dans une feuille
    Par Mikayel dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/06/2009, 10h35
  5. Liste des fichiers CSV dans une feuille
    Par DubDub dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 19/02/2009, 08h05

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