Bonjour, je cherche à importer un fichier texte dont je donne la description (longeur des champs et types) dans un onglet.

Or
Code : Sélectionner tout - Visualiser dans une fenêtre à part
ActiveSheet.QueryTables.Add
n'aime pas du tout quand je passe de la description en dur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
.TextFileFixedColumnWidths = Array(3, 8, 4, 16, 8, 7, 6, 1, 28, 3, 1, 10, 8)
à une description "variabilisée", j'ai alimenté l'Array Integer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
ColumnWidths()
.TextFileFixedColumnWidths = ColumnWidths()
Je n'ai aucun message d'erreur mais il ne se passe rien. Une idée ?

Contexte :

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
 With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\$User\0_Enco\Bricolage Excel\Data.txt", Destination:=Range("A2"))
        .Name = "Data"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = False
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 850
        .TextFileStartRow = 1
        .TextFileParseType = xlFixedWidth
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = True
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
'        .TextFileFixedColumnWidths = Array(3, 8, 4, 16, 8, 7, 6, 1, 28, 3, 1, 10, 8)
'        .TextFileColumnDataTypes = Array(2, 2, 2, 1, 5, 1, 1, 1, 1, 2, 1, 1, 4, 1)
        .TextFileFixedColumnWidths = ColumnWidths()
        .TextFileColumnDataTypes = ColumnDataTypes()
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=True
    End With