Bonjour

Je viens de nouveau faire appel à vous : mes connaissances en VBA étant toujours trop justes ...
Je dois chaque jour , dans le cadre de mon travail , importer dans excel des fichiers textes ( au moins 4 ) que je convertis
Le dessin d'enregistrement de ces fichiers est toujours le même cependant le nom des fichiers est différent .
j'ai créé une macro qui me permet :
d'accéder au répertoire ou sont stockés les fichiers
de choisir le fichier texte
de découper ce fichier

le problème est l'enregistrement du fichier xlsx dans ce répertoire .
Si le code GetSaveAsFilename m'ouvre bien le répertoire en me proposant l’enregistrement en xlsx , le nom du fichier n'est pas proposé et je dois le compléter manuellement .

Si vous pouvez m'aider ;
Voici le code


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Sub test()
 
 
 
   Dim Fichier As Variant
   Dim nomfeuille As String
 
   Const Dossier As String = "C/test/"
 
 
   ChDrive Dossier
   ChDir Dossier
 
    Fichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
 
    Workbooks.Open Filename:=Fichier
 
    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
        :="$", FieldInfo:=Array(Array(1, 2), Array(2, 2), Array(3, 2), Array(4, 2), Array(5, _
        2), Array(6, 2), Array(7, 2), Array(8, 2), Array(9, 1)), TrailingMinusNumbers:=True
 
 
 Fichier = Application.GetSaveAsFilename(nomfeuille, fileFilter:="Classeur Excel (*.xlsx), *.xlsx")
 ActiveWorkbook.SaveAs Fichier
 
 End Sub
L'idéal serait pour m'éviter de faire cette macro sur chaque fichier txt et de gagner ainsi du temps que le code me convertisse en une seule fois les fichiers que j'aurais au préalable choisi.

Toute aide serait la bienvenue

Merci