Bonjour,
Je dois compléter tous les jours une base de données excel (tableau excel) en important un fichier CSV.
J'ai trouvé ce code en faisant des recherches mais l'import du CSV écrase les précédentes données importées.
Comment faire pour que chaque jour, le csv que j'importe se positionne sur la première ligne vide de mon tableau Excel et comment ne pas importer la première ligne du fichier csv?
BASE1 correspond au nom de mon tableau
Merci par avance, car je ne connais vraiment pas VBA et mes heures de recherche ne m'aident pas
Sub importCSV()
Dim dialogBox As FileDialog
Set dialogBox = Application.FileDialog(msoFileDialogFilePicker)
Dim selectedFile As String
With dialogBox
.Filters.Add "txt", "*.txt", 1
.AllowMultiSelect = False
If .Show = True Then
selectedFile = .SelectedItems(1)
End If
End With
If selectedFile <> "" Then
Open selectedFile For Input As #1
Dim rowNumber As Long
Dim lineFromFile As String
Dim lineItems As Variant 'array of string
Dim itteration As Integer
rowNumber = 1
lineFromFile = 2
Do Until EOF(1) 'false till end of file is reache then it will turn true
Line Input #1, lineFromFile
lineItems = Split(lineFromFile, ";")
For itteration = 0 To 7
Range("BASE1").Cells(rowNumber, itteration + 1) = lineItems(itteration)
Next
rowNumber = rowNumber + 1
Loop
Close #1
End If
End Sub
Partager