Importer une plage de lignes définies depuis fichier CSV en VBA
Bonjour, je souhaiterais savoir si à partir de cette macro bien connue d'import d'un fichier texte/CSV, elle peut être améliorée pour importer une plage de lignes.
Par exemple, pour un fichier de 45000 lignes, importer les lignes allant de 10 000 à 30 000.
Je suis parvenu à améliorer une macro pour importer de 1 à 15000 ou de 30 000 à 45 000 mais impossible de trouver la solution pour borner l'import avec des numéros de lignes choisis.
En vous remerciant pour votre aide :D
Code:
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
| Option Explicit
Public Sub importFichT2()
Const FichT = "Tagada.txt"
Const Separateurs As String = ";"
Const Feuil_name = "Feuil5"
Dim sh As Worksheet
Dim hnd As String
Dim varStrg As Variant
Dim NomFichT As String
Dim inumlignes As Integer
Dim i As Integer
NomFichT = ThisWorkbook.Path & "\" & FichT
Set sh = Worksheets(Feuil_name)
hnd = FreeFile
inumlignes = 1
Open NomFichT For Input As #hnd
Do While Not EOF(hnd)
Line Input #hnd, varStrg
Debug.Print varStrg
varStrg = Split(varStrg, Separateurs)
For i = 0 To UBound(varStrg)
sh.Cells(inumlignes, i + 1) = varStrg(i)
Next i
inumlignes = inumlignes + 1
Loop
Close #hnd
End Sub |