Changer extension .txt en xls

Résolu
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.

4 réponses

  1. 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
    0
    1. j'ai oublier l'incrémentation de i ! sinon ça boucle infinie :)
      "i += 1"
      0
      1. Sub Bouclemoiça()
        dim i = 0
        While (i != 3000)
        Convertit_en_xls()
        Wend

        En adaptant un truc comme ça, cela ne pas fonctionner ?
        0
        1. 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
          1
          1. Merci sk8dada de ta réponse.
            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.
            0
          2. Le problème résolu. Merci !
            0
          3. Salut et bien joué pour avoir résolu ton problème ! Peux-tu nous faire partager ta solution ? Cela pourra aider qqu un jours si il a le même problème que toi !
            0