bonjour à tous,

je viens de réaliser un macro sous excel pour importer les données dans excel avec une adresse fixe par ex: c:\fei01.txt

le code généré par le macro est suivant:

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 ren()
'
' ren Macro
' Macro enregistrée le 02/07/2010 par fren
'
Range("A1").Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;E:\fei01.txt", Destination _
:=Range("A1"))
.Name = "fei"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
Range("J9").Select
Columns("A:A").ColumnWidth = 16.86
Range("G14").Select
End Sub
puis que j'ai plusieur fichier à importer dans excel, donc l'adresse est une variable, par ex: fei01, fei02, fei03....

j'ai crée un variable x$="c:\fei01.txt", et je change With ActiveSheet.QueryTables.Add(Connection:="TEXT;x$", Destination _

et dans ce cas là, le problème de .Refresh BackgroundQuery:=False qui apparaïtre et j'arrive pas résoudre ce pb.
quelqu'un a eu ce genre de pb avant? ou bien comment est ce que je peux faire un prog pour importer les données avec une adresse variable.

merci par avance

cordialement