Bonjour les VBeurs,
J'essaye depuis quelques jours d'extraire moulte fichiers CSV dans une feuille excel.
Quand j'enregistre l'import de données j'ai ce coeur de fonction :
Et j'aimerai bien pouvoir faire ceci sur environ, euh, 200 fichiers ?
Vous remarquez que je commence à la ligne 7 de mon fichier, là où sont les données qui m'intéressent.
J'ai trouvé d'autres méthodes pour ouvrir des fichiers csv mais je ne vois pas comment commencé à une ligne X avec... Si vous en connaissez, je suis ouvert !
J'aimerai en fait faire une boucle de ce type :
Où je remplacerai ActiveCell.Formula = Fichier par mon import.
Mon souci est que je n'arrive pas à paramétrer
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;c:\Tests\fichier.csv" _
, Destination:=Range("A1"))
Pour remplacer le lien vers le fichier et la destination...
Quelqu'un aurait une idée ?
Merci d'avance.
J'essaye depuis quelques jours d'extraire moulte fichiers CSV dans une feuille excel.
Quand j'enregistre l'import de données j'ai ce coeur de fonction :
Code:
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;c:\Tests\fichier.csv" _
, Destination:=Range("A1"))
.Name = "fichier.csv"
.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 = 7
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
Et j'aimerai bien pouvoir faire ceci sur environ, euh, 200 fichiers ?
Vous remarquez que je commence à la ligne 7 de mon fichier, là où sont les données qui m'intéressent.
J'ai trouvé d'autres méthodes pour ouvrir des fichiers csv mais je ne vois pas comment commencé à une ligne X avec... Si vous en connaissez, je suis ouvert !
J'aimerai en fait faire une boucle de ce type :
Code:
Sub importCSV()
Dim i As Integer
Dim Fichier As String
Dim CHEMIN As String
CHEMIN = "C:\Test"
Fichier = Dir(CHEMIN & "*.csv")
Do While Fichier <> ""
ActiveCell.Formula = Fichier
Fichier = Dir
i = i + 1
Rows(i).Select
Loop
End Sub
Où je remplacerai ActiveCell.Formula = Fichier par mon import.
Mon souci est que je n'arrive pas à paramétrer
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;c:\Tests\fichier.csv" _
, Destination:=Range("A1"))
Pour remplacer le lien vers le fichier et la destination...
Quelqu'un aurait une idée ?
Merci d'avance.