importer des données txt avec choix de fichier permis à l'utilisateur

mousocgen

XLDnaute Nouveau
salut tout le monde
Alors le défi du jour (de la dernière semaine pour moi):
importer des données txt vers excel en permettant de choisir le fichier.

J'ai le code pour importer des données à partir du même fichier. Facile grâce à l'enregistrement de macros.

par contre comme l'emplacement des fichiers à importer varie, il faut que je le propose dans ma macro.

si quelqu'un a une illumination.

Je joins mon code actuel et l'endroit (en rouge) où à mon avis, il faudrait faire une modif.

THksssssssssssss !


Sub extraction()
'
'
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;V:\OST\REQ02631_20070821_115035.TXT", Destination:=Range("B1"))
.Name = "REQ02364_20070430_115039"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = True
.PreserveFormatting = False
.RefreshOnFileOpen = False
.RefreshStyle = xlOverwriteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(9, 9, 9, 9, 9, 2, 2, 9, 2, 2, 2, 9, 9, 9, 2, 2, 2, 9, 2, 1, 2, _
2, 2, 2, 2, 9, 2, 2, 2, 2, 9, 2, 9, 9, 9, 2, 2, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
 

pierrejean

XLDnaute Barbatruc
Re : importer des données txt avec choix de fichier permis à l'utilisateur

bonjour mousocgen

a tester:

Application.Dialogs(xlDialogOpen).Show
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & ActiveWorkbook.Path & "\" & ActiveWorkbook.Name, Destination:=Range("B1")) .Name = "REQ02364_20070430_115039"
 

mousocgen

XLDnaute Nouveau
Re : importer des données txt avec choix de fichier permis à l'utilisateur

salut pierrejean
merci de ta réponse
J'ai bien la fenêtre qui s'ouvre afin de choisir le fichier à importer.
Mais on sait tous très bien qu'Excel est difficilement domptable du premier coup.
Le truc c'est que les données à importer doivent faire l'objet d'un tri.
Dans ma première macro, lorsque j'enregistrais la procédure d'importation, c'était nickel parceque je faisais le tri sur les colonnes à importer ou non.
Mais avec ce rajout, l'utilisateur peut certes choisir son fichier mais doit mettre en forme l'importation. Ce que bien entendu jé désirerais lui éviter.
encore un 'ti coup de pouce.
J'y arrives pô malgré mes essais.
Thksssssss.

Ci-joint mon dernier code

Sub extraction_vf2()

Application.Dialogs(xlDialogOpen).Show
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & ActiveWorkbook.Path & "\" & ActiveWorkbook.Name, Destination:=Range("B1"))
.Name = "REQ02364_20070430_115039"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = True
.PreserveFormatting = False
.RefreshOnFileOpen = False
.RefreshStyle = xlOverwriteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(9, 9, 9, 9, 9, 2, 2, 9, 2, 2, 2, 9, 9, 9, 2, 2, 2, 9, 2, 1, 2, _
2, 2, 2, 2, 9, 2, 2, 2, 2, 9, 2, 9, 9, 9, 2, 2, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With



End Sub
 

pierrejean

XLDnaute Barbatruc
Re : importer des données txt avec choix de fichier permis à l'utilisateur

re

A tester:

Code:
....
 FichierChoisi = Application.GetOpenFilename
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & FichierChoisi, Destination:=Range("B1"))
.....
 

Discussions similaires

Statistiques des forums

Discussions
312 837
Messages
2 092 658
Membres
105 482
dernier inscrit
Eric.FKF