Macro importer fichiers txt dans excel

Fermé
TOT127 Messages postés 898 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 7 août 2018 - 8 juin 2016 à 22:50
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 - 9 juin 2016 à 22:48
Bonjour,
je suis embarassé car j'ai 500 fichiers de données .txt avec séparateur virgule et je dois les mettre dans excel...
J'aimerais ne pas avoir à le faire à la main. Je sais que des macro existent, j'en ai essayé plusieurs mais je n'ai pas réussi. Pouvez vous m'aider à faire la macro me permettant d'automatiser le travail ?
merci beaucoup,
A voir également:

2 réponses

cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
9 juin 2016 à 10:48
Bonjour,

Voici un exemple, il suffit de mettre le classeur dans le répertoire où ce trouve les fichiers texte.
J'ai mis 3 fichiers texte pour faire les essai.
Les fichiers texte sont copiés sur chaque onglet qui prend le nom du fichier:

http://www.cjoint.com/c/FFjiS4UeCsQ
1
TOT127 Messages postés 898 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 7 août 2018 96
9 juin 2016 à 11:07
woo merci ! je vais étudier ça et je reviens vers toi te dire comment j'ai réussi! :)
0
TOT127 Messages postés 898 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 7 août 2018 96
9 juin 2016 à 20:51
je suis entrain de regarder votre fichier. Je pense le garder pour importer des fichiers txt à l'avenir, car il y a la macro dedans. néanmoins, quand je tente de lancer la macro pour qu'elle avale 3 de mes fichiers txt, mis dans le dossier du fichier excel, j'obtiens ça: erreur 1004 et débogage > l'erreurétant: "Fichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")" (ce qui est surligné dans ta macro).
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
9 juin 2016 à 22:48
Verifier que les fichiers ont bien l'extension txt!

Si c'est une autre extension corriger la macro en remplaçant txt par l'autre extension.
0
3IR3 Messages postés 875 Date d'inscription mercredi 27 octobre 2010 Statut Membre Dernière intervention 25 avril 2022 226
9 juin 2016 à 00:43
Bonjour,

Vous devriez faire une sauvegarde de vos fichiers texte, en prendre 1 au hazard et changer son extension (.txt) en (.csv)
Essayez ensuite de l'ouvrir avec Excel/LibreOffice Calc et il vous demandera de définir l'option de séparateur. Cochez uniquement le point virgule et voilà normalement c'est bon.
0
TOT127 Messages postés 898 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 7 août 2018 96
9 juin 2016 à 10:10
Oui mais alors qu'advient il de tous les autres fichiers ?
0
3IR3 Messages postés 875 Date d'inscription mercredi 27 octobre 2010 Statut Membre Dernière intervention 25 avril 2022 226
9 juin 2016 à 20:58
Si ça marche correctement pour un, vous n'avez plus qu'à renommer les 500 fichiers .txt (en gardant toujours une sauvegarde des originaux) en .csv

Pour cela vous les placer dans un dossier de votre choix, vous naviguez jusqu'à ce dossier dans la console en ligne de commande (cd pour ouvrir et dir pour afficher le contenu du répertoire) et une fois que vous êtes positionné sur le dossier qui contient tous les .txt vous faîtes:

ren *txt *csv
0
TOT127 Messages postés 898 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 7 août 2018 96
9 juin 2016 à 21:06
je vais essayer, merci! Puis je vous demander comment ouvrir la console en ligne de commande sur excel ?...
0
TOT127 Messages postés 898 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 7 août 2018 96
9 juin 2016 à 21:07
(je suis sur mac)
0
3IR3 Messages postés 875 Date d'inscription mercredi 27 octobre 2010 Statut Membre Dernière intervention 25 avril 2022 226
9 juin 2016 à 21:12
Ahh je ne connais pas du tout mac désolé, la commande ci dessus est pour la console Windows
0