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 :

Macro transformation csv en xls


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 42
    Par défaut Macro transformation csv en xls
    Hello tout le monde!!

    Alors voila je ne connais pas grand chose au niveau des macros excel et j'aimerais faire une conversion du format csv au format excel.
    Je génére via un code php un doc csv et afin de le rendre plus fonctionnel j'aimerais créer un seul fichier excel avec une mise en forme spécifique et remplacer les données par celle du dernier csv générer.

    Je pense que c'est possible mais j'ai besoin de votre aide =)

    Merci d'avance =)

  2. #2
    Membre Expert Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Par défaut
    Bonjour,

    Tu as 2 possibilités :
    - Soit tu ouvres directement le csv en Excel (pour le code, un petit coup d'enregistreur de macro devrait t'aider, quitte à nous le proposer ensuite pour correction ou amélioration). Le seul problème étant qu'il va prendre les paramètres par défaut d'Excel qui dépendent de l'environnement (Séparateur de colonne, séparateur de décimal, format de date...). C'est sans doute la méthode la plus simple si le format du csv est compatible et que la macro ne sera pas utilisée sur d'autres environnements.
    - Soit tu lis les lignes du fichier avec ce tuto. Ensuite tu peux utiliser la fonction Split avec le séparateur de colonnes qui tu maîtrises, tu peux parser les nombres et les dates en maîtrisant leur format. C'est une peux plus compliqué à mettre en place, mais tu maîtrises tout. La fonction recherche de ce forum te donneras de nombreux posts traitant du même problème et qui pourront t'aider.

  3. #3
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 42
    Par défaut
    Merci pour ta réponse!
    Bah si tu veux je génère des fichiers excel mais en format csv que je ré enregistre dans le bon format après pour une utilisation perso je n'aurais pas creuser plus loin puisque c'est simplement une passerelle pour un publipostage mais étant donné que c'est pour un projet de stage j'ai pas trop le choix si je laisse sa comme ça sa va pas le faire ><' donc au final je me demande si la fusion des 2 documents (le beau et le csv) ne peuvent pas ce fusionner afin de ne faire qu'un.
    J'ai commencer a voir ton tuto mais pense tu que sa fonctionne via php puisque c'est écrit que c'est pour vba?

  4. #4
    Membre Expert Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Par défaut
    Je n'avais pas compris. Je pensais que tu générais le csv en PHP et qu'ensuite, tu voulais l'intégrer dans Excel.
    Je pense qu'il vaut mieux que tu ailles voir sur le forum PHP dans ce cas. Je ne sais pas si on peut piloter un Excel, ça m'étonnerait.

  5. #5
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 42
    Par défaut
    d'accord merci je vais essayer

    Mais je penser via une macro c'est pas possible d'y arriver?
    Je ne connais pas du tout les macros avec excel donc bon je préfère demander l'avis de personnes expérimentés ^^

  6. #6
    Membre Expert Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Par défaut
    J'avoue que je ne comprends plus bien si tu veux faire du PHP ou du VBA.
    En tout cas, en VBA, les pistes que je t'ai fournies devraient faire l'affaire. Et tu pourrais toujours créer un classeur qui traite tout ça automatiquement à l'ouverture et l'ouvrir simplement via le PHP.

  7. #7
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 42
    Par défaut
    je ré-explique alors ^^

    J'ai un projet avec une base de données dériere mon projet doit pouvoir trier les enregistrements en fonction de critéres afin de pouvoir produire un publipostage.
    a partir de php je génére un tableau puis le reproduit en format csv. Mon csv s'ouvre dans excel et ce que je voudrais faire c'est qu'une fois mon csv créer je l'envoi directement dans un classeur excel avec une mise en page précise et qu'a chaque export du csv le fichier se met a jour.
    Puisque les 2 fichiers se retrouve sur excel je me demander si le fichier que je veux absolument garder avec la mise en forme ne pourrais pas comporter une macro qui permettrait de se mettre a jour.

    j'espére avoir été plus claire dans mes explications ^^

  8. #8
    Membre Expert Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Par défaut
    Ok.
    Tu pourrais créer un fichier Excel qui jouerait un rôle de script. A l'ouverture, il créerait une nouvelle feuille excel, y importerait les données du csv, les mettrait en forme et sauvegarderait ce nouveau fichier avant de se fermer.
    Ensuite à partir du PHP, au lieu d'ouvrir le csv, tu le sauves au bon endroit puis tu ouvres ton fichier Excel "script" qui te fait le boulot en VBA.

    Si maintenant, tu as besoin d'aide sur ce code VBA, relis mes premières propositions ou donne nous un exemple de format de ton fichier CSV (avec des données bidons bien sûr) et du format que tu voudrais avoir en sortie.

Discussions similaires

  1. Export resultat requete dans CSV et XLS ?
    Par wormseric dans le forum Oracle
    Réponses: 14
    Dernier message: 20/09/2006, 16h36
  2. comment transformer un Fichier xls (Excel) en XML
    Par sperron dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 13/04/2006, 16h35
  3. Enregistrer un fichier ".CSV" en ".XLS"
    Par Isa31 dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 13/03/2006, 14h05
  4. Conversion .csv en .xls
    Par Isa31 dans le forum Langage
    Réponses: 4
    Dernier message: 24/05/2005, 13h04

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