Changer extension .txt en xls
Résolu
Aussie44
Messages postés
3
Statut
Membre
-
isrforlife Messages postés 144 Statut Membre -
isrforlife Messages postés 144 Statut Membre -
Bonjour,
J'aurais besoin de changer l'extension de 3000 fichiers en .txt en .xls...vu la tâche j'aimerais utiliser une macro ;o))
J'en ai trouvé une sur le forum qui fonctionne bien mais qui ne boucle pas. Il est donc nécessaire à chaque fois d'aller ouvrir le fichier à convertir. Est-il possible de mettre en place une boucle sachant que tous mes fichiers d'entrée et de sortie se trouveront dans le même répertoire.
Voici la macro que j'ai trouvé (merci Bidouilleu_R) :
Sub Convertit_en_xls()
Dim Chemin As String
Dim Fichier As String
Dim LeNom As String
Fichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
Workbooks.OpenText (Fichier)
While Right(Fichier, 1) <> "\"
LeNom = Right(Fichier, 1) & LeNom
Fichier = Left(Fichier, Len(Fichier) - 1)
Wend
CheminSource = Left(Fichier, Len(Fichier) - 1)
While Right(CheminSource, 1) <> "\"
CheminSource = Left(CheminSource, Len(CheminSource) - 1)
Wend
Chemin = CheminSource & "Données Excel\"
LeNom = Left(LeNom, Len(LeNom) - 3) & "xls" ' le nom avec xls
ActiveWorkbook.SaveAs Chemin & LeNom
ActiveWorkbook.Close
End Sub
Un grand grand merci par avance pour votre aide.
J'aurais besoin de changer l'extension de 3000 fichiers en .txt en .xls...vu la tâche j'aimerais utiliser une macro ;o))
J'en ai trouvé une sur le forum qui fonctionne bien mais qui ne boucle pas. Il est donc nécessaire à chaque fois d'aller ouvrir le fichier à convertir. Est-il possible de mettre en place une boucle sachant que tous mes fichiers d'entrée et de sortie se trouveront dans le même répertoire.
Voici la macro que j'ai trouvé (merci Bidouilleu_R) :
Sub Convertit_en_xls()
Dim Chemin As String
Dim Fichier As String
Dim LeNom As String
Fichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
Workbooks.OpenText (Fichier)
While Right(Fichier, 1) <> "\"
LeNom = Right(Fichier, 1) & LeNom
Fichier = Left(Fichier, Len(Fichier) - 1)
Wend
CheminSource = Left(Fichier, Len(Fichier) - 1)
While Right(CheminSource, 1) <> "\"
CheminSource = Left(CheminSource, Len(CheminSource) - 1)
Wend
Chemin = CheminSource & "Données Excel\"
LeNom = Left(LeNom, Len(LeNom) - 3) & "xls" ' le nom avec xls
ActiveWorkbook.SaveAs Chemin & LeNom
ActiveWorkbook.Close
End Sub
Un grand grand merci par avance pour votre aide.
A voir également:
- Changer extension .txt en xls
- Changer dns - Guide
- Changer extension fichier - Guide
- Changer clavier qwerty en azerty - Guide
- Changer carte graphique - Guide
- Changer wifi chromecast - Guide
4 réponses
Veux tu vraiment le faire via VB? Car si c'est juste pour changer l'extension de tes 3000 fichiers texte j'ai un logiciel gratuit qui te fait ça
Sub Bouclemoiça()
dim i = 0
While (i != 3000)
Convertit_en_xls()
Wend
En adaptant un truc comme ça, cela ne pas fonctionner ?
dim i = 0
While (i != 3000)
Convertit_en_xls()
Wend
En adaptant un truc comme ça, cela ne pas fonctionner ?
Merci isrforlife de ta réponse.
Etant complètement novice en vba, j'aurais 2 petites questions :
1) l'incrementation, c'est i+1 non ? Je place l'incrementation avant "Wend" ?
2) la boucle je la place où par rapport au programme que j'ai ? A l'intérieur -si oui où exactement-, avant le programme ou après le programme.
Bon après-midi
Etant complètement novice en vba, j'aurais 2 petites questions :
1) l'incrementation, c'est i+1 non ? Je place l'incrementation avant "Wend" ?
2) la boucle je la place où par rapport au programme que j'ai ? A l'intérieur -si oui où exactement-, avant le programme ou après le programme.
Bon après-midi
Dans l'absolu je préférerais en vba mais sait-on jamais...Ton logiciel est entièrement gratuit ? Il pourrait me modifier l'extension pour l'intégralité des fichiers sans avoir à aller les chercher 1 par 1.
bon après-midi.