Bonjour à tous,
malgré de longues recherches, je n'ai pas trouvé un code correspondant à mon objectif et si j'en ai trouvé un, j'étais incapable de l'adapter à mes besoins.
Le code suivant importe bien les données de mon fichier (variable strFile), mais seulement la première colonne. Le délimiteur est " / ".
J'ai utilisé l'enregistreur de macros pour essayer de trouver une solution à mon problème. Il fait bien ce qu'il faut, mais le nom du fichier à importer est fixe, alors que je le veux variable.
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 '----------------------------------------Méthode Route Riter------------------------------------------------------ ' ' Importer une liste Route Riter ' Private Sub cmdRouteRiter_Click() Application.DisplayAlerts = False 'désactive les alertes Excel Dim ws As Worksheet, strFile As String strFile = Application.GetOpenFilename("Text Files (*.txt),*.txt", , "Veuillez choisir le fichier texte...") If strFile = "Faux" Then Exit Sub Workbooks.OpenText FileName:=strFile, Origin:=xlWindows, _ StartRow:=1, DataType:=xlDelimited, Local:=True, Tab:=False, Semicolon:=False, comma:=False, Space:=False, _ other:=True, otherchar:="\" ' CopierColler Columns("A:A").Select selection.Copy ActiveWorkbook.Close Windows("Annuaire MSTS_V110.xlsm").Activate Sheets("RouteRiter").Select Range("A1").Select ActiveSheet.Paste .................... End Sub
Comment résoudre ce problème, sachant que l'importation doit se faire en A1 du Active.Workbook dans Sheets("RouteRiter") ?
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
30
31
32
33
34
35
36
37 Sub Import_Txt() ' ' Import_Txt Macro ' ' Application.CutCopyMode = False With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;C:\Users\Pascal\Desktop\Liste\lgso.txt", Destination:=Range("$A$1")) .CommandType = 0 .Name = "lgso" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = 1252 .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = False .TextFileTabDelimiter = False .TextFileSemicolonDelimiter = False .TextFileCommaDelimiter = False .TextFileSpaceDelimiter = False .TextFileOtherDelimiter = "\" .TextFileColumnDataTypes = Array(1, 1) .TextFileTrailingMinusNumbers = True .Refresh BackgroundQuery:=False End With End Sub
Merci d'avance de vos conseils.
Cordialement
Pascal







Répondre avec citation
Partager