Ouvrir un fichier à mettre en forme au nom variable

Résolu
painghou Messages postés 8 Statut Membre -  
painghou Messages postés 8 Statut Membre -
Bonjour,
Je dois ouvrir un fichier *.ascii avec un nom différent suivent l'utilisateur.
Voici le code que j'ai écrit :

'Parcourir pour sélectionner le fichier défaut
Application.GetOpenFilename
'Ouvrir et convertir le fichier ascii
Workbooks.OpenText Filename:= _
"????????????????????????????_DEF.ascii", Origin:= _
xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True, _
Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _
Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), Array(15 _
, 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array(20, 1), Array(21, 1), _
Array(22, 1), Array(23, 1), Array(24, 1), Array(25, 1), Array(26, 1), Array(27, 1), Array( _
28, 1), Array(29, 1), Array(30, 1), Array(31, 1), Array(32, 1), Array(33, 1), Array(34, 1), _
Array(35, 1), Array(36, 1), Array(37, 1), Array(38, 1), Array(39, 1), Array(40, 1), Array( _
41, 1), Array(42, 1), Array(43, 1), Array(44, 1), Array(45, 1)), TrailingMinusNumbers _
:=True

"????????????????????????????_DEF" étant le nom du fichier, mais je n'arrive pas à imposer le nom du fichier à Excel.
Je souhaite imposer aux utilisateurs de mettre "_DEF" à la fin du fichier. Mais le début, le nombre de caractères, et le libellé, et libre de choix.
Lorsque la fenêtre "Parcourir" s'ouvre j'ai bout sélectionner un autre fichier, le seul qu'Excel accepte d'ouvrir c'est le premier.

Merci d'avance.

2 réponses

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

        Dim wbName As String

    wbName = Application.GetOpenFilename(FileFilter:="Fichier *.ASCII (*.ASCII),*.ASCII", Title:=" Selectionnez le fichier ")
    If wbName = "Faux" Then
    Exit Sub
    End If

    Workbooks.OpenText Filename:=IFwbName, Origin:= _
    xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
    xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True, _
    Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
    Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _
    Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), Array(15 _
    , 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array(20, 1), Array(21, 1), _
    Array(22, 1), Array(23, 1), Array(24, 1), Array(25, 1), Array(26, 1), Array(27, 1), Array( _
    28, 1), Array(29, 1), Array(30, 1), Array(31, 1), Array(32, 1), Array(33, 1), Array(34, 1), _
    Array(35, 1), Array(36, 1), Array(37, 1), Array(38, 1), Array(39, 1), Array(40, 1), Array( _
    41, 1), Array(42, 1), Array(43, 1), Array(44, 1), Array(45, 1)), TrailingMinusNumbers _
    :=True
    0
  2. painghou Messages postés 8 Statut Membre
     
    Merci c'est exactement cela.
    Merci beaucoup
    0