|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Claire Étudiant Inscription : janvier 2012 Messages : 33 ![]() |
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 =) |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
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.
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Claire Étudiant Inscription : janvier 2012 Messages : 33 ![]() |
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? |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
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.
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Claire Étudiant Inscription : janvier 2012 Messages : 33 ![]() |
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 ^^ |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
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.
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Claire Étudiant Inscription : janvier 2012 Messages : 33 ![]() |
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 ^^ |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
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.
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com