Dupliquer données d'un tableur à l'autre

Fermé
Julie - Modifié par Julie le 14/10/2011 à 13:53
tchernosplif Messages postés 600 Date d'inscription dimanche 8 novembre 2009 Statut Membre Dernière intervention 21 juin 2015 - 21 oct. 2011 à 13:27
Bonjour,

Voilà, j'extrais de mon logiciel commercial un fichier .csv contenant de nombreuses informations pour la facturation mais dont certaines me sont inutiles. Le logiciel ne me permet malheureusement pas d'extraire uniquement les données qui m'intéressent.

Je souhaiterais pouvoir transférer les données (donc certaines colonnes et pas d'autres) de mon premier fichier .csv (ou même déjà converti en tableur) vers un second que j'aurais mis en forme avec seulement les données dont j'ai besoin.

2ème difficulté, j'ai besoin d'extraire ce fichier régulièrement et donc d'avoir une macro ou une méthode qui ne m'oblige pas à refaire la manip' à chaque fois puisque tout ça, c'est évidemment pour gagner du temps et avoir un tableau propre et facilement exploitable.

Et la cerise sur le gâteau serait que mon nouveau tableau ne perde pas sa mise en forme conditionnelle (ex : si payé alors ligne couleur jaune) =D

Merci de vos conseils avisés.

Julie


A voir également:

6 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
14 oct. 2011 à 15:47
Bonjour,
On va étudier la question...
Une solution serait de :
- faire une copie du fichier initial préalablement converti en xls,
- dans cette copie, supprimer les colonnes inutiles
- enregistrer les modifications.

Si cette méthode vous convient, merci de nous communiquer les informations suivantes :
1- Nombre de colonnes de votre fichier initial,
2- Lettres correspondantes aux colonnes "à conserver"
0
tchernosplif Messages postés 600 Date d'inscription dimanche 8 novembre 2009 Statut Membre Dernière intervention 21 juin 2015 245
14 oct. 2011 à 16:16
Bonjour,

https://www.01net.com/telecharger/windows/Utilitaire/planificateurs_et_lanceurs/fiches/23371.html

Voilà comment je vois la chose,

1- je lance la "super macro" qui:

Ouvre le fichier CSV dans Excel(tjs au même endroite avec le même nom)
Ouvre un fichier Excel de conversion de format
Copie/Colle le contenu du CSV dans le fichier de conversion
Récupére les informations remises en forme =>soit on continue avec super macro copie/colle dans nouveau fichier, soit on lance une macro Excel via un click sur un bouton (copie/colle dans nouveau fichier)
Enregistre le fichier créer dans la bonne mise en forme

2- je prends une pause

Aurevoir
0
pépé35530 Messages postés 2942 Date d'inscription vendredi 1 mai 2009 Statut Membre Dernière intervention 19 mars 2016 1 386
14 oct. 2011 à 22:55
Bonsoir,

Pourquoi ne pas simplement masquer les colonnes qui ne t'intéressent pas

A+

pépé
0
Bonjour,

Merci à tous pour vos réponses.

@Pijaku. Dans mon fichier .csv importé, j'ai 26 colonnes. Or, seulement 15 m'intéressent. En plus, je souhaite les réorganiser. J'illustre :

Import du fichier :
A B C D E F G

Les données qui m'intéressent :
B D E F

Si modifier l'ordre des colonnes est encore d'un autre niveau, ce n'est pas grave, l'essentiel, c'est surtout de n'avoir que celles qui m'intéressent... Il y a t-il une solution?

@Tchernosplif. Supermacro à l'air sympa mais je bosse sur Mac ;) Et suis totalement néophyte en la matière...

@pépé. C'est ce que je fais mais je dois répéter l'opération à chaque mise à jour, soit 2-3 fois par semaine, remettre les colonnes dans l'ordre qui m'intéresse, etc.... Autant dire que je perds un temps fou

Je vous remercie de vos conseils avisés...
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
21 oct. 2011 à 09:45
Bonjour,
C'est ma dernière journée avant les congés, donc on va essayer de s'y atteler vite fait...
Tu dis :
- Dans mon fichier .csv importé, j'ai 26 colonnes.
La première ligne contient des entêtes???
- Or, seulement 15 m'intéressent.
Oui, pas de souci
- En plus, je souhaite les réorganiser
ça ne devrait pas poser de problème.
je dois répéter l'opération à chaque mise à jour Ah! Information importante. A chaque mise à jour, faut il vérifier la présence éventuelle de données dans le fichier que nous créons?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Pikaju,

Oui la première contient les entêtes...
En fait les mises à jour, oui, c'est l'ajout à la suite de nouvelles entrées. Mais à la limite, ce n'est pas trop gênant pour moi de recompiler l'ensemble à chaque fois puisque le fichier sert surtout à la consultation, pas de modifications...
Enfin j'aimerais faire une mise en forme conditionnelle de type si(non vide) = couleur mais ça ce n'est pas vraiment long à faire...

Bonnes vacances alors :) et merci pour ton aide
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
21 oct. 2011 à 10:04
Alors :
1- va voir cette astuce : https://www.commentcamarche.net/faq/16109-excel-convertir-fichier-s-csv-xls pour la conversion de csv en xls. Le fichier exemple est téléchargeable en fin d'astuce. Essaye le avec un de tes fichiers csv et dis moi si cela te convient (la conversion).
2- Je vais tenter une approche de fichier.
0
tchernosplif Messages postés 600 Date d'inscription dimanche 8 novembre 2009 Statut Membre Dernière intervention 21 juin 2015 245
Modifié par tchernosplif le 21/10/2011 à 13:38
autre proposition en vba
une macro:
ouvre le fichier csv (tjs le même nom au même endroit)
copie son contenu
ouvre un fichier notepad et colle le contenu du csv dedans
enregistres le notepad avec le nom du csv.txt
ferme le fichier csv
ouvre le fichier txt dans excel (fichier temporaire)
ferme le fichier txt
copie/colle les colonnes à conserver du fichier temporaire (en plusieurs fois si nécessaire) dans le fichier modèle avec les bonnes mises en forme
ferme le fichier excel temporaire
enregistre le fichier modèle en ajoutant la date du jour dans le nom
0
Je t'ai transmis un email avec mon fichier... Un petit dessin vaut mieux que de longues explications :)
0