VBA Macro ouverture d'un fichier txt
Bonjour,
J'ai tester ces qques lignes ci-dessous et cela a créé ce dont j'avais besoin, c'est à dire que lorsque je clique sur cette marco :
- je peux choisir le fichier txt à ouvrir
- de plus le nom du fichier s'inscrit en H3
Le seul problème est que je dois cliquer 2 fois (donc une fois de trop) sur le fichier txt à ouvrir et je n'arrive pas à corriger cette petite macro.
Sub Macro1()
Dim Fichier
ChDrive "G:\"
ChDir "G:\"
ThisWorkbook.Worksheets("cliquer sur flèche").Range("H3") = Application.GetOpenFilename
Fichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If Fichier <> False Then Workbooks.OpenText Filename:=Fichier, Origin:=xlMSDOS, _
StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False, _
Space:=False, Other:=True, OtherChar:=",", 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)), _
TrailingMinusNumbers:=True
End Sub
Mille merci
Salut et bienvenue sur le Forum,
En modifiant ton code de cette manière, tu ouvres le fichier désiré et tu en inscris le nom sur ton fichier de base.
Le fichier nouvellement ouvert est alors visible à l’écran (donc c'est le 'ActiveWorkbook') ; si ce n’est pas ce que tu désires, tu peux le refermer par l’intermédiaire de ta macro ou faire apparaître ton fichier de base à l’écran avec le fichier nouvellement ouvert en arrière-plan.
Sub Macro1()
Dim Fichier
ChDrive "G:\"
ChDir "G:\"
Fichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
Workbooks.Open Filename:=Fichier
ThisWorkbook.Worksheets("cliquer sur flèche").Range("H3") = ActiveWorkbook.Name
If Fichier <> False Then .............
End Sub
Je n'ai bien entendu - en l'absence de fichier - pas testé la deuxième partie de ton code.
Cordialement.